2003-06-22 18:40:56

by Linus Torvalds

[permalink] [raw]
Subject: Linux 2.5.73


Various updates all over the map here. Lots of ia64 updates, and Andrew
merged the ext3 locking cleanups/fixes that have been in the -mm tree for
a while.

Linus

---

Summary of changes from v2.5.72 to v2.5.73
============================================

<a.wegele:tu-bs.de>:
o input: logical maximum and minimum can have the same value in HID

Adam Belay:
o [PNP] Resource Management Cleanups and Updates
o [PNP] /drivers/pnp/resource.c check_region warning fix
o [PNP] Module Compilation Fix
o [PNP] PnPBIOS resource setting fix
o [PNP] re-add the previously removed "get" command in interface.c
o [PNP] Trivial Typo fix regarding DMAs
o [PNP] Remove some leftover resource config options in isapnp
o [PNP] Important Resource Parsing Fixes

Adrian Bunk:
o aha1740.c doesn't compile
o [NET]: Fix namespace pollution in two wireless drivers
o [netdrvr ixgb] fix clash with newly-updated ethtool.h

Alan Stern:
o USB: Keep root hub status timer running during suspend
o USB: Use separate transport_flags bits for transfer_dma

Alex Tsariounov:
o ia64: small patch for arch/ia64/lib/Makefile for xor.o

Andi Kleen:
o Remove copied inet_aton code in bond_main.c
o Remove spinlock workaround for pre 2.95 gccs

Andreas Schwab:
o ia64: fix ia32 sched_{s,g}etaffinity()

Andrew Morton:
o ext3: move lock_kernel() down into the JBD layer
o JBD: journal_get_write_access() speedup
o ext3: concurrent block/inode allocation
o ext3: scalable counters and locks
o JBD: fix race over access to b_committed_data
o JBD: plan JBD locking schema
o JBD: remove jh_splice_lock
o JBD: fine-grain journal_add_journal_head locking
o JBD: rename journal_unlock_journal_head to
o JBD: Finish protection of journal_head.b_frozen_data
o JBD: implement b_committed_data locking
o JBD: implement b_transaction locking rules
o JBD: Implement b_next_transaction locking rules
o JBD: b_tnext locking
o JBD: remove journal_datalist_lock
o JBD: t_nr_buffers locking
o JBD: t_updates locking
o JBD: implement t_outstanding_credits locking
o JBD: implement t_jcb locking
o JBD: implement j_barrier_count locking
o JBD: implement j_running_transaction locking
o JBD: implement j_committing_transaction locking
o JBD: implement j_checkpoint_transactions locking
o JBD: implement journal->j_head locking
o JBD: implement journal->j_tail locking
o JBD: implement journal->j_free locking
o JBD: implement journal->j_commit_sequence locking
o JBD: implement j_commit_request locking
o JBD: implement dual revoke tables
o JBD: remove remaining sleep_on()s
o JBD: remove lock_kernel()
o JBD: remove lock_journal()
o JBD: journal_release_buffer: handle credits fix
o JBD: journal_unmap_buffer race fix
o ext3: ext3_writepage race fix
o JBD: buffer freeing non-race comment
o JBD: add some locking assertions
o JBD: additional transaction shutdown locking
o JBD: fix log_start_commit race
o JBD: do_get_write_access() speedup
o ext3: fix data=journal mode
o JBD: journal_try_to_free_buffers race fix
o ext3: add a dump_stack()
o ext3: fix error-path handle leak
o ext3: Fix leak in ext3_acl_chmod()
o ext3: remove mount-time diagnostic messages
o JBD: journal_dirty_metadata() speedup
o JBD: journal_dirty_metadata diagnostics
o JBD: fix race between journal_commit_transaction and
o ext3: fix data=journal for small blocksize
o JBD: remove j_commit_timer_active
o ext3: explicitly free truncated pages
o JBD: log_do_checkpoint() locking fixes
o JBD: fix locking around log_start_commit()
o JBD: hold onto j_state_lock after
o ext3: disable O_DIRECT in journalled-data mode
o ia32 copy_from_user() fix
o kjournald shutdown fix
o range checking in rd_open()
o Fix /proc/kcore for i386
o /proc/kcore: handle unmapped areas
o Add system calls statfs64 and fstatfs64
o kmem_cache_destroy(): use slab_error()
o slab poisoning fix
o Fix potential set_child_tid/clear_child_tid bug
o revert adjtimex changes
o show_stack() portability and cleanup patch
o sysv semundo fixes
o raw.c devfs support
o hugetlbfs: specify size & inodes at mount
o hugetlbfs:update statfs
o misc fixes
o Permit big console scrolls
o remove swapper_inode
o dirty inode writeback fix
o workqueue.c subtle fix and core extraction
o proc_pid_lookup use-after-free fix
o Fix kmod return value
o mach-generic build fix
o Fix suspend with NFS mounts active
o Fix binfmt_elf.c bug on ppc64
o node-local allocation for hugetlbpages
o highmem.h needs mm.h
o Restore Daniel Phillips' copyright
o JBD: honour read-only mounts more carefully
o ext3/JBD: remove trailing whitespace
o psmouse compile fix
o Fix CIFS breakage from the statfs64 patch

Andy Grover:
o ACPI: Add ASUS Value-add driver (Karol Kozimor and Julien Lerouge)
o ACPI: Re-add acpitable.c and acpismp=force. This improves backwards
compatibility and also cleans up the code to a significant degree.
o ACPI: Mention acpismp=force in config help
o ACPI: Export acpi_disabled for sonypi (Stelian Pop)
o ACPI: acpiphp update (Takayoshi Kochi)
o ACPI: Interpreter update to 20030619

Anton Blanchard:
o Fix compat_sys_getrusage. Again

Arnaldo Carvalho de Melo:
o o sock: remove sk_prev
o o ipx: fix var shadowing paramente with CONFIG_IPX_INTERN is
enabled
o o net: make sk_{add,del}_node functions take care of sock
refcounting
o o llc: don't use inverted logic
o input: fix double kfree of device->rdesc on hid_parse_parse error
path in hid-core.c
o fix sysfs bogosity in i82365.c

Art Haas:
o [SPARC]: C99 initializers for xor.h
o C99 initializers for asm-alpha/include/xor.h

Arun Sharma:
o ia64: make ia32 ioctl()s work again
o ia64: fix IA-32 emulation of msgctl()
o ia64: fix IA-32 version of shmctl()
o ia64: work around race conditions in ia32 support code

Asit K. Mallick:
o ia64: replace RAID xor routine into an assembly file
o ia64: three more fph fixes (all UP-related)

Bart De Schuymer:
o [NET]: Let arptables see bridged arp traffic

Chas Williams:
o [ATM]: Split atm_ioctl into vcc_ioctl and atm_dev_ioctl
o [ATM]: Remove recvmsg and rename atm_async_release_vcc
o [ATM]: Keep vcc's on global list instead of per device
o [ATM]: Fix possible unlock of a non-locked lock in HE driver

Christoph Hellwig:
o ISDN: [PATCH] switch pcmcia isdn drivers to pcmcia_register_driver
o give all LLDD driver a ->release method
o don't create /proc/scsi/ entries for drivers without
o kill reamining scsi_scan.c typedef abuse
o fix sd medium removal handling
o constants.c codingstyle fixes
o scsi_ioctl.c codingstyle fixes
o fix parameter naming
o kill scsihosts= boot parameter
o introduce scsi_host_alloc
o revamp legacy host registration
o kill blk_nohighio boot parameter
o kill unused scsi_device fields
o kill some sysfs left-overs in st
o cleanup device_busy/host_busy handling
o rename struct SHT to something sensible
o consolidate legacy typedefs in one place
o missing scsi_host_alloc bits
o update lasi700 to new style template
o don't dereference sdev->access_count in dpt_i2o
o some sd.c code consolidation
o kill 53c700 ->proc_info
o remove an unused variable from scsi.c
o remove superflous ->command instances
o start moving and splitting the scsi headers
o more header reshuffling
o kill of ->command

Daniel Ritz:
o xirc2ps_cs update
o xirc2ps_cs update

Dario Ballabio:
o eata and u14-34f update

Dave Jones:
o input: remove unused var from serio struct

David Brownell:
o USB: ehci-hcd: short reads, chip workaround, cleanup
o USB: ehci, fix qh re-activation problem
o USB: ehci-hcd micro-patch
o USB: net2280, halt ep != 0
o USB: usbnet talks to boot loader (blob)

David Mosberger:
o ia64: Clean up purge-page-size-from-PAL patch a bit
o ia64: Allow 4GB TLB purges by default. Reported by Rohit Seth
o ia64: Fix ptrace() RNaT accessors
o ia64: Couple of minor NEW_LOCK spinlock fixes. Put RAID5 xor
routines only into kernel if CONFIG_MD_RAID5 is declared.
o ia64: Move ia64 ELF relocations to ia64-specific elf.h
o ia64: Patch by Arun Sharma: Undo bad sys32_select() fix: The
biggest value of n below is INT_MAX and the value of size for n =
INT_MAX is 268435456. So I don't think there'll be an overflow.
o ia64: Fix SMP fph-handling. Patch by Asit Mallick with some
additional changes by yours truly.
o ia64: Fix various minor merge errors and build errors. Fix
page-fault handler so it handles not-present translations for
region 5 (patch by John Marvin).
o Check in new SN2 file from Jes' gettimeoffset() patch
o ia64: Fix typo in do_settimeofday()
o ia64: Desupport GCC 2.96 and everything older
o ia64: Fix Makefile typo and retain -frename-registers for Itanium
o ia64: Fix more merge errors. Correct SN2 callbacks to also invoke
the generic ia64 callbacks so last_nsec_offset gets updated, too.
o ia64: Fix obsolete call to ia64_set_fpu_owner() (affected UP only)
o ia64: Re-enable -frename-registers for McKinley
o ia64: Make Ski bootloader work with virtually-mapped kernel
o ia64: Fix UP build: ia64_spinlock_contention() is for SMP only
o ia64: Update for new time_interpolator infrastructure
o ia64: More time-interpolation cleanups; correct SN2 interpolator
o ia64: Remove unnecesary include of <asm/offsets.h>
o ia64: Make hugetlb support compile again
o ia64: Fix unwinder so core-dumps work again. Without this patch,
most scratch-regs came out wrong.
o ia64: Restructure pt_regs and optimize syscall path
o ia64: Patch by Arun Sharma: In the absence of the patch, this
system call fails:
o ia64: Lots of formatting fixes for the optimized syscall paths
o ia64: Reformat .mem.offset directives. Affects many lines, but
they're all whitespace changes only.
o ia64: In start_thread(), remove the clearing of the scratch
registers which are now cleared by the syscall exit path.
o ia64: Make fsyscalls work again. They broke because the
streamlined syscall path didn't preserve b6 and r11 anymore.
Unfortunately, preserving them costs a few cycles (~5 cycles in the
cached case). The uncached case is hopefully mostly unaffected
because the number of cache-lines touched is the same (without
preserving b6 and r11, the entry-patch _almost_ got away with
touching a single 128-byte cacheline, but not quite, because r8
also had to be initialized).
o ia64: Implement a first cut of a streamlined fsys_fallback_syscall
o ia64: Minor fixes: remove obsolete ia64_ret_from_execve_syscall()
and fix bit rot in signal debug printk.
o ia64: Fix typo introduced on May 28 which had the effect of
asynchronous signals corrupting r14.
o ia64: Small formatting fixes
o ia64: Finish the fsyscall support (finally!). Now fsyscall stubs
will run faster than break-based syscall stubs, even if there is no
light-weight syscall handler.
o .del-print_offsets.awk~ce325580e04f9929
o ia64: Patch by Tony Luck: The INIT path was broken by the virtually
mapped kernel patch. This patch makes it work again. The MCA path
is similarly broken. Patch will follow later.
o ia64: Based on patch by Rohit Seth: Use "hint @pause" in more
places
o ia64: Fix unwinder bug which caused it to allocate more memory than
strictly necessary.
o ia64: Make task allocation/freeing compatible with the improved
generic kernel infrastructure.
o ia64: Move force_successful_syscall_return() from ptrace.h to
unistd.h
o ia64: Misc small fixe: adjust for 2-argument version of
show_stack(), remove left-over bits from the old
task-creation/destruction hacks. Fix typo in comment for
pgprot_noncached().
o ia64: Remove no longer needed show_trace_task()
o ia64: Move RGN_MAP_LIMIT from pgtableh to page.h and use that in
ustack.h so we can escape include-hell.
o ia64: Make kernel work better on machines with I/O MMU hardware
o mca.h, mca_asm.S, mca.c
o perfmon_generic.h, perfmon.c, Makefile
o handle_fpu_swa() doesn't scale well if multiple CPUs need
concurrent fp assist. The problem lies with concurrent,
potentially frequent updates of fpu_swa_count, which serves as the
throttle for doing the printk(). A frenzy of concurrent updates
will produce a frenzy of cacheline ping-ponging.
o smpboot.c, acpi.c
o ia64: Get rid of pci_dma_bus_is_phys in favor of
ia64_max_iommu_merge_mask
o ia64: Andrew changed his mind about the location of
force_successful_syscall_return(), so move it back to ptrace.h.
o ia64: No early printk for GENERIC
o ia64: Add back lost change for PCI_DMA_BUS_IS_PHYS
o ia64: Split ia32-only definitions into separate ia32int.h header
file
o ia64: Two small fixes: fix Makefiles so "make clean" removes
.offsets.h.stamp. Remove unused variable in acpi-ext code.
o ia64: Build the gate page(s) as an ELF DSO
o patch.c
o ia64: Minor cleanups: export more symbols, remove uncessary stop
bits
o ia64: Fine-tune the gate DSO support a bit
o Export some more symbols to get tg3.c to build as a module
o pgtable.h
o ia64: Still more gate DSO tuning. Turns out a linker bug prevented
us from building the gate DSO in a way that makes it fit in <= 1
page. If a fixed linker is available, we do it in this space-saving
way now. Otherwise, we'll do it the old way (the gate DSO will then
take up about 18KB instead of just ~3KB). Thanks to Roland McGrath
for making this all work.
o ia64: Make brl-branches to ia64_spinlock_contention work from
modules
o PCI: move pci_domain_nr() inside "#ifdef CONFIG_PCI" bracket
o ia64: Sync with 2.5.71
o ia64: Initial sync with 2.5.72
o re-enable the building of 8250_hcdp and 8250_acpi
o Add 2 HP PCI ids
o init_thread_union really needed by modules?

David S. Miller:
o [SPARC64]: Fix wal_to_monotonic initialization
o [SPARC]: Fix wall_to_monotonic initialization
o [ATM]: Revert vcc global list changes, broke the build
o [SPARC]: ESP scsi driver already has a release method, do not add a
second one :-)
o [NET]: Mark skb_linearize() as deprecated
o [NET]: Check for flow cache allocation failure
o [NET]: Size hh_cache->hh_data more appropriately
o [AIC79XX]: Protect ahd_linux_pci_reserve_mem_region with MMAPIO
o [KCONFIG]: Fix pointer cast from int in mconf.c
o [INITRAMFS]: Use correct size_t printf format in gen_init_cpio.c
o [PROC]: Printf field widths must be of type int, fix this in
task_mmu.c
o [SOUND]: Fix 64-bit warnings in korg1212 driver
o [AACRAID]: Fix 64-bit warnings/errors
o [NET]: Don't compare a dma_addr_t with NULL in pcnet32.c
o [NET]: Use proper size_t printf format specifier in sundance.c
o [IRDA]: Fix 64-bit warnings
o [TELEPHONY]: Fix 64-bit warnings in ixj.c 1) Use unsigned long for
types holding jiffies.
o [NCPFS]: Use proper size_t printf format specifier in sock.c
o [SPARC64]: Update defconfig
o [NET]: Fix ppp_async tty discipline module ref counting
o [IPV4]: Do not use skb_linearize() in ARP handling
o [IPV6]: Do not use skb_linearize() in ICMP/NDISC handling

David Stevens:
o [IPV4/IPV6]: Make sure SKB has enough space while building IGMP/MLD
packets
o [IPV4/IPV6]: Fix IGMP device refcount leaks, with help from
[email protected]

David T. Hollis:
o USB: AX8817X Driver for 2.5

Deepak Saxena:
o [ARM PATCH] 1553/1: BE support for __put_user_asm_dword()

Dominik Brodowski:
o pci: add Asus P4G8X Deluxe to asus_hides_smbus quirk

Duncan Sands:
o USB speedtouch: add module parameters

Fenghua Yu:
o ia64: performance-tweak syscall exit path some more

Frank Cusack:
o nfs_unlink() fix and trivial nfs_fhget cleanup

Gabriel Devenyi:
o input: Fix gameport.c - gameport was never closed after calibrating

Greg Kroah-Hartman:
o I2C: add lm78 chip to Makefile
o USB: fixed up some __user warnings reported by sparse in
drivers/usb/net/*
o I2C: fix resource leak in i2c-ali15x3.c
o USB: fix up sparse warnings in ax8817x driver
o PCI: add locking to the pci device lists
o USB: fix up sparse warnings in drivers/usb/class/*
o USB: fix up sparse warnings in drivers/usb/misc/*
o DRIVER: firmware class build cleanups
o DRIVER: make generic driver menu option, and move firmware
selection there
o DRIVER: add drivers/base/Kconfig to all arch main Kconfig files
o PCI: merge bits missed from the pci locking patch
o PCI: well, everyone is treating me like the maintainer
o PCI: rename pci_get_dev() and pci_put_dev() to pci_dev_get() and
pci_dev_put()
o Cset exclude: [email protected]|ChangeSet|20030621161842|52492
o PCI: fix minor problem in previous proc naming patch

Greg Ungerer:
o configuration boot arguments for ColdFire/5249 targets
o conditional ROMfs copy for M5249C3 board
o configuration boot arguments for ColdFire/5272 targets
o conditional ROMfs copy for M5272C3 board

Hanno B?ck:
o USB: Patch for Vivicam 355

Heiko Carstens:
o sd.c: set data direction to SCSI_DATA_NONE for START_STOP

Herbert Xu:
o [NET]: Fix per-cpu flow cache initialization
o [NET]: Remove duplicate linux/interrupt.h include in
net/core/flow.c
o [NET]: More error checking in flow cache init function

Hideaki Yoshifuji:
o [IPV6]: Fix warnings in ip6ip6 tunnel driver
o [IPV6]: Use in6_dev_hold/__in6_dev_put in net/ipv6/mcast.c

Ivan Kokshaysky:
o alpha srmcons fix
o alpha oprofile fix

James Bottomley:
o make the SCSI mid-layer obey the device online flag
o Add XRAYTEX to SCSI whitelist
o sd.c: initialise the gendisk private_data pointer earlier
o Fix warning in scsi_proc.c
o Fix USB storage mismerge
o NCR53c406a print error and abort on non queueing mode
o Fix SCSI ID setting for HP Cirrus-II card
o SCSI: tidy up io vs mem mapping in 53c700 driver

Jamie Lenehan:
o introduce scsi_host_alloc for dc395x

Jay Estabrook:
o any_online_cpu for arch/alpha/kernel/smp.h

Jeff Garzik:
o [netdrvr sis900] add new phy id to phy table

Jeff Smith:
o [NET]: Export netdev_boot_setup_check

Jes Sorensen:
o ia64: gettimeoffset hooks
o cpu_idle() cleanup

Jesse Barnes:
o ia64: SGI SN update
o ia64: SN cleanups
o ia64: more SN2 cleanups

Joe Thornber:
o dm: dm-ioctl.c: Unregister with devfs before renaming the device

John Levon:
o OProfile: small NMI shutdown fix
o OProfile: IO-APIC based NMI delivery
o OProfile: thread switching performance fix

Jon Grimm:
o o hlist change on sctp not quite right

Kai Germaschewski:
o ISDN: cleanup Makefiles
o ISDN: Fix jiffies / flags types
o ISDN: Fix SET_MODULE_OWNER() use
o ISDN: Fix the modemd change notification
o ISDN: Make isdn_tty.c compile again
o ISDN: Make PPP compressors unload-safe
o ISDN: Use standard list for PPP compressors
o ISDN: Protect ipc_head list

Kai Makisara:
o SCSI tape write error fix

Keith Owens:
o ia64: fix unwinder to call get_scratch_regs() only when really
needed

Kochi Takayoshi:
o ia64: Discontigmem bank fix

Linus Torvalds:
o Fix moxa compile (at least for UP) and remove a few warnings
o Fix MELAN config compile by just making the PIC range allocation
have only the two standard ports by default.
o Make sure that unallocated consoles don't cause us to oops in
VT_RESIZEX handling.
o Don't register SCSI devices until they are actually fully set up

Lionel Bouton:
o Enhanced SiS96x support

Manuel Estrada Sainz:
o DRIVER: request_firmware() hotplug interface
o DRIVER: request_firmware() hotplug interface documentation
o DRIVER: request_firmware() vmalloc patch

Margit Schubert-While:
o I2C: lm85 fixups
o I2C: Sensors patch for adm1021

Mark Haverkamp:
o megaraid driver update

Mark M. Hoffman:
o i2c: Add lm78 sensor chip support
o I2C: w83781d bugfix

Martin Devera:
o [NET]: Fix jiffies races in net/sched/sch_htb.c

Martin Hicks:
o ia64: Change mmu_gathers into per-cpu data
o ia64: runtime platform detection for 2.5
o ia64: compile fix for HP Sim serial/console
o ia64: max user stack size of main thread configurable via
RLIMIT_STACK

Martin Schlemmer:
o I2C: ICH5 SMBus and W83627THF additions
o I2C: fix for previous W83627THF sensor chip patch

Matthew Dharm:
o USB storage: cleanups
o USB storage: unusual_devs fixups
o USB storage: more cleanups
o USB storage: avoid NULL-ptr OOPS

Matthew Wilcox:
o Unification of the SCSI Kconfig menus
o PCI: Tidy up sysfs a bit
o Consolidate Kconfigs for binfmts
o PCI: pci_raw_ops patch to fix acpi on ia64
o reimplement pci proc name

Mikael Pettersson:
o [netdrvr tulip] Kconfig help text fix

Mike Christie:
o fixes compile error in inia100.c

Miles Bader:
o v850 whitespace tweaks
o Add .con_initcall.init section on v850
o Add linker script support for v850 "rte_nb85e_cb" platform
o Add __raw_ read/write ops to v850 io.h

Muli Ben-Yehuda:
o ISDN: [PATCH] memory leak in tpam_queues.c

Neil Brown:
o kNFSd: Fix bug in svc_pushback_unused_pages that occurs on zero
byte NFS read
o kNFSd: Assorted fixed for NFS export cache
o kNFSd: Make sure an early close on a nfs/tcp connection is handled
properly
o kNFSd: Allow nfsv4 readdir to return filehandle when a mountpoint
is found is a directory
o kNFSd: Make sure unused bits of NFSv4 xfr buffered are zero
o kNFSd: RENEW and lease management for NFSv4 server
o kNFSd: Do NFSv4 server state initialisation when nfsd starts
instead of when module loaded
o kNFSd: Set nfsd user every time a filehandle is verified
o input: Three fixes for the uinput userspace input device driver
o input: Change order of search for beeper devices in keyboard.c, so
that it is easier to replace a beeper with a different driver

Oliver Neukum:
o USB: convert kaweth to usb_buffer_alloc

Patrick Mansfield:
o convert scsi core to use module_param interfaces

Patrick Mochel:
o [kobject] Add sequence number to kobject hotplug
o [driver model] Remove struct sys_device::entry
o [driver model] Call the i8253 a PIT, not an RTC
o [kobject] Remove Stupid Documentation License
o [driver model] Export sysdev_{create,remove}_file()
o [driver model] Make sure type is set correctly for system devices

Paul Fulghum:
o syncppp fixes

Peter Chubb:
o ia64: use generic build infrastructure for generating offsets.h
o ia64: Include lib/Kconfig for HPSIM
o ia64: Define ia64_max_iommu_merge_mask unconditionally

Randy Dunlap:
o USB: missed one usblp status buffer change
o USB: handle USB printer error bits independently

Reeja John:
o [netdrvr amd8111e] fix spinlock recursion / if close failure

Richard Henderson:
o [ALPHA] Fix memmove/memset GP interaction
o [ALPHA] Implement execve entirely in assembly. Force KSP to the
top of the kernel stack space before entering userland.

Russell King:
o [PCMCIA] Rename yenta to yenta_socket
o [PCMCIA] Remove check_mem_resource()
o [PCMCIA] Move SS_CAP_PAGE_REGS test into find_mem_region()
o [PCMCIA] Prevent duplicate insertion events calling socket_insert()
o [ARM] Separate ICS525 VCO calculation code
o [ARM] Add AMBA bus type for ARM PrimeCells on Integrator
o [ARM] Convert ambakmi.c to AMBA device driver
o [ARM] Tighten virt_addr_valid(), add comments for __pa and friends
o [ARM] Fix sa1100 irq.c build errors
o [ARM] Fix flush_cache_page address parameter
o [ARM] Allow ECC and cache write allocations on ARMv5 and higher
CPUs
o [ARM] Fix SECURITY_INIT in linker script
o [ARM] fix missing includes in pm.c
o [SCSI] Fix powertec.c build errors
o [ARM] Remove unnecessary redefinition of predeclared register
aliases
o [ARM] Add new machine types
o [ARM] Add SA11x0 UDC DMA mask support, and SSP platform device
o Update Acorn partition parsing

Rusty Russell:
o any_online_cpus to return NR_CPUS to mean "none"
o More care in sys_setaffinity

Seth Rohit:
o ia64: small update for hugetlb
o ia64: patch to use >256MB purges
o ia64: fix syscall optimization path so CONFIG_PREEMPT works again

Stefan Becker:
o USB: Patch to cdc-acm.c to detect ACM part of USB WMC devices

Stephen Hemminger:
o [NET]: alloc_netdev for shaper
o [NET]: Fix module owner for bonding driver
o [NET]: Use alloc_netdev in bonding driver
o [NET]: Move Red Creek VPN drier to alloc_etherdev()
o [NET]: Kill unused function in Red Creek VPN driver
o [NET]: Add prefetch to skb_queue_walk
o [NET]: Missing owner field on pppoe /proc
o [NET]: Use unlikely and BUG_ON in SKB assertions

Steve French:
o Cleanup compiler warnings generated by new gcc
o Do not generate warning on ro (read only) cifs mount option
o Fix most cifs vfs sign/unsigned gcc 3.3 compile warnings
o Fix oops on stopping cifs oplock thread when removing cifs module

St?phane Eranian:
o ia64: perfmon fix
o ia64: two small fixes (perfmon & GENERIC build)
o ia64: switch to perfmon2
o ia64: fix NULL pointer dereferences in perfmon
o ia64: minor perfmon fixes

Tom Lendacky:
o [IPV6]: Fix xfrm bundle address setup and comparisons

Tony Luck:
o ia64: put kernel into virtually mapped area
o ia64: provide a more generic vtop patching infrastructure
o ia64: fix SAVE_RESET so OS INIT handler works again

Venkatesh Pallipadi:
o ia64: IA-32 emulation patch: ptrace get_FPREGS bug fix

Vojtech Pavlik:
o input: Fix misdetection of PS2 mice as AT keyboards on non-PC
machines where ATKBD_CMD_RESET_BAT is used.
o input: Add locking to serio.c
o input: Add Logitech MX PS2++ support, move Logitech PS2++ code to a
separate source file, always enable Synaptics support. Some more
fixes in Synaptics code and documentation.
o input: Fixes for sidewinder.c: Workaround for misbehaving 3DPro
joysticks, don't trust FreestylePro 1-bit data packet for data
width recognition, invert FreestylePro buttons.
o input: make GC_PSX_DELAY lower (25 usec instead of 60), to burn
less CPU time while reading PSX pads, and make it a module
parameter also, for devices which would need the huge value of 60.

Walter Harms:
o ia64: improve kernel_thread() cleanliness

Zwane Mwaikambo:
o Remove warning due to comparison in drivers/net/pcnet32.c



2003-06-22 19:48:58

by Alex Goddard

[permalink] [raw]
Subject: Re: Linux 2.5.73

On Sun, 22 Jun 2003, Linus Torvalds wrote:

>
> Various updates all over the map here. Lots of ia64 updates, and Andrew
> merged the ext3 locking cleanups/fixes that have been in the -mm tree for
> a while.

The ehci-hid compile error from .72 is still there. A fix was posted by
akpm in the lkml thread [patch] ehci_hcd.c linkage fix.

Death of compilation output:

CC drivers/usb/host/ehci-hcd.o
drivers/usb/host/ehci-hcd.c:977: error: pci_ids causes a section type
conflict
make[3]: *** [drivers/usb/host/ehci-hcd.o] Error 1
make[2]: *** [drivers/usb/host] Error 2
make[1]: *** [drivers/usb] Error 2
make: *** [drivers] Error 2

--
Alex Goddard
[email protected]

2003-06-22 20:00:55

by Andrew Morton

[permalink] [raw]
Subject: Re: Linux 2.5.73

Alex Goddard <[email protected]> wrote:
>
> drivers/usb/host/ehci-hcd.c:977: error: pci_ids causes a section type
> conflict


Yup.

__devinitdata declarations should not be marked const.


--- 25/drivers/usb/host/ehci-hcd.c~ehci_hcd-linkage-fix 2003-06-18 21:48:15.000000000 -0700
+++ 25-akpm/drivers/usb/host/ehci-hcd.c 2003-06-18 21:50:06.000000000 -0700
@@ -974,7 +974,7 @@ static const struct hc_driver ehci_drive
/* EHCI spec says PCI is required. */

/* PCI driver selection metadata; PCI hotplugging uses this */
-static const struct pci_device_id __devinitdata pci_ids [] = { {
+static struct pci_device_id __devinitdata pci_ids [] = { {

/* handle any USB 2.0 EHCI controller */


_

2003-06-22 20:32:04

by Florin Iucha

[permalink] [raw]
Subject: Re: Linux 2.5.73

drivers/built-in.o(.text+0x3106): In function `pci_remove_bus_device':
: undefined reference to `pci_destroy_dev'

pci_destroy_dev is defined under CONFIG_HOTPLUG and used outside.

florin

PS: I think changeset referenced in [email protected]
causes the problem.

--

"NT is to UNIX what a doughnut is to a particle accelerator."


Attachments:
(No filename) (339.00 B)
(No filename) (189.00 B)
Download all attachments

2003-06-22 21:00:11

by Alex Goddard

[permalink] [raw]
Subject: Re: Linux 2.5.73

On Sun, 22 Jun 2003, Florin Iucha wrote:

> drivers/built-in.o(.text+0x3106): In function `pci_remove_bus_device':
> : undefined reference to `pci_destroy_dev'
>
> pci_destroy_dev is defined under CONFIG_HOTPLUG and used outside.
>
> florin
>
> PS: I think changeset referenced in [email protected]
> causes the problem.

An attempt at a fix. It just moves pci_desroy_dev outside the #ifdef).
I have no idea if this is the correct way to fix this. It compiles okay.

diff -Naurp hotplug.c.orig hotplug.c
--- hotplug.c.orig 2003-06-22 16:00:25.000000000 -0500
+++ hotplug.c 2003-06-22 16:01:20.000000000 -0500
@@ -219,6 +219,24 @@ int pci_hotplug (struct device *dev, cha

#endif /* CONFIG_HOTPLUG */

+static void pci_destroy_dev(struct pci_dev *dev)
+{
+ pci_proc_detach_device(dev);
+ device_unregister(&dev->dev);
+
+ /* Remove the device from the device lists, and prevent any
further
+ * list accesses from this device */
+ spin_lock(&pci_bus_lock);
+ list_del(&dev->bus_list);
+ list_del(&dev->global_list);
+ dev->bus_list.next = dev->bus_list.prev = NULL;
+ dev->global_list.next = dev->global_list.prev = NULL;
+ spin_unlock(&pci_bus_lock);
+
+ pci_free_resources(dev);
+ pci_dev_put(dev);
+}
+
static void
pci_free_resources(struct pci_dev *dev)
{

--
Alex Goddard
[email protected]

2003-06-22 21:28:33

by Alex Goddard

[permalink] [raw]
Subject: Re: Linux 2.5.73

On Sun, 22 Jun 2003, Alex Goddard wrote:

> An attempt at a fix. It just moves pci_desroy_dev outside the #ifdef).
> I have no idea if this is the correct way to fix this. It compiles okay.

It also boots and seems to run okay.

--
Alex Goddard
[email protected]

2003-06-22 21:40:56

by Alex Goddard

[permalink] [raw]
Subject: Re: Linux 2.5.73

On Sun, 22 Jun 2003, Alex Goddard wrote:

> On Sun, 22 Jun 2003, Florin Iucha wrote:
>
> > drivers/built-in.o(.text+0x3106): In function `pci_remove_bus_device':
> > : undefined reference to `pci_destroy_dev'
> >
> > pci_destroy_dev is defined under CONFIG_HOTPLUG and used outside.
> >
> > florin
> >
> > PS: I think changeset referenced in [email protected]
> > causes the problem.
>
> An attempt at a fix. It just moves pci_desroy_dev outside the #ifdef).
> I have no idea if this is the correct way to fix this. It compiles okay.

Ack. Dumb-assed mistake in that one. This one shouldn't die during
compile if CONFIG_HOTPLUG is turned on. The other one defined
pci_destroy_dev() twice because I'm dumb.

It does compile (with and without hotplug) and boot.

--
Alex Goddard
[email protected]


Attachments:
hotplug.c.patch (1.70 kB)

2003-06-22 23:00:53

by Greg KH

[permalink] [raw]
Subject: Re: Linux 2.5.73

On Sun, Jun 22, 2003 at 01:15:26PM -0700, Andrew Morton wrote:
> Alex Goddard <[email protected]> wrote:
> >
> > drivers/usb/host/ehci-hcd.c:977: error: pci_ids causes a section type
> > conflict
>
>
> Yup.
>
> __devinitdata declarations should not be marked const.

Did anyone ever figure out why this is true?

greg k-h

2003-06-22 23:17:00

by Andrew Morton

[permalink] [raw]
Subject: Re: Linux 2.5.73

Greg KH <[email protected]> wrote:
>
> On Sun, Jun 22, 2003 at 01:15:26PM -0700, Andrew Morton wrote:
> > Alex Goddard <[email protected]> wrote:
> > >
> > > drivers/usb/host/ehci-hcd.c:977: error: pci_ids causes a section type
> > > conflict
> >
> >
> > Yup.
> >
> > __devinitdata declarations should not be marked const.
>
> Did anyone ever figure out why this is true?
>

The compiler seems to have decided that we're putting R/O data into an R/W
section.

2003-06-22 23:30:46

by Adrian Bunk

[permalink] [raw]
Subject: 2.5.73: ALSA ISA pnp_init_resource_table compile errors

On Sun, Jun 22, 2003 at 11:53:14AM -0700, Linus Torvalds wrote:
>...
> Summary of changes from v2.5.72 to v2.5.73
> ============================================
>...
> Adam Belay:
> o [PNP] Resource Management Cleanups and Updates
>...

This patch removed pnp_init_resource_table, but several drivers under
sound/isa/ still use it, resulting in compile errors like the following:

<-- snip -->

...
CC sound/isa/ad1816a/ad1816a.o
sound/isa/ad1816a/ad1816a.c: In function `snd_card_ad1816a_pnp':
sound/isa/ad1816a/ad1816a.c:143: warning: implicit declaration of
function `pnp_init_resource_table'
...
LD .tmp_vmlinux1
sound/built-in.o(.text+0x349c7): In function `snd_card_ad1816a_pnp':
: undefined reference to `pnp_init_resource_table'
sound/built-in.o(.text+0x34ad3): In function `snd_card_ad1816a_pnp':
: undefined reference to `pnp_init_resource_table'
make: *** [.tmp_vmlinux1] Error 1

<-- snip -->


cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed

2003-06-23 00:17:57

by Adrian Bunk

[permalink] [raw]
Subject: 2.5.73: acorn.c compile error

On Sun, Jun 22, 2003 at 11:53:14AM -0700, Linus Torvalds wrote:
>...
> Summary of changes from v2.5.72 to v2.5.73
> ============================================
>...
> Russell King:
>...
> o Update Acorn partition parsing
>...

There's the following compile error #ifdef CONFIG_ACORN_PARTITION_EESOX:

<-- snip -->

...
CC fs/partitions/acorn.o
fs/partitions/acorn.c: In function `adfspart_check_EESOX':
fs/partitions/acorn.c:541: error: `first_sector' undeclared (first use
in this function)
fs/partitions/acorn.c:541: error: (Each undeclared identifier is
reported only once
fs/partitions/acorn.c:541: error: for each function it appears in.)
fs/partitions/acorn.c:550: error: `hd' undeclared (first use in this
function)
fs/partitions/acorn.c:551: warning: implicit declaration of function
`add_gd_partition'
fs/partitions/acorn.c:551: error: `minor' undeclared (first use in this
function)
make[2]: *** [fs/partitions/acorn.o] Error 1

<-- snip -->

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed

2003-06-23 02:38:49

by Greg KH

[permalink] [raw]
Subject: Re: Linux 2.5.73

On Sun, Jun 22, 2003 at 04:58:19PM -0500, Alex Goddard wrote:
> On Sun, 22 Jun 2003, Alex Goddard wrote:
>
> > On Sun, 22 Jun 2003, Florin Iucha wrote:
> >
> > > drivers/built-in.o(.text+0x3106): In function `pci_remove_bus_device':
> > > : undefined reference to `pci_destroy_dev'
> > >
> > > pci_destroy_dev is defined under CONFIG_HOTPLUG and used outside.
> > >
> > > florin
> > >
> > > PS: I think changeset referenced in [email protected]
> > > causes the problem.
> >
> > An attempt at a fix. It just moves pci_desroy_dev outside the #ifdef).
> > I have no idea if this is the correct way to fix this. It compiles okay.
>
> Ack. Dumb-assed mistake in that one. This one shouldn't die during
> compile if CONFIG_HOTPLUG is turned on. The other one defined
> pci_destroy_dev() twice because I'm dumb.
>
> It does compile (with and without hotplug) and boot.

Nah, the following patch from Ivan Kokshaysky is the better way to do
this. I'll send it off to Linus on Monday.

thanks,

greg k-h


# [PATCH] PCI: fix non-hotplug build

Current BK won't build when CONFIG_HOTPLUG is not set due to
undefined references to pci_destroy_dev in hotplug.c.
I think it makes sense to not compile hotplug.c in this case at all.
Also, this allows to get rid of several function which are unused
in non-hotplug kernel.

Tested on Alpha.

diff -Nru a/drivers/pci/Makefile b/drivers/pci/Makefile
--- a/drivers/pci/Makefile Sun Jun 22 19:48:43 2003
+++ b/drivers/pci/Makefile Sun Jun 22 19:48:43 2003
@@ -3,14 +3,15 @@
#

obj-y += access.o bus.o probe.o pci.o pool.o quirks.o \
- names.o pci-driver.o search.o hotplug.o \
- pci-sysfs.o
+ names.o pci-driver.o search.o pci-sysfs.o
obj-$(CONFIG_PM) += power.o
obj-$(CONFIG_PROC_FS) += proc.o

ifndef CONFIG_SPARC64
obj-$(CONFIG_PCI) += setup-res.o
endif
+
+obj-$(CONFIG_HOTPLUG) += hotplug.o

# Build the PCI Hotplug drivers if we were asked to
obj-$(CONFIG_HOTPLUG_PCI) += hotplug/
diff -Nru a/drivers/pci/hotplug.c b/drivers/pci/hotplug.c
--- a/drivers/pci/hotplug.c Sun Jun 22 19:48:43 2003
+++ b/drivers/pci/hotplug.c Sun Jun 22 19:48:43 2003
@@ -12,7 +12,6 @@

static void pci_free_resources(struct pci_dev *dev);

-#ifdef CONFIG_HOTPLUG
int pci_hotplug (struct device *dev, char **envp, int num_envp,
char *buffer, int buffer_size)
{
@@ -209,16 +208,6 @@
}
EXPORT_SYMBOL(pci_remove_device_safe);

-#else /* CONFIG_HOTPLUG */
-
-int pci_hotplug (struct device *dev, char **envp, int num_envp,
- char *buffer, int buffer_size)
-{
- return -ENODEV;
-}
-
-#endif /* CONFIG_HOTPLUG */
-
static void
pci_free_resources(struct pci_dev *dev)
{
@@ -283,7 +272,5 @@
}
}

-#ifdef CONFIG_HOTPLUG
EXPORT_SYMBOL(pci_remove_bus_device);
EXPORT_SYMBOL(pci_remove_behind_bridge);
-#endif
diff -Nru a/drivers/pci/pci-driver.c b/drivers/pci/pci-driver.c
--- a/drivers/pci/pci-driver.c Sun Jun 22 19:48:43 2003
+++ b/drivers/pci/pci-driver.c Sun Jun 22 19:48:43 2003
@@ -486,6 +486,14 @@
put_device(&dev->dev);
}

+#ifndef CONFIG_HOTPLUG
+int pci_hotplug (struct device *dev, char **envp, int num_envp,
+ char *buffer, int buffer_size)
+{
+ return -ENODEV;
+}
+#endif
+
struct bus_type pci_bus_type = {
.name = "pci",
.match = pci_bus_match,

2003-06-23 04:21:28

by Adam Belay

[permalink] [raw]
Subject: Re: 2.5.73: ALSA ISA pnp_init_resource_table compile errors

On Mon, Jun 23, 2003 at 01:44:47AM +0200, Adrian Bunk wrote:
> On Sun, Jun 22, 2003 at 11:53:14AM -0700, Linus Torvalds wrote:
> >...
> > Summary of changes from v2.5.72 to v2.5.73
> > ============================================
> >...
> > Adam Belay:
> > o [PNP] Resource Management Cleanups and Updates
> >...
>
> This patch removed pnp_init_resource_table, but several drivers under
> sound/isa/ still use it, resulting in compile errors like the following:
>
> <-- snip -->
>
> ...
> CC sound/isa/ad1816a/ad1816a.o
> sound/isa/ad1816a/ad1816a.c: In function `snd_card_ad1816a_pnp':
> sound/isa/ad1816a/ad1816a.c:143: warning: implicit declaration of
> function `pnp_init_resource_table'
> ...
> LD .tmp_vmlinux1
> sound/built-in.o(.text+0x349c7): In function `snd_card_ad1816a_pnp':
> : undefined reference to `pnp_init_resource_table'
> sound/built-in.o(.text+0x34ad3): In function `snd_card_ad1816a_pnp':
> : undefined reference to `pnp_init_resource_table'
> make: *** [.tmp_vmlinux1] Error 1
>
> <-- snip -->
>
>
> cu
> Adrian
>

The patch below will correct this.

Thanks,
Adam

diff -urN a/drivers/pnp/interface.c b/drivers/pnp/interface.c
--- a/drivers/pnp/interface.c 2003-06-20 21:48:26.000000000 +0000
+++ b/drivers/pnp/interface.c 2003-06-22 23:17:04.000000000 +0000
@@ -275,7 +275,7 @@
for (i = 0; i < PNP_MAX_IRQ; i++) {
if (pnp_irq_valid(dev, i)) {
pnp_printf(buffer,"irq");
- pnp_printf(buffer," %ld \n", pnp_irq(dev, i));
+ pnp_printf(buffer," %lx \n", pnp_irq(dev, i));
}
}
for (i = 0; i < PNP_MAX_DMA; i++) {
@@ -323,14 +323,14 @@
if (!strnicmp(buf,"auto",4)) {
if (dev->active)
goto done;
- pnp_init_resources(&dev->res);
+ pnp_init_resource_table(&dev->res);
retval = pnp_auto_config_dev(dev);
goto done;
}
if (!strnicmp(buf,"clear",5)) {
if (dev->active)
goto done;
- pnp_init_resources(&dev->res);
+ pnp_init_resource_table(&dev->res);
goto done;
}
if (!strnicmp(buf,"get",3)) {
@@ -345,7 +345,7 @@
if (dev->active)
goto done;
buf += 3;
- pnp_init_resources(&dev->res);
+ pnp_init_resource_table(&dev->res);
down(&pnp_res_mutex);
while (1) {
while (isspace(*buf))
diff -urN a/drivers/pnp/isapnp/core.c b/drivers/pnp/isapnp/core.c
--- a/drivers/pnp/isapnp/core.c 2003-06-20 21:48:26.000000000 +0000
+++ b/drivers/pnp/isapnp/core.c 2003-06-22 23:16:26.000000000 +0000
@@ -458,7 +458,7 @@
dev->capabilities |= PNP_READ;
dev->capabilities |= PNP_WRITE;
dev->capabilities |= PNP_DISABLE;
- pnp_init_resources(&dev->res);
+ pnp_init_resource_table(&dev->res);
return dev;
}

@@ -1020,7 +1020,7 @@
static int isapnp_get_resources(struct pnp_dev *dev, struct pnp_resource_table * res)
{
int ret;
- pnp_init_resources(res);
+ pnp_init_resource_table(res);
isapnp_cfg_begin(dev->card->number, dev->number);
ret = isapnp_read_resources(dev, res);
isapnp_cfg_end();
diff -urN a/drivers/pnp/manager.c b/drivers/pnp/manager.c
--- a/drivers/pnp/manager.c 2003-06-20 21:48:26.000000000 +0000
+++ b/drivers/pnp/manager.c 2003-06-22 23:05:52.000000000 +0000
@@ -190,7 +190,7 @@
* @table: pointer to the desired resource table
*
*/
-void pnp_init_resources(struct pnp_resource_table *table)
+void pnp_init_resource_table(struct pnp_resource_table *table)
{
int idx;
down(&pnp_res_mutex);
@@ -226,7 +226,7 @@
* @res - the resources to clean
*
*/
-static void pnp_clean_resources(struct pnp_resource_table * res)
+static void pnp_clean_resource_table(struct pnp_resource_table * res)
{
int idx;
for (idx = 0; idx < PNP_MAX_IRQ; idx++) {
@@ -278,7 +278,7 @@
return -ENODEV;

down(&pnp_res_mutex);
- pnp_clean_resources(&dev->res); /* start with a fresh slate */
+ pnp_clean_resource_table(&dev->res); /* start with a fresh slate */
if (dev->independent) {
port = dev->independent->port;
mem = dev->independent->mem;
@@ -351,7 +351,7 @@
return 1;

fail:
- pnp_clean_resources(&dev->res);
+ pnp_clean_resource_table(&dev->res);
up(&pnp_res_mutex);
return 0;
}
@@ -510,7 +510,7 @@

/* release the resources so that other devices can use them */
down(&pnp_res_mutex);
- pnp_clean_resources(&dev->res);
+ pnp_clean_resource_table(&dev->res);
up(&pnp_res_mutex);

return 1;
@@ -539,4 +539,4 @@
EXPORT_SYMBOL(pnp_activate_dev);
EXPORT_SYMBOL(pnp_disable_dev);
EXPORT_SYMBOL(pnp_resource_change);
-EXPORT_SYMBOL(pnp_init_resources);
+EXPORT_SYMBOL(pnp_init_resource_table);
diff -urN a/drivers/pnp/pnpbios/core.c b/drivers/pnp/pnpbios/core.c
--- a/drivers/pnp/pnpbios/core.c 2003-06-20 21:48:26.000000000 +0000
+++ b/drivers/pnp/pnpbios/core.c 2003-06-22 23:20:40.000000000 +0000
@@ -937,7 +937,7 @@

/* clear out the damaged flags */
if (!dev->active)
- pnp_init_resources(&dev->res);
+ pnp_init_resource_table(&dev->res);

pnp_add_device(dev);
pnpbios_interface_attach_device(node);
diff -urN a/drivers/pnp/support.c b/drivers/pnp/support.c
--- a/drivers/pnp/support.c 2003-06-20 21:48:26.000000000 +0000
+++ b/drivers/pnp/support.c 2003-06-22 23:11:49.000000000 +0000
@@ -123,7 +123,7 @@
return NULL;

/* Blank the resource table values */
- pnp_init_resources(res);
+ pnp_init_resource_table(res);

while ((char *)p < (char *)end) {

diff -urN a/include/linux/pnp.h b/include/linux/pnp.h
--- a/include/linux/pnp.h 2003-06-20 21:48:28.000000000 +0000
+++ b/include/linux/pnp.h 2003-06-22 23:10:41.000000000 +0000
@@ -400,7 +400,7 @@
int pnp_register_dma_resource(struct pnp_option *option, struct pnp_dma *data);
int pnp_register_port_resource(struct pnp_option *option, struct pnp_port *data);
int pnp_register_mem_resource(struct pnp_option *option, struct pnp_mem *data);
-void pnp_init_resources(struct pnp_resource_table *table);
+void pnp_init_resource_table(struct pnp_resource_table *table);
int pnp_assign_resources(struct pnp_dev *dev, int depnum);
int pnp_manual_config_dev(struct pnp_dev *dev, struct pnp_resource_table *res, int mode);
int pnp_auto_config_dev(struct pnp_dev *dev);
@@ -448,7 +448,7 @@
static inline int pnp_register_dma_resource(struct pnp_option *option, struct pnp_dma *data) { return -ENODEV; }
static inline int pnp_register_port_resource(struct pnp_option *option, struct pnp_port *data) { return -ENODEV; }
static inline int pnp_register_mem_resource(struct pnp_option *option, struct pnp_mem *data) { return -ENODEV; }
-static inline void pnp_init_resources(struct pnp_resource_table *table) { }
+static inline void pnp_init_resource_table(struct pnp_resource_table *table) { }
static inline int pnp_assign_resources(struct pnp_dev *dev, int depnum) { return -ENODEV; }
static inline int pnp_manual_config_dev(struct pnp_dev *dev, struct pnp_resource_table *res, int mode) { return -ENODEV; }
static inline int pnp_auto_config_dev(struct pnp_dev *dev) { return -ENODEV; }

Subject: Linux 2.5.73 - Won't compile using oldconfig - config attached

drivers/usb/host/ehci-hcd.c:977: pci_ids causes a section type conflict
make[3]: *** [drivers/usb/host/ehci-hcd.o] Error 1
make[2]: *** [drivers/usb/host] Error 2
make[1]: *** [drivers/usb] Error 2
make: *** [drivers] Error 2



--

/"\ / For information and quotes, email us at
\ / ASCII RIBBON CAMPAIGN / [email protected]
X AGAINST HTML MAIL / http://www.lrsehosting.com/
/ \ AND POSTINGS / [email protected]
-------------------------------------------------------------------------


Attachments:
.config (24.94 kB)

2003-06-23 20:18:37

by Terje Fåberg

[permalink] [raw]
Subject: Re: Linux 2.5.73 - keyboard failure, repost no. 3


Hi all,

(and yes, I read the post-halloween docs!)

Just a note on the side: 2.5.73 fails to make use of
the keyboard on my Mitac 8375 Laptop. It correctly
identifies the controller AND the keyboard, but no
keypresses are recognized.

What can I do to track this down?

This problem exists at least since 2.5.67. Linux-2.4
runs perfectly.

Please see the .config and kernel output
...
pc110pad: I/O area 0x15e0-0x15e4 un use.
i8042.c: Detected active multiplexing controller, rev
1.1
serio: i8042 AUX0 port at 0x60,0x64 irq 12
serio: i8042 AUX1 port at 0x60,0x64 irq 12
Synaptics Touchpad, model 1
Firware: 5.1
180 degree mounted touchpad
Sensor: 15
new absolute packet format
Touchpad has extended capability bits
-> four buttons
-> multifinger detection
-> palm detection
input: Synaptics Synaptics Touchpad on isa0060/serio3
serio: i8042 AUX3 port at 0x60,0x64 irq 12
serio: i8042 AUX4 port at 0x60,0x64 irq 12
input: AT Set 2 keyboard on isa006 0/serio0
serio: i8042 KBD port at 0x60,0x64 irq1
...

galileo:~# cat .config | grep CONFIG
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_UID16=y
CONFIG_GENERIC_ISA_DMA=y
# CONFIG_EXPERIMENTAL is not set
CONFIG_SWAP=y
# CONFIG_SYSVIPC is not set
# CONFIG_BSD_PROCESS_ACCT is not set
CONFIG_SYSCTL=y
CONFIG_LOG_BUF_SHIFT=14
# CONFIG_EMBEDDED is not set
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_OBSOLETE_MODPARM=y
CONFIG_KMOD=y
CONFIG_X86_PC=y
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_NUMAQ is not set
# CONFIG_X86_SUMMIT is not set
# CONFIG_X86_BIGSMP is not set
# CONFIG_X86_VISWS is not set
# CONFIG_X86_GENERICARCH is not set
# CONFIG_X86_ES7000 is not set
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
# CONFIG_M686 is not set
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
# CONFIG_MPENTIUM4 is not set
# CONFIG_MK6 is not set
CONFIG_MK7=y
# CONFIG_MK8 is not set
# CONFIG_MELAN is not set
# CONFIG_MCRUSOE is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP2 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
CONFIG_X86_GENERIC=y
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_L1_CACHE_SHIFT=7
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_USE_3DNOW=y
# CONFIG_HUGETLB_PAGE is not set
# CONFIG_SMP is not set
# CONFIG_PREEMPT is not set
# CONFIG_X86_UP_APIC is not set
CONFIG_X86_TSC=y
# CONFIG_X86_MCE is not set
# CONFIG_TOSHIBA is not set
# CONFIG_I8K is not set
# CONFIG_MICROCODE is not set
# CONFIG_X86_MSR is not set
# CONFIG_X86_CPUID is not set
CONFIG_NOHIGHMEM=y
# CONFIG_HIGHMEM4G is not set
# CONFIG_HIGHMEM64G is not set
# CONFIG_MATH_EMULATION is not set
# CONFIG_MTRR is not set
# CONFIG_PM is not set
CONFIG_ACPI=y
CONFIG_ACPI_BOOT=y
CONFIG_ACPI_AC=y
CONFIG_ACPI_BATTERY=y
CONFIG_ACPI_BUTTON=y
CONFIG_ACPI_FAN=y
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_THERMAL=y
CONFIG_ACPI_ASUS=m
CONFIG_ACPI_TOSHIBA=y
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_BUS=y
CONFIG_ACPI_INTERPRETER=y
CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_PCI=y
CONFIG_ACPI_SYSTEM=y
# CONFIG_CPU_FREQ is not set
CONFIG_PCI=y
# CONFIG_PCI_GOBIOS is not set
# CONFIG_PCI_GODIRECT is not set
CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_LEGACY_PROC=y
CONFIG_PCI_NAMES=y
CONFIG_ISA=y
# CONFIG_EISA is not set
# CONFIG_MCA is not set
# CONFIG_SCx200 is not set
# CONFIG_HOTPLUG is not set
CONFIG_KCORE_ELF=y
# CONFIG_KCORE_AOUT is not set
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_AOUT is not set
# CONFIG_BINFMT_MISC is not set
CONFIG_FW_LOADER=m
# CONFIG_MTD is not set
# CONFIG_PARPORT is not set
CONFIG_PNP=y
CONFIG_PNP_NAMES=y
CONFIG_PNP_DEBUG=y
# CONFIG_BLK_DEV_FD is not set
# CONFIG_BLK_DEV_XD is not set
# CONFIG_BLK_CPQ_DA is not set
# CONFIG_BLK_CPQ_CISS_DA is not set
# CONFIG_BLK_DEV_DAC960 is not set
# CONFIG_BLK_DEV_LOOP is not set
# CONFIG_BLK_DEV_NBD is not set
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=64000
CONFIG_BLK_DEV_INITRD=y
# CONFIG_LBD is not set
CONFIG_IDE=y
CONFIG_BLK_DEV_IDE=y
# CONFIG_BLK_DEV_HD_IDE is not set
# CONFIG_BLK_DEV_HD is not set
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDEDISK_MULTI_MODE=y
CONFIG_IDEDISK_STROKE=y
# CONFIG_BLK_DEV_IDECD is not set
# CONFIG_BLK_DEV_IDEFLOPPY is not set
# CONFIG_IDE_TASK_IOCTL is not set
CONFIG_IDE_TASKFILE_IO=y
# CONFIG_BLK_DEV_CMD640 is not set
# CONFIG_BLK_DEV_IDEPNP is not set
CONFIG_BLK_DEV_IDEPCI=y
# CONFIG_BLK_DEV_GENERIC is not set
# CONFIG_IDEPCI_SHARE_IRQ is not set
CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_OFFBOARD is not set
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
CONFIG_IDEDMA_PCI_AUTO=y
# CONFIG_IDEDMA_ONLYDISK is not set
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_BLK_DEV_ADMA=y
# CONFIG_BLK_DEV_AEC62XX is not set
# CONFIG_BLK_DEV_ALI15X3 is not set
# CONFIG_BLK_DEV_AMD74XX is not set
# CONFIG_BLK_DEV_CMD64X is not set
# CONFIG_BLK_DEV_TRIFLEX is not set
# CONFIG_BLK_DEV_CY82C693 is not set
# CONFIG_BLK_DEV_HPT34X is not set
# CONFIG_BLK_DEV_HPT366 is not set
# CONFIG_BLK_DEV_SC1200 is not set
# CONFIG_BLK_DEV_PIIX is not set
# CONFIG_BLK_DEV_NS87415 is not set
# CONFIG_BLK_DEV_PDC202XX_OLD is not set
# CONFIG_BLK_DEV_PDC202XX_NEW is not set
# CONFIG_BLK_DEV_RZ1000 is not set
# CONFIG_BLK_DEV_SVWKS is not set
# CONFIG_BLK_DEV_SIIMAGE is not set
# CONFIG_BLK_DEV_SIS5513 is not set
# CONFIG_BLK_DEV_SLC90E66 is not set
# CONFIG_BLK_DEV_TRM290 is not set
CONFIG_BLK_DEV_VIA82CXXX=y
# CONFIG_IDE_CHIPSETS is not set
CONFIG_IDEDMA_AUTO=y
# CONFIG_IDEDMA_IVB is not set
CONFIG_BLK_DEV_IDE_MODES=y
# CONFIG_SCSI is not set
# CONFIG_CD_NO_IDESCSI is not set
# CONFIG_MD is not set
# CONFIG_I2O is not set
CONFIG_NET=y
CONFIG_PACKET=y
# CONFIG_PACKET_MMAP is not set
# CONFIG_NETLINK_DEV is not set
# CONFIG_NETFILTER is not set
CONFIG_UNIX=y
# CONFIG_NET_KEY is not set
CONFIG_INET=y
# CONFIG_IP_MULTICAST is not set
# CONFIG_IP_ADVANCED_ROUTER is not set
# CONFIG_IP_PNP is not set
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
# CONFIG_INET_ECN is not set
# CONFIG_SYN_COOKIES is not set
# CONFIG_INET_AH is not set
# CONFIG_INET_ESP is not set
# CONFIG_INET_IPCOMP is not set
# CONFIG_XFRM_USER is not set
# CONFIG_VLAN_8021Q is not set
# CONFIG_LLC is not set
# CONFIG_DECNET is not set
# CONFIG_BRIDGE is not set
# CONFIG_NET_SCHED is not set
# CONFIG_NET_PKTGEN is not set
CONFIG_NETDEVICES=y
# CONFIG_ARCNET is not set
# CONFIG_DUMMY is not set
# CONFIG_BONDING is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set
# CONFIG_NET_SB1000 is not set
CONFIG_NET_ETHERNET=y
CONFIG_MII=y
# CONFIG_HAPPYMEAL is not set
# CONFIG_SUNGEM is not set
# CONFIG_NET_VENDOR_3COM is not set
# CONFIG_LANCE is not set
# CONFIG_NET_VENDOR_SMC is not set
# CONFIG_NET_VENDOR_RACAL is not set
# CONFIG_NET_TULIP is not set
# CONFIG_DEPCA is not set
# CONFIG_HP100 is not set
# CONFIG_NET_ISA is not set
CONFIG_NET_PCI=y
# CONFIG_PCNET32 is not set
# CONFIG_AMD8111_ETH is not set
# CONFIG_ADAPTEC_STARFIRE is not set
# CONFIG_APRICOT is not set
# CONFIG_CS89x0 is not set
# CONFIG_DGRS is not set
# CONFIG_EEPRO100 is not set
# CONFIG_E100 is not set
# CONFIG_FEALNX is not set
# CONFIG_NATSEMI is not set
# CONFIG_NE2K_PCI is not set
# CONFIG_8139TOO is not set
# CONFIG_SIS900 is not set
# CONFIG_EPIC100 is not set
# CONFIG_SUNDANCE is not set
# CONFIG_TLAN is not set
CONFIG_VIA_RHINE=m
# CONFIG_NET_POCKET is not set
# CONFIG_ACENIC is not set
# CONFIG_DL2K is not set
# CONFIG_E1000 is not set
# CONFIG_NS83820 is not set
# CONFIG_HAMACHI is not set
# CONFIG_R8169 is not set
# CONFIG_SK98LIN is not set
# CONFIG_TIGON3 is not set
# CONFIG_IXGB is not set
# CONFIG_FDDI is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set
# CONFIG_NET_RADIO is not set
CONFIG_WAN=y
# CONFIG_HOSTESS_SV11 is not set
# CONFIG_COSA is not set
# CONFIG_COMX is not set
# CONFIG_DSCC4 is not set
# CONFIG_LANMEDIA is not set
# CONFIG_SEALEVEL_4021 is not set
# CONFIG_SYNCLINK_SYNCPPP is not set
# CONFIG_HDLC is not set
# CONFIG_DLCI is not set
# CONFIG_SBNI is not set
# CONFIG_HAMRADIO is not set
# CONFIG_IRDA is not set
# CONFIG_ISDN_BOOL is not set
# CONFIG_PHONE is not set
CONFIG_INPUT=y
# CONFIG_INPUT_MOUSEDEV is not set
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_TSDEV is not set
# CONFIG_INPUT_EVDEV is not set
# CONFIG_INPUT_EVBUG is not set
# CONFIG_GAMEPORT is not set
CONFIG_SOUND_GAMEPORT=y
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
CONFIG_SERIO_SERPORT=y
CONFIG_SERIO_CT82C710=y
CONFIG_SERIO_PCIPS2=y
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y
CONFIG_KEYBOARD_SUNKBD=y
CONFIG_KEYBOARD_XTKBD=y
CONFIG_KEYBOARD_NEWTON=y
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
# CONFIG_MOUSE_SERIAL is not set
# CONFIG_MOUSE_INPORT is not set
# CONFIG_MOUSE_LOGIBM is not set
CONFIG_MOUSE_PC110PAD=y
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
# CONFIG_INPUT_MISC is not set
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
# CONFIG_SERIAL_NONSTANDARD is not set
CONFIG_SERIAL_8250_ACPI=y
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
# CONFIG_I2C is not set
# CONFIG_I2C_SENSOR is not set
# CONFIG_BUSMOUSE is not set
# CONFIG_QIC02_TAPE is not set
# CONFIG_IPMI_HANDLER is not set
# CONFIG_WATCHDOG is not set
# CONFIG_HW_RANDOM is not set
# CONFIG_NVRAM is not set
CONFIG_RTC=y
# CONFIG_DTLK is not set
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set
# CONFIG_FTAPE is not set
# CONFIG_AGP is not set
# CONFIG_DRM is not set
# CONFIG_MWAVE is not set
# CONFIG_RAW_DRIVER is not set
# CONFIG_HANGCHECK_TIMER is not set
# CONFIG_VIDEO_DEV is not set
# CONFIG_DVB is not set
# CONFIG_EXT2_FS is not set
# CONFIG_EXT3_FS is not set
# CONFIG_JBD is not set
CONFIG_REISERFS_FS=y
# CONFIG_REISERFS_CHECK is not set
# CONFIG_REISERFS_PROC_INFO is not set
# CONFIG_JFS_FS is not set
# CONFIG_XFS_FS is not set
CONFIG_MINIX_FS=y
# CONFIG_ROMFS_FS is not set
# CONFIG_QUOTA is not set
# CONFIG_AUTOFS_FS is not set
# CONFIG_AUTOFS4_FS is not set
# CONFIG_ISO9660_FS is not set
# CONFIG_UDF_FS is not set
# CONFIG_FAT_FS is not set
# CONFIG_NTFS_FS is not set
CONFIG_PROC_FS=y
CONFIG_DEVPTS_FS=y
# CONFIG_DEVPTS_FS_XATTR is not set
CONFIG_TMPFS=y
CONFIG_RAMFS=y
# CONFIG_CRAMFS is not set
# CONFIG_VXFS_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set
# CONFIG_NFS_FS is not set
# CONFIG_NFSD is not set
# CONFIG_EXPORTFS is not set
# CONFIG_SMB_FS is not set
# CONFIG_CIFS is not set
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_PARTITION_ADVANCED is not set
CONFIG_MSDOS_PARTITION=y
# CONFIG_FB is not set
CONFIG_VIDEO_SELECT=y
CONFIG_VGA_CONSOLE=y
# CONFIG_MDA_CONSOLE is not set
CONFIG_DUMMY_CONSOLE=y
# CONFIG_SOUND is not set
# CONFIG_USB is not set
# CONFIG_BT is not set
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_STACKOVERFLOW=y
CONFIG_DEBUG_SLAB=y
CONFIG_DEBUG_IOVIRT=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_DEBUG_SPINLOCK=y
CONFIG_KALLSYMS=y
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
CONFIG_FRAME_POINTER=y
# CONFIG_SECURITY is not set
# CONFIG_CRYPTO is not set
# CONFIG_CRC32 is not set
CONFIG_X86_BIOS_REBOOT=y

Kind regards,
Terje


______________________________________________________
F? den nye Yahoo! Messenger p? http://no.messenger.yahoo.com/
Nye ikoner og bakgrunner, webkamera med superkvalitet og dobbelt s? morsom

2003-06-26 20:31:17

by Vojtech Pavlik

[permalink] [raw]
Subject: Re: Linux 2.5.73 - keyboard failure, repost no. 3

On Mon, Jun 23, 2003 at 10:32:24PM +0200, Terje F?berg wrote:
>
> Hi all,
>
> (and yes, I read the post-halloween docs!)
>
> Just a note on the side: 2.5.73 fails to make use of
> the keyboard on my Mitac 8375 Laptop. It correctly
> identifies the controller AND the keyboard, but no
> keypresses are recognized.
>
> What can I do to track this down?

#define DEBUG

in

drivers/input/serio/i8042.c

then recompile and send me the output of that.

>
> This problem exists at least since 2.5.67. Linux-2.4
> runs perfectly.
>
> Please see the .config and kernel output
> ...
> pc110pad: I/O area 0x15e0-0x15e4 un use.
> i8042.c: Detected active multiplexing controller, rev
> 1.1
> serio: i8042 AUX0 port at 0x60,0x64 irq 12
> serio: i8042 AUX1 port at 0x60,0x64 irq 12
> Synaptics Touchpad, model 1
> Firware: 5.1
> 180 degree mounted touchpad
> Sensor: 15
> new absolute packet format
> Touchpad has extended capability bits
> -> four buttons
> -> multifinger detection
> -> palm detection
> input: Synaptics Synaptics Touchpad on isa0060/serio3
> serio: i8042 AUX3 port at 0x60,0x64 irq 12
> serio: i8042 AUX4 port at 0x60,0x64 irq 12
> input: AT Set 2 keyboard on isa006 0/serio0
> serio: i8042 KBD port at 0x60,0x64 irq1
> ...
>

--
Vojtech Pavlik
SuSE Labs, SuSE CR

2003-06-27 14:08:37

by Terje Fåberg

[permalink] [raw]
Subject: Re: Linux 2.5.73 - keyboard failure, repost no. 3

Vojtech Pavlik <[email protected]> skrev:

> #define DEBUG
>
> in
>
> drivers/input/serio/i8042.c
>
> then recompile and send me the output of that.

...
i8042.c: Detected active multiplexing controller, rev
1.1
atkbd.c: Sent: f2
atkbd.c: Recieved fe flags 00
atkbd.c: Sent: ed
atkbd.c: Recieved fe flags 00
serio: i8042 AUX0 port at 0x60,0x64 irq 12
atkbd.c: Sent: f2
atkbd.c: Recieved fe flags 00
atkbd.c: Sent: ed
atkbd.c: Recieved fe flags 00
serio: i8042 AUX1 port at 0x60,0x64 irq 12
atkbd.c: Sent: f2
atkbd.c: Recieved fa flags 00
atkbd.c: Recieved 00 flags 00
serio: i8042 AUX2 port at 0x60,0x64 irq 12
atkbd.c: Sent: f2
atkbd.c: Recieved fe flags 00
atkbd.c: Sent: ed
atkbd.c: Recieved fe flags 00
serio: i8042 AUX3 port at 0x60,0x64 irq 12
atkbd.c: Sent: f2
atkbd.c: Recieved fa flags 00
atkbd.c: Recieved ab flags 00
atkbd.c: Recieved 83 flags 00
atkbd.c: Sent: ed
atkbd.c: Recieved fa flags 00
atkbd.c: Sent: 00
atkbd.c: Recieved fa flags 00
atkbd.c: Sent: f8
atkbd.c: Recieved fe flags 00
atkbd.c: Sent: f4
atkbd.c: Recieved fa flags 00
atkbd.c: Sent: f0
atkbd.c: Recieved fa flags 00
atkbd.c: Sent: 02
atkbd.c: Recieved fa flags 00
atkbd.c: Sent: f0
atkbd.c: Recieved fa flags 00
atkbd.c: Sent: 00
atkbd.c: Recieved fa flags 00
atkbd.c: Recieved 02 flags 00
input: AT Set 2 keyboard on isa006 0/serio0
serio: i8042 KBD port at 0x60,0x64 irq1
...

Regards,
Terje


______________________________________________________
F? den nye Yahoo! Messenger p? http://no.messenger.yahoo.com/
Nye ikoner og bakgrunner, webkamera med superkvalitet og dobbelt s? morsom

2003-06-27 19:11:56

by Vojtech Pavlik

[permalink] [raw]
Subject: Re: Linux 2.5.73 - keyboard failure, repost no. 3

On Fri, Jun 27, 2003 at 04:22:47PM +0200, Terje F?berg wrote:
> Vojtech Pavlik <[email protected]> skrev:
>
> > #define DEBUG
> >
> > in
> >
> > drivers/input/serio/i8042.c
> >
> > then recompile and send me the output of that.

When I was saying drivers/input/serio/i8042.c, I meant that. NOT
atkbd.c. Although that also does provide some info, it's not all of it.

>
> ...
> i8042.c: Detected active multiplexing controller, rev
> 1.1
> atkbd.c: Sent: f2
> atkbd.c: Recieved fe flags 00
> atkbd.c: Sent: ed
> atkbd.c: Recieved fe flags 00
> serio: i8042 AUX0 port at 0x60,0x64 irq 12
> atkbd.c: Sent: f2
> atkbd.c: Recieved fe flags 00
> atkbd.c: Sent: ed
> atkbd.c: Recieved fe flags 00
> serio: i8042 AUX1 port at 0x60,0x64 irq 12
> atkbd.c: Sent: f2
> atkbd.c: Recieved fa flags 00
> atkbd.c: Recieved 00 flags 00
> serio: i8042 AUX2 port at 0x60,0x64 irq 12
> atkbd.c: Sent: f2
> atkbd.c: Recieved fe flags 00
> atkbd.c: Sent: ed
> atkbd.c: Recieved fe flags 00
> serio: i8042 AUX3 port at 0x60,0x64 irq 12
> atkbd.c: Sent: f2
> atkbd.c: Recieved fa flags 00
> atkbd.c: Recieved ab flags 00
> atkbd.c: Recieved 83 flags 00
> atkbd.c: Sent: ed
> atkbd.c: Recieved fa flags 00
> atkbd.c: Sent: 00
> atkbd.c: Recieved fa flags 00
> atkbd.c: Sent: f8
> atkbd.c: Recieved fe flags 00
> atkbd.c: Sent: f4
> atkbd.c: Recieved fa flags 00
> atkbd.c: Sent: f0
> atkbd.c: Recieved fa flags 00
> atkbd.c: Sent: 02
> atkbd.c: Recieved fa flags 00
> atkbd.c: Sent: f0
> atkbd.c: Recieved fa flags 00
> atkbd.c: Sent: 00
> atkbd.c: Recieved fa flags 00
> atkbd.c: Recieved 02 flags 00
> input: AT Set 2 keyboard on isa006 0/serio0
> serio: i8042 KBD port at 0x60,0x64 irq1
> ...
>
> Regards,
> Terje
>
>
> ______________________________________________________
> F? den nye Yahoo! Messenger p? http://no.messenger.yahoo.com/
> Nye ikoner og bakgrunner, webkamera med superkvalitet og dobbelt s? morsom

--
Vojtech Pavlik
SuSE Labs, SuSE CR

2003-06-28 08:57:41

by Terje Fåberg

[permalink] [raw]
Subject: Re: Linux 2.5.73 - keyboard failure, repost no. 3

Vojtech Pavlik <[email protected]> skrev:

> When I was saying drivers/input/serio/i8042.c, I
> meant that. NOT atkbd.c. Although that also does
> provide some info, it's not all of it.

Please excuse me, if was wasting your time here.
Indeed I had defined DEBUG in i8042.c but not
_before_ the inclusion of i8024.h. Damn.

Unfortunately scrolling is of course not possible, so
to see as much of the debug output from i8042 as
possible I had to undefine ATKBD_DEBUG in atkbd
again. This is what I can get now. Unfortunately this
device does not have a serial port, so serial console
is not an option.

I won't be able to get my hands on a USB keyboard
until Tuesday, but then I can send you the whole
output.

...
i8042.c: 60 -> i8042 (command) [18]
i8042.c: 02 -> i8042 (parameter) [18]
i8042.c: 92 -> i8042 (command) [18]
i8042.c: f2 -> i8042 (parameter) [18]
i8042.c: fa <- i8042 (interrupt, aux2, 12) [31]
i8042.c: 00 <- i8042 (interrupt, aux2, 12) [32]
i8042.c: 60 -> i8042 (command) [35]
i8042.c: 00 -> i8042 (parameter) [33]
serio: i8042 AUX2 port at 0x60,0x64 irq 12
i8042.c: 60 -> i8042 (command) [33]
i8042.c: 00 -> i8042 (parameter) [33]
i8042.c: 60 -> i8042 (command) [34]
i8042.c: 02 -> i8042 (parameter) [34]
i8042.c: 93 -> i8042 (command) [34]
i8042.c: f2 -> i8042 (parameter) [34]
i8042.c: fe <- i8042 (interrupt, aux3, 12) [36]
i8042.c: 93 -> i8042 (command) [36]
i8042.c: ed -> i8042 (command) [36]
i8042.c: fe <- i8042 (interrupt, aux3, 12) [37]
i8042.c: 60 -> i8042 (command) [37]
i8042.c: 00 -> i8042 (parameter) [37]
serio: i8042 AUX3 port at 0x60,0x64 irq 12
i8042.c: 60 -> i8042 (command) [37]
i8042.c: 00 -> i8042 (parameter) [37]
i8042.c: 60 -> i8042 (command) [38]
i8042.c: 01 -> i8042 (parameter) [38]
i8042.c: f2 -> i8042 (kbd-data) [38]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [40]
i8042.c: ab <- i8042 (interrupt, kbd, 1) [45]
i8042.c: 83 <- i8042 (interrupt, kbd, 1) [46]
i8042.c: ed -> (kbd-data) [46]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [47]
i8042.c: 00 -> (kbd-data) [47]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [49]
i8042.c: f8 -> (kbd-data) [49]
i8042.c: fe <- i8042 (interrupt, kbd, 1) [49]
i8042.c: f4 -> (kbd-data) [49]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [50]
i8042.c: f0 -> (kbd-data) [50]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [51]
i8042.c: 02 -> (kbd-data) [51]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [51]
i8042.c: f0 -> (kbd-data) [51]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [52]
i8042.c: 00 -> (kbd-data) [52]
i8042.c: fa <- i8042 (interrupt, kbd, 1) [53]
i8042.c: 02 <- i8042 (interrupt, kbd, 1) [54]
input: AT Set 2 keyboard on isa0060/serio0
serio: i8042 KBD port at 0x60,0x64 irq 1
...

Thanks for your patience,
Terje

______________________________________________________
F? den nye Yahoo! Messenger p? http://no.messenger.yahoo.com/
Nye ikoner og bakgrunner, webkamera med superkvalitet og dobbelt s? morsom

2003-06-28 09:22:58

by Vojtech Pavlik

[permalink] [raw]
Subject: Re: Linux 2.5.73 - keyboard failure, repost no. 3

On Sat, Jun 28, 2003 at 11:11:54AM +0200, Terje F?berg wrote:
> Vojtech Pavlik <[email protected]> skrev:
>
> > When I was saying drivers/input/serio/i8042.c, I
> > meant that. NOT atkbd.c. Although that also does
> > provide some info, it's not all of it.
>
> Please excuse me, if was wasting your time here.
> Indeed I had defined DEBUG in i8042.c but not
> _before_ the inclusion of i8024.h. Damn.
>
> Unfortunately scrolling is of course not possible, so
> to see as much of the debug output from i8042 as
> possible I had to undefine ATKBD_DEBUG in atkbd
> again. This is what I can get now. Unfortunately this
> device does not have a serial port, so serial console
> is not an option.
>
> I won't be able to get my hands on a USB keyboard
> until Tuesday, but then I can send you the whole
> output.

Thanks for this dump. I hope you didn't have to copy it all by hand,
though it seems so ...

> ...
> i8042.c: 60 -> i8042 (command) [18]
> i8042.c: 02 -> i8042 (parameter) [18]
> i8042.c: 92 -> i8042 (command) [18]
> i8042.c: f2 -> i8042 (parameter) [18]
> i8042.c: fa <- i8042 (interrupt, aux2, 12) [31]
> i8042.c: 00 <- i8042 (interrupt, aux2, 12) [32]
> i8042.c: 60 -> i8042 (command) [35]
> i8042.c: 00 -> i8042 (parameter) [33]
> serio: i8042 AUX2 port at 0x60,0x64 irq 12
> i8042.c: 60 -> i8042 (command) [33]
> i8042.c: 00 -> i8042 (parameter) [33]
> i8042.c: 60 -> i8042 (command) [34]
> i8042.c: 02 -> i8042 (parameter) [34]
> i8042.c: 93 -> i8042 (command) [34]
> i8042.c: f2 -> i8042 (parameter) [34]
> i8042.c: fe <- i8042 (interrupt, aux3, 12) [36]
> i8042.c: 93 -> i8042 (command) [36]
> i8042.c: ed -> i8042 (command) [36]
> i8042.c: fe <- i8042 (interrupt, aux3, 12) [37]
> i8042.c: 60 -> i8042 (command) [37]
> i8042.c: 00 -> i8042 (parameter) [37]
> serio: i8042 AUX3 port at 0x60,0x64 irq 12
> i8042.c: 60 -> i8042 (command) [37]
> i8042.c: 00 -> i8042 (parameter) [37]
> i8042.c: 60 -> i8042 (command) [38]
> i8042.c: 01 -> i8042 (parameter) [38]
> i8042.c: f2 -> i8042 (kbd-data) [38]
> i8042.c: fa <- i8042 (interrupt, kbd, 1) [40]
> i8042.c: ab <- i8042 (interrupt, kbd, 1) [45]
> i8042.c: 83 <- i8042 (interrupt, kbd, 1) [46]
> i8042.c: ed -> (kbd-data) [46]
> i8042.c: fa <- i8042 (interrupt, kbd, 1) [47]
> i8042.c: 00 -> (kbd-data) [47]
> i8042.c: fa <- i8042 (interrupt, kbd, 1) [49]
> i8042.c: f8 -> (kbd-data) [49]
> i8042.c: fe <- i8042 (interrupt, kbd, 1) [49]
> i8042.c: f4 -> (kbd-data) [49]
> i8042.c: fa <- i8042 (interrupt, kbd, 1) [50]
> i8042.c: f0 -> (kbd-data) [50]
> i8042.c: fa <- i8042 (interrupt, kbd, 1) [51]
> i8042.c: 02 -> (kbd-data) [51]
> i8042.c: fa <- i8042 (interrupt, kbd, 1) [51]
> i8042.c: f0 -> (kbd-data) [51]
> i8042.c: fa <- i8042 (interrupt, kbd, 1) [52]
> i8042.c: 00 -> (kbd-data) [52]
> i8042.c: fa <- i8042 (interrupt, kbd, 1) [53]
> i8042.c: 02 <- i8042 (interrupt, kbd, 1) [54]
> input: AT Set 2 keyboard on isa0060/serio0
> serio: i8042 KBD port at 0x60,0x64 irq 1
> ...

So, no more interrupts no more log lines, nothing when you try to press
keys after the last line?

--
Vojtech Pavlik
SuSE Labs, SuSE CR

2003-06-28 11:26:28

by Terje Fåberg

[permalink] [raw]
Subject: Re: Linux 2.5.73 - keyboard failure, repost no. 3

Vojtech Pavlik <[email protected]> wrote:

> Thanks for this dump. I hope you didn't have to copy
> it all by hand,
> though it seems so ...

Unfortunately I had to. ;-(

> So, no more interrupts no more log lines, nothing
> when you try to press keys after the last line?

Correct. I can press any keys I want, but they show no

effect or output. Also SysRQ and CTRL-ALT-DEL have
no effect.

The video mode selection menu (with vga=ask) works,
but I guess that is handled via bios and has nothing
to do with the problem.

Regards,
Terje


______________________________________________________
F? den nye Yahoo! Messenger p? http://no.messenger.yahoo.com/
Nye ikoner og bakgrunner, webkamera med superkvalitet og dobbelt s? morsom

2003-07-02 14:17:31

by John Covici

[permalink] [raw]
Subject: Re: Linux 2.5.73 - Won't compile using oldconfig - config attached

Anyone have an answer to this one? I am getting the same error as
below.

Its true I am using a .config from 70 and did make oldconfig -- if
this is the problem, how can I fix it?

Thanks.


on Mon, 23 Jun 2003 05:13:43 -0500 [email protected] wrote:

> drivers/usb/host/ehci-hcd.c:977: pci_ids causes a section type conflict
> make[3]: *** [drivers/usb/host/ehci-hcd.o] Error 1
> make[2]: *** [drivers/usb/host] Error 2
> make[1]: *** [drivers/usb] Error 2
> make: *** [drivers] Error 2
>
>
>
> --
>

--
John Covici
[email protected]

2003-07-02 16:24:56

by Greg KH

[permalink] [raw]
Subject: Re: Linux 2.5.73 - Won't compile using oldconfig - config attached

On Wed, Jul 02, 2003 at 10:31:53AM -0400, John Covici wrote:
> Anyone have an answer to this one? I am getting the same error as
> below.

Fixed in the -bk tree. Search the lkml archives for the patch if you
are curious.

thanks,

greg k-h

2003-07-03 02:40:11

by Adrian Bunk

[permalink] [raw]
Subject: Re: 2.5.73: ALSA ISA pnp_init_resource_table compile errors

On Mon, Jun 23, 2003 at 12:08:08AM +0000, Adam Belay wrote:
> On Mon, Jun 23, 2003 at 01:44:47AM +0200, Adrian Bunk wrote:
> > On Sun, Jun 22, 2003 at 11:53:14AM -0700, Linus Torvalds wrote:
> > >...
> > > Summary of changes from v2.5.72 to v2.5.73
> > > ============================================
> > >...
> > > Adam Belay:
> > > o [PNP] Resource Management Cleanups and Updates
> > >...
> >
> > This patch removed pnp_init_resource_table, but several drivers under
> > sound/isa/ still use it, resulting in compile errors like the following:
> >
> > <-- snip -->
> >
> > ...
> > CC sound/isa/ad1816a/ad1816a.o
> > sound/isa/ad1816a/ad1816a.c: In function `snd_card_ad1816a_pnp':
> > sound/isa/ad1816a/ad1816a.c:143: warning: implicit declaration of
> > function `pnp_init_resource_table'
> > ...
> > LD .tmp_vmlinux1
> > sound/built-in.o(.text+0x349c7): In function `snd_card_ad1816a_pnp':
> > : undefined reference to `pnp_init_resource_table'
> > sound/built-in.o(.text+0x34ad3): In function `snd_card_ad1816a_pnp':
> > : undefined reference to `pnp_init_resource_table'
> > make: *** [.tmp_vmlinux1] Error 1
> >
> > <-- snip -->
> >
> >
> > cu
> > Adrian
> >
>
> The patch below will correct this.

I don't know whether it's related, but with 2.5.73 + your patch and
2.5.74 my soundcard stopped working (driver compiled statically into
the kernel, no options given).

>From dmesg:

2.5.74:

<-- snip -->

Advanced Linux Sound Architecture DriverVersion 0.9.4 (Mon Jun 09 12:01:18 2003 UTC).
specify port
pnp: the driver 'ad1816a' has been registered
pnp: match found with the PnP device '01:01.00'and the driver 'ad1816a'
pnp: match found with the PnP device '01:01.01'and the driver 'ad1816a'
ad1816a: AUDIO the requested resources areinvalid, using auto config
pnp: Unable to assign resources to device 01:01.00
ALSA device list:
No soundcards found.

<-- snip -->


2.5.72 (soundcard works):


<-- snip -->

Advanced Linux Sound Architecture DriverVersion 0.9.4 (Mon Jun 09 12:01:18 2003 UTC).
specify port
pnp: the driver 'ad1816a' has been registered
pnp: match found with the PnP device '01:01.00'and the driver 'ad1816a'Jul 3 04:37:42 r063144 kernel: pnp: match found with the PnP device '01:01.01'and the driver 'ad1816a'
pnp: res: the device '01:01.00' has beenactivated.
pnp: res: the device '01:01.01' has beenactivated.
ALSA device list:
#0: ADI SoundPort AD1816A soundcard, SS at0x530, irq 5, dma 1&3

<-- snip -->


> Thanks,
> Adam
>...

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed

2003-07-03 23:18:19

by Adam Belay

[permalink] [raw]
Subject: Re: 2.5.73: ALSA ISA pnp_init_resource_table compile errors

On Thu, Jul 03, 2003 at 04:53:43AM +0200, Adrian Bunk wrote:
> I don't know whether it's related, but with 2.5.73 + your patch and
> 2.5.74 my soundcard stopped working (driver compiled statically into
> the kernel, no options given).
>
> >From dmesg:
>
> 2.5.74:
>
> <-- snip -->
>
> Advanced Linux Sound Architecture DriverVersion 0.9.4 (Mon Jun 09 12:01:18 2003 UTC).
> specify port
> pnp: the driver 'ad1816a' has been registered
> pnp: match found with the PnP device '01:01.00'and the driver 'ad1816a'
> pnp: match found with the PnP device '01:01.01'and the driver 'ad1816a'
> ad1816a: AUDIO the requested resources areinvalid, using auto config
> pnp: Unable to assign resources to device 01:01.00
> ALSA device list:
> No soundcards found.
>
> <-- snip -->
>
>
> 2.5.72 (soundcard works):
>
>
> <-- snip -->
>
> Advanced Linux Sound Architecture DriverVersion 0.9.4 (Mon Jun 09 12:01:18 2003 UTC).
> specify port
> pnp: the driver 'ad1816a' has been registered
> pnp: match found with the PnP device '01:01.00'and the driver 'ad1816a'Jul 3 04:37:42 r063144 kernel: pnp: match found with the PnP device '01:01.01'and the driver 'ad1816a'
> pnp: res: the device '01:01.00' has beenactivated.
> pnp: res: the device '01:01.01' has beenactivated.
> ALSA device list:
> #0: ADI SoundPort AD1816A soundcard, SS at0x530, irq 5, dma 1&3
>
> <-- snip -->

Hi,

Some of my recent patches may correct this issue. If not, it may be
an unresolvable resource conflict. Try catting
/sys/bus/pnp1/devices/01:01.00/options and see if any of the needed
irqs are available, most importantly irq 5.

Also the 'resources' file can be used to configure the device.
try...
#"clear" > resources
#"activate" > resources

A printk will display if it was successful.

Let me know if this works.

Thanks,
Adam

P.S.: I'll be traveling so I'll try to get back to you as soon as I
can.

diff -urN a/drivers/pnp/interface.c b/drivers/pnp/interface.c
--- a/drivers/pnp/interface.c 2003-07-03 00:24:32.000000000 +0000
+++ b/drivers/pnp/interface.c 2003-07-02 23:44:01.000000000 +0000
@@ -259,7 +259,10 @@
for (i = 0; i < PNP_MAX_PORT; i++) {
if (pnp_port_valid(dev, i)) {
pnp_printf(buffer,"io");
- pnp_printf(buffer," 0x%lx-0x%lx \n",
+ if (pnp_port_flags(dev, i) & IORESOURCE_DISABLED)
+ pnp_printf(buffer," disabled\n");
+ else
+ pnp_printf(buffer," 0x%lx-0x%lx\n",
pnp_port_start(dev, i),
pnp_port_end(dev, i));
}
@@ -267,7 +270,10 @@
for (i = 0; i < PNP_MAX_MEM; i++) {
if (pnp_mem_valid(dev, i)) {
pnp_printf(buffer,"mem");
- pnp_printf(buffer," 0x%lx-0x%lx \n",
+ if (pnp_mem_flags(dev, i) & IORESOURCE_DISABLED)
+ pnp_printf(buffer," disabled\n");
+ else
+ pnp_printf(buffer," 0x%lx-0x%lx\n",
pnp_mem_start(dev, i),
pnp_mem_end(dev, i));
}
@@ -275,13 +281,21 @@
for (i = 0; i < PNP_MAX_IRQ; i++) {
if (pnp_irq_valid(dev, i)) {
pnp_printf(buffer,"irq");
- pnp_printf(buffer," %ld \n", pnp_irq(dev, i));
+ if (pnp_irq_flags(dev, i) & IORESOURCE_DISABLED)
+ pnp_printf(buffer," disabled\n");
+ else
+ pnp_printf(buffer," %ld\n",
+ pnp_irq(dev, i));
}
}
for (i = 0; i < PNP_MAX_DMA; i++) {
if (pnp_dma_valid(dev, i)) {
pnp_printf(buffer,"dma");
- pnp_printf(buffer," %ld \n", pnp_dma(dev, i));
+ if (pnp_dma_flags(dev, i) & IORESOURCE_DISABLED)
+ pnp_printf(buffer," disabled\n");
+ else
+ pnp_printf(buffer," %ld\n",
+ pnp_dma(dev, i));
}
}
ret = (buffer->curr - buf);
diff -urN a/drivers/pnp/manager.c b/drivers/pnp/manager.c
--- a/drivers/pnp/manager.c 2003-07-03 00:24:32.000000000 +0000
+++ b/drivers/pnp/manager.c 2003-07-02 23:43:10.000000000 +0000
@@ -40,6 +40,9 @@
if (!(dev->res.port_resource[idx].flags & IORESOURCE_AUTO))
return 1;

+ if (!rule->size)
+ return 1; /* skip disabled resource requests */
+
start = &dev->res.port_resource[idx].start;
end = &dev->res.port_resource[idx].end;
flags = &dev->res.port_resource[idx].flags;
@@ -76,6 +79,9 @@
if (!(dev->res.mem_resource[idx].flags & IORESOURCE_AUTO))
return 1;

+ if (!rule->size)
+ return 1; /* skip disabled resource requests */
+
start = &dev->res.mem_resource[idx].start;
end = &dev->res.mem_resource[idx].end;
flags = &dev->res.mem_resource[idx].flags;
@@ -128,6 +134,9 @@
if (!(dev->res.irq_resource[idx].flags & IORESOURCE_AUTO))
return 1;

+ if (!rule->map)
+ return 1; /* skip disabled resource requests */
+
start = &dev->res.irq_resource[idx].start;
end = &dev->res.irq_resource[idx].end;
flags = &dev->res.irq_resource[idx].flags;
@@ -168,6 +177,9 @@
if (!(dev->res.dma_resource[idx].flags & IORESOURCE_AUTO))
return 1;

+ if (!rule->map)
+ return 1; /* skip disabled resource requests */
+
start = &dev->res.dma_resource[idx].start;
end = &dev->res.dma_resource[idx].end;
flags = &dev->res.dma_resource[idx].flags;
diff -urN a/drivers/pnp/resource.c b/drivers/pnp/resource.c
--- a/drivers/pnp/resource.c 2003-07-03 00:24:32.000000000 +0000
+++ b/drivers/pnp/resource.c 2003-07-02 22:31:48.000000000 +0000
@@ -286,6 +286,8 @@
continue;
for (tmp = 0; tmp < PNP_MAX_PORT; tmp++) {
if (tdev->res.port_resource[tmp].flags & IORESOURCE_IO) {
+ if (pnp_port_flags(dev, tmp) & IORESOURCE_DISABLED)
+ continue;
tport = &tdev->res.port_resource[tmp].start;
tend = &tdev->res.port_resource[tmp].end;
if (ranged_conflict(port,end,tport,tend))
@@ -340,6 +342,8 @@
continue;
for (tmp = 0; tmp < PNP_MAX_MEM; tmp++) {
if (tdev->res.mem_resource[tmp].flags & IORESOURCE_MEM) {
+ if (pnp_mem_flags(dev, tmp) & IORESOURCE_DISABLED)
+ continue;
taddr = &tdev->res.mem_resource[tmp].start;
tend = &tdev->res.mem_resource[tmp].end;
if (ranged_conflict(addr,end,taddr,tend))
@@ -409,6 +413,8 @@
continue;
for (tmp = 0; tmp < PNP_MAX_IRQ; tmp++) {
if (tdev->res.irq_resource[tmp].flags & IORESOURCE_IRQ) {
+ if (pnp_irq_flags(dev, tmp) & IORESOURCE_DISABLED)
+ continue;
if ((tdev->res.irq_resource[tmp].start == *irq))
return 0;
}
@@ -462,6 +468,8 @@
continue;
for (tmp = 0; tmp < PNP_MAX_DMA; tmp++) {
if (tdev->res.dma_resource[tmp].flags & IORESOURCE_DMA) {
+ if (pnp_dma_flags(dev, tmp) & IORESOURCE_DISABLED)
+ continue;
if ((tdev->res.dma_resource[tmp].start == *dma))
return 0;
}
diff -urN a/drivers/pnp/support.c b/drivers/pnp/support.c
--- a/drivers/pnp/support.c 2003-07-03 00:24:32.000000000 +0000
+++ b/drivers/pnp/support.c 2003-07-02 22:31:48.000000000 +0000
@@ -68,9 +68,13 @@
int i = 0;
while ((res->irq_resource[i].flags & IORESOURCE_IRQ) && i < PNP_MAX_IRQ) i++;
if (i < PNP_MAX_IRQ) {
+ res->irq_resource[i].flags = IORESOURCE_IRQ; // Also clears _UNSET flag
+ if (irq == -1) {
+ res->irq_resource[i].flags |= IORESOURCE_DISABLED;
+ return;
+ }
res->irq_resource[i].start =
res->irq_resource[i].end = (unsigned long) irq;
- res->irq_resource[i].flags = IORESOURCE_IRQ; // Also clears _UNSET flag
}
}

@@ -79,9 +83,13 @@
int i = 0;
while ((res->dma_resource[i].flags & IORESOURCE_DMA) && i < PNP_MAX_DMA) i++;
if (i < PNP_MAX_DMA) {
+ res->dma_resource[i].flags = IORESOURCE_DMA; // Also clears _UNSET flag
+ if (dma == -1) {
+ res->dma_resource[i].flags |= IORESOURCE_DISABLED;
+ return;
+ }
res->dma_resource[i].start =
res->dma_resource[i].end = (unsigned long) dma;
- res->dma_resource[i].flags = IORESOURCE_DMA; // Also clears _UNSET flag
}
}

@@ -90,9 +98,13 @@
int i = 0;
while ((res->port_resource[i].flags & IORESOURCE_IO) && i < PNP_MAX_PORT) i++;
if (i < PNP_MAX_PORT) {
+ res->port_resource[i].flags = IORESOURCE_IO; // Also clears _UNSET flag
+ if (len <= 0 || (io + len -1) >= 0x10003) {
+ res->port_resource[i].flags |= IORESOURCE_DISABLED;
+ return;
+ }
res->port_resource[i].start = (unsigned long) io;
res->port_resource[i].end = (unsigned long)(io + len - 1);
- res->port_resource[i].flags = IORESOURCE_IO; // Also clears _UNSET flag
}
}

@@ -101,9 +113,13 @@
int i = 0;
while ((res->mem_resource[i].flags & IORESOURCE_MEM) && i < PNP_MAX_MEM) i++;
if (i < PNP_MAX_MEM) {
+ res->mem_resource[i].flags = IORESOURCE_MEM; // Also clears _UNSET flag
+ if (len <= 0) {
+ res->mem_resource[i].flags |= IORESOURCE_DISABLED;
+ return;
+ }
res->mem_resource[i].start = (unsigned long) mem;
res->mem_resource[i].end = (unsigned long)(mem + len - 1);
- res->mem_resource[i].flags = IORESOURCE_MEM; // Also clears _UNSET flag
}
}

--- a/include/linux/ioport.h 2003-07-02 20:42:17.000000000 +0000
+++ b/include/linux/ioport.h 2003-07-02 22:31:48.000000000 +0000
@@ -43,6 +43,7 @@
#define IORESOURCE_SHADOWABLE 0x00010000
#define IORESOURCE_BUS_HAS_VGA 0x00080000

+#define IORESOURCE_DISABLED 0x10000000
#define IORESOURCE_UNSET 0x20000000
#define IORESOURCE_AUTO 0x40000000
#define IORESOURCE_BUSY 0x80000000 /* Driver has marked this resource busy */
diff -urN a/drivers/pnp/manager.c b/drivers/pnp/manager.c
--- a/drivers/pnp/manager.c 2003-07-03 00:55:25.000000000 +0000
+++ b/drivers/pnp/manager.c 2003-07-03 01:07:17.000000000 +0000
@@ -40,17 +40,20 @@
if (!(dev->res.port_resource[idx].flags & IORESOURCE_AUTO))
return 1;

- if (!rule->size)
- return 1; /* skip disabled resource requests */
-
start = &dev->res.port_resource[idx].start;
end = &dev->res.port_resource[idx].end;
flags = &dev->res.port_resource[idx].flags;

/* set the initial values */
+ *flags = *flags | rule->flags | IORESOURCE_IO;
+
+ if (!rule->size) {
+ *flags |= IORESOURCE_DISABLED;
+ return 1; /* skip disabled resource requests */
+ }
+
*start = rule->min;
*end = *start + rule->size - 1;
- *flags = *flags | rule->flags | IORESOURCE_IO;

/* run through until pnp_check_port is happy */
while (!pnp_check_port(dev, idx)) {
@@ -79,16 +82,11 @@
if (!(dev->res.mem_resource[idx].flags & IORESOURCE_AUTO))
return 1;

- if (!rule->size)
- return 1; /* skip disabled resource requests */
-
start = &dev->res.mem_resource[idx].start;
end = &dev->res.mem_resource[idx].end;
flags = &dev->res.mem_resource[idx].flags;

/* set the initial values */
- *start = rule->min;
- *end = *start + rule->size -1;
*flags = *flags | rule->flags | IORESOURCE_MEM;

/* convert pnp flags to standard Linux flags */
@@ -101,6 +99,14 @@
if (rule->flags & IORESOURCE_MEM_SHADOWABLE)
*flags |= IORESOURCE_SHADOWABLE;

+ if (!rule->size) {
+ *flags |= IORESOURCE_DISABLED;
+ return 1; /* skip disabled resource requests */
+ }
+
+ *start = rule->min;
+ *end = *start + rule->size -1;
+
/* run through until pnp_check_mem is happy */
while (!pnp_check_mem(dev, idx)) {
*start += rule->align;
@@ -134,9 +140,6 @@
if (!(dev->res.irq_resource[idx].flags & IORESOURCE_AUTO))
return 1;

- if (!rule->map)
- return 1; /* skip disabled resource requests */
-
start = &dev->res.irq_resource[idx].start;
end = &dev->res.irq_resource[idx].end;
flags = &dev->res.irq_resource[idx].flags;
@@ -144,6 +147,11 @@
/* set the initial values */
*flags = *flags | rule->flags | IORESOURCE_IRQ;

+ if (!rule->map) {
+ *flags |= IORESOURCE_DISABLED;
+ return 1; /* skip disabled resource requests */
+ }
+
for (i = 0; i < 16; i++) {
if(rule->map & (1<<xtab[i])) {
*start = *end = xtab[i];
@@ -177,9 +185,6 @@
if (!(dev->res.dma_resource[idx].flags & IORESOURCE_AUTO))
return 1;

- if (!rule->map)
- return 1; /* skip disabled resource requests */
-
start = &dev->res.dma_resource[idx].start;
end = &dev->res.dma_resource[idx].end;
flags = &dev->res.dma_resource[idx].flags;
@@ -187,6 +192,11 @@
/* set the initial values */
*flags = *flags | rule->flags | IORESOURCE_DMA;

+ if (!rule->map) {
+ *flags |= IORESOURCE_DISABLED;
+ return 1; /* skip disabled resource requests */
+ }
+
for (i = 0; i < 8; i++) {
if(rule->map & (1<<xtab[i])) {
*start = *end = xtab[i];
--- a/drivers/pnp/manager.c 2003-07-03 15:28:06.000000000 +0000
+++ b/drivers/pnp/manager.c 2003-07-03 15:03:08.000000000 +0000
@@ -400,25 +400,24 @@
dev->res = *res;
if (!(mode & PNP_CONFIG_FORCE)) {
for (i = 0; i < PNP_MAX_PORT; i++) {
- if(pnp_check_port(dev,i))
+ if(!pnp_check_port(dev,i))
goto fail;
}
for (i = 0; i < PNP_MAX_MEM; i++) {
- if(pnp_check_mem(dev,i))
+ if(!pnp_check_mem(dev,i))
goto fail;
}
for (i = 0; i < PNP_MAX_IRQ; i++) {
- if(pnp_check_irq(dev,i))
+ if(!pnp_check_irq(dev,i))
goto fail;
}
for (i = 0; i < PNP_MAX_DMA; i++) {
- if(pnp_check_dma(dev,i))
+ if(!pnp_check_dma(dev,i))
goto fail;
}
}
up(&pnp_res_mutex);

- pnp_auto_config_dev(dev);
kfree(bak);
return 0;

2003-07-04 11:57:16

by Adrian Bunk

[permalink] [raw]
Subject: Re: 2.5.73: ALSA ISA pnp_init_resource_table compile errors

On Thu, Jul 03, 2003 at 07:03:04PM +0000, Adam Belay wrote:
> On Thu, Jul 03, 2003 at 04:53:43AM +0200, Adrian Bunk wrote:
> > I don't know whether it's related, but with 2.5.73 + your patch and
> > 2.5.74 my soundcard stopped working (driver compiled statically into
> > the kernel, no options given).
> >
> > >From dmesg:
> >
> > 2.5.74:
> >
> > <-- snip -->
> >
> > Advanced Linux Sound Architecture DriverVersion 0.9.4 (Mon Jun 09 12:01:18 2003 UTC).
> > specify port
> > pnp: the driver 'ad1816a' has been registered
> > pnp: match found with the PnP device '01:01.00'and the driver 'ad1816a'
> > pnp: match found with the PnP device '01:01.01'and the driver 'ad1816a'
> > ad1816a: AUDIO the requested resources areinvalid, using auto config
> > pnp: Unable to assign resources to device 01:01.00
> > ALSA device list:
> > No soundcards found.
> >
> > <-- snip -->
> >
> >
> > 2.5.72 (soundcard works):
> >
> >
> > <-- snip -->
> >
> > Advanced Linux Sound Architecture DriverVersion 0.9.4 (Mon Jun 09 12:01:18 2003 UTC).
> > specify port
> > pnp: the driver 'ad1816a' has been registered
> > pnp: match found with the PnP device '01:01.00'and the driver 'ad1816a'Jul 3 04:37:42 r063144 kernel: pnp: match found with the PnP device '01:01.01'and the driver 'ad1816a'
> > pnp: res: the device '01:01.00' has been activated.
> > pnp: res: the device '01:01.01' has been activated.
> > ALSA device list:
> > #0: ADI SoundPort AD1816A soundcard, SS at0x530, irq 5, dma 1&3
> >
> > <-- snip -->
>
> Hi,

Hi Adam,

> Some of my recent patches may correct this issue. If not, it may be
> an unresolvable resource conflict. Try catting

the dmesg output looks better, but it still doesn't work:

<-- snip -->

Advanced Linux Sound Architecture Driver Version 0.9.4 (Mon Jun 09 12:01:18 2003 UTC).
request_module: failed /sbin/modprobe -- snd-card-0. error = -16specify port
pnp: the driver 'ad1816a' has been registered
pnp: match found with the PnP device '01:01.00' and the driver 'ad1816a'
pnp: match found with the PnP device '01:01.01' and the driver 'ad1816a'
pnp: Device 01:01.00 activated.
pnp: Device 01:01.01 activated.
ALSA device list:
No soundcards found.

<-- snip -->

This problem is hopefully not unresolvable, the card works fine
with ISAPNP with both kernel 2.4 and kernel 2.5 <= 2.5.72 .

> /sys/bus/pnp1/devices/01:01.00/options and see if any of the needed
> irqs are available, most importantly irq 5.

<-- snip -->

# cat /sys/bus/pnp/devices/01\:01.01/options
Dependent: 01 - Priority preferred
port 0x330-0x330, align 0xf, size 0x2, 16-bit address decoding
irq 2/9 High-Edge
Dependent: 02 - Priority acceptable
port 0x300-0x330, align 0xf, size 0x2, 16-bit address decoding
irq 2/9 High-Edge
Dependent: 03 - Priority functional
port 0x300-0x330, align 0xf, size 0x2, 16-bit address decoding
irq 2/9,10,11,15 High-Edge
# cat /proc/interrupts
CPU0
0: 305721 XT-PIC timer
1: 3302 XT-PIC i8042
2: 0 XT-PIC cascade
8: 4 XT-PIC rtc
10: 2035 XT-PIC eth0
12: 5530 XT-PIC i8042
14: 7828 XT-PIC ide0
15: 25 XT-PIC ide1
NMI: 0
ERR: 0
#

<-- snip -->

> Also the 'resources' file can be used to configure the device.
> try...
> #"clear" > resources
> #"activate" > resources
>
> A printk will display if it was successful.

<-- snip -->

# cat /sys/bus/pnp/devices/01\:01.01/resources
state = active
io 0x330-0x331
irq 9
# echo "clear" > /sys/bus/pnp/devices/01\:01.01/resources
# cat /sys/bus/pnp/devices/01\:01.01/resources
state = active
io 0x330-0x331
irq 9
#

<-- snip -->

> Let me know if this works.

Unfortunately not. :-(

> Thanks,
> Adam
>...

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed

2003-07-16 03:03:59

by Adam Belay

[permalink] [raw]
Subject: Re: 2.5.73: ALSA ISA pnp_init_resource_table compile errors

On Fri, Jul 04, 2003 at 02:11:24PM +0200, Adrian Bunk wrote:
> On Thu, Jul 03, 2003 at 07:03:04PM +0000, Adam Belay wrote:
> > Some of my recent patches may correct this issue. If not, it may be
> > an unresolvable resource conflict. Try catting
>
> the dmesg output looks better, but it still doesn't work:

Hi Adrian,

Sorry for the delayed response.

> Advanced Linux Sound Architecture Driver Version 0.9.4 (Mon Jun 09 12:01:18 2003 UTC).
> request_module: failed /sbin/modprobe -- snd-card-0. error = -16specify port
> pnp: the driver 'ad1816a' has been registered
> pnp: match found with the PnP device '01:01.00' and the driver 'ad1816a'
> pnp: match found with the PnP device '01:01.01' and the driver 'ad1816a'
> pnp: Device 01:01.00 activated.
> pnp: Device 01:01.01 activated.
> ALSA device list:
> No soundcards found.
>
> <-- snip -->
>
> This problem is hopefully not unresolvable, the card works fine
> with ISAPNP with both kernel 2.4 and kernel 2.5 <= 2.5.72 .

Because activation was successful, it looks like its a bug instead of a
conflict.

>
> # cat /sys/bus/pnp/devices/01\:01.01/options

> # cat /sys/bus/pnp/devices/01\:01.01/resources

Could I see the output for 01:01.00/options and 01:01.00/resources also,
perhaps it will provide some insight. I'm guessing the resources may be
incorrect in that node.

Thanks,
Adam

2003-07-16 18:11:41

by Adrian Bunk

[permalink] [raw]
Subject: Re: 2.5.73: ALSA ISA pnp_init_resource_table compile errors

On Tue, Jul 15, 2003 at 10:47:32PM +0000, Adam Belay wrote:
>
> Hi Adrian,

Hi Adam,

> Sorry for the delayed response.

no problem.

> > Advanced Linux Sound Architecture Driver Version 0.9.4 (Mon Jun 09 12:01:18 2003 UTC).
> > request_module: failed /sbin/modprobe -- snd-card-0. error = -16specify port
> > pnp: the driver 'ad1816a' has been registered
> > pnp: match found with the PnP device '01:01.00' and the driver 'ad1816a'
> > pnp: match found with the PnP device '01:01.01' and the driver 'ad1816a'
> > pnp: Device 01:01.00 activated.
> > pnp: Device 01:01.01 activated.
> > ALSA device list:
> > No soundcards found.
> >
> > <-- snip -->
> >
> > This problem is hopefully not unresolvable, the card works fine
> > with ISAPNP with both kernel 2.4 and kernel 2.5 <= 2.5.72 .
>
> Because activation was successful, it looks like its a bug instead of a
> conflict.
>
> >
> > # cat /sys/bus/pnp/devices/01\:01.01/options
>
> > # cat /sys/bus/pnp/devices/01\:01.01/resources
>
> Could I see the output for 01:01.00/options and 01:01.00/resources also,
> perhaps it will provide some insight. I'm guessing the resources may be
> incorrect in that node.

It's below, this using with 2.6.0-test1 (same dmesg output):

<-- snip -->

# cat /sys/bus/pnp/devices/01\:01.01/resources
state = active
io 0x330-0x331
irq 9
# cat /sys/bus/pnp/devices/01\:01.01/options
Dependent: 01 - Priority preferred
port 0x330-0x330, align 0xf, size 0x2, 16-bit address decoding
irq 2/9 High-Edge
Dependent: 02 - Priority acceptable
port 0x300-0x330, align 0xf, size 0x2, 16-bit address decoding
irq 2/9 High-Edge
Dependent: 03 - Priority functional
port 0x300-0x330, align 0xf, size 0x2, 16-bit address decoding
irq 2/9,10,11,15 High-Edge
# cat /sys/bus/pnp/devices/01\:01.00/resources
state = active
io 0x220-0x22f
io 0x388-0x38b
io 0x500-0x50f
irq 5
dma 1
dma disabled
# cat /sys/bus/pnp/devices/01\:01.00/options
Dependent: 01 - Priority preferred
port 0x220-0x220, align 0x1f, size 0x10, 16-bit address decoding
port 0x388-0x388, align 0x7, size 0x4, 16-bit address decoding
port 0x530-0x530, align 0x7, size 0x10, 16-bit address decoding
irq 5 High-Edge
dma 1 8-bit byte-count type-A
dma 3 8-bit byte-count type-A
Dependent: 02 - Priority acceptable
port 0x220-0x240, align 0x1f, size 0x10, 16-bit address decoding
port 0x388-0x388, align 0x7, size 0x4, 16-bit address decoding
port 0x530-0x530, align 0xf, size 0x10, 16-bit address decoding
irq 5,7 High-Edge
dma 0,1,3 8-bit byte-count type-A
dma 0,1,3 8-bit byte-count type-A
Dependent: 03 - Priority functional
port 0x220-0x280, align 0x1f, size 0x10, 16-bit address decoding
port 0x388-0x3b8, align 0x7, size 0x4, 16-bit address decoding
port 0x500-0x560, align 0xf, size 0x10, 16-bit address decoding
irq 5,7,10 High-Edge
dma 0,1,3 8-bit byte-count type-A
dma 0,1,3 8-bit byte-count type-A
Dependent: 04 - Priority functional
port 0x220-0x280, align 0x1f, size 0x10, 16-bit address decoding
port 0x388-0x3b8, align 0x7, size 0x4, 16-bit address decoding
port 0x500-0x620, align 0xf, size 0x10, 16-bit address decoding
irq 5,7,10,11 High-Edge
dma 0,1,3 8-bit byte-count type-A
dma <none> 8-bit byte-count type-A
Dependent: 05 - Priority functional
port 0x220-0x280, align 0x1f, size 0x10, 16-bit address decoding
port 0x388-0x3b8, align 0x7, size 0x4, 16-bit address decoding
port 0x500-0x620, align 0xf, size 0x10, 16-bit address decoding
irq 5,7,2/9,10,11,15 High-Edge
dma 0,1,3 8-bit byte-count type-A
dma <none> 8-bit byte-count type-A
#

<-- snip -->

> Thanks,
> Adam

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed

2003-07-16 23:00:22

by Adam Belay

[permalink] [raw]
Subject: Re: 2.5.73: ALSA ISA pnp_init_resource_table compile errors

On Wed, Jul 16, 2003 at 08:22:52PM +0200, Adrian Bunk wrote:
> On Tue, Jul 15, 2003 at 10:47:32PM +0000, Adam Belay wrote:
> > Could I see the output for 01:01.00/options and 01:01.00/resources also,
> > perhaps it will provide some insight. I'm guessing the resources may be
> > incorrect in that node.
>
> It's below, this using with 2.6.0-test1 (same dmesg output):
>
> <-- snip -->
>
> # cat /sys/bus/pnp/devices/01\:01.01/resources
> state = active
> io 0x330-0x331
> irq 9
> # cat /sys/bus/pnp/devices/01\:01.01/options
> Dependent: 01 - Priority preferred
> port 0x330-0x330, align 0xf, size 0x2, 16-bit address decoding
> irq 2/9 High-Edge
> Dependent: 02 - Priority acceptable
> port 0x300-0x330, align 0xf, size 0x2, 16-bit address decoding
> irq 2/9 High-Edge
> Dependent: 03 - Priority functional
> port 0x300-0x330, align 0xf, size 0x2, 16-bit address decoding
> irq 2/9,10,11,15 High-Edge
> # cat /sys/bus/pnp/devices/01\:01.00/resources
> state = active
> io 0x220-0x22f
> io 0x388-0x38b
> io 0x500-0x50f
> irq 5
> dma 1
> dma disabled
> # cat /sys/bus/pnp/devices/01\:01.00/options
> Dependent: 01 - Priority preferred
> port 0x220-0x220, align 0x1f, size 0x10, 16-bit address decoding
> port 0x388-0x388, align 0x7, size 0x4, 16-bit address decoding
> port 0x530-0x530, align 0x7, size 0x10, 16-bit address decoding
> irq 5 High-Edge
> dma 1 8-bit byte-count type-A
> dma 3 8-bit byte-count type-A
> Dependent: 02 - Priority acceptable
> port 0x220-0x240, align 0x1f, size 0x10, 16-bit address decoding
> port 0x388-0x388, align 0x7, size 0x4, 16-bit address decoding
> port 0x530-0x530, align 0xf, size 0x10, 16-bit address decoding
> irq 5,7 High-Edge
> dma 0,1,3 8-bit byte-count type-A
> dma 0,1,3 8-bit byte-count type-A
> Dependent: 03 - Priority functional
> port 0x220-0x280, align 0x1f, size 0x10, 16-bit address decoding
> port 0x388-0x3b8, align 0x7, size 0x4, 16-bit address decoding
> port 0x500-0x560, align 0xf, size 0x10, 16-bit address decoding
> irq 5,7,10 High-Edge
> dma 0,1,3 8-bit byte-count type-A
> dma 0,1,3 8-bit byte-count type-A
> Dependent: 04 - Priority functional
> port 0x220-0x280, align 0x1f, size 0x10, 16-bit address decoding
> port 0x388-0x3b8, align 0x7, size 0x4, 16-bit address decoding
> port 0x500-0x620, align 0xf, size 0x10, 16-bit address decoding
> irq 5,7,10,11 High-Edge
> dma 0,1,3 8-bit byte-count type-A
> dma <none> 8-bit byte-count type-A
> Dependent: 05 - Priority functional
> port 0x220-0x280, align 0x1f, size 0x10, 16-bit address decoding
> port 0x388-0x3b8, align 0x7, size 0x4, 16-bit address decoding
> port 0x500-0x620, align 0xf, size 0x10, 16-bit address decoding
> irq 5,7,2/9,10,11,15 High-Edge
> dma 0,1,3 8-bit byte-count type-A
> dma <none> 8-bit byte-count type-A
> #
>
> <-- snip -->
>
> > Thanks,
> > Adam
>
> cu
> Adrian
>

Hi Adrian,

Thanks for the information, I think I have a good idea of whats going here.
Notice the disabled dma in node 01:01.00. The alsa code appears to not be
able to handle a disabled dma for this device. The offending code is
probably here:

sound/isa/ad1816a/ad1816a_lib.c - line 609 - function snd_ad1816a_create

if (request_dma(dma2, "AD1816A - 2")) {
snd_ad1816a_free(chip);
return -EBUSY;
}
chip->dma2 = dma2;

The value of disabled dma2 is -1. Therefore the request_dma fails because
of this code:

int request_dma(unsigned int dmanr, const char * device_id)
{
if (dmanr >= MAX_DMA_CHANNELS)
return -EINVAL;

if (xchg(&dma_chan_busy[dmanr].lock, 1) != 0)
return -EBUSY;

dma_chan_busy[dmanr].device_id = device_id;

/* old flag was 0, now contains 1 to indicate busy */
return 0;
} /* request_dma */

Because it is unsigned long it requests dma 0xffff which is greater than
MAX_DMA_CHANNELS and therefore the function returns -EINVAL.

So I'd imagine we could fix the driver to support this... Jaroslav, any
comments? Perhaps we could use pnp_dma_valid? Also it would be nice to
add a printk that will display if snd_ad1816a_create fails.

There is one question unanswered however, why is pnp picking the resource
option 4 or possibly 5 (assigning a blank dma). Its almost as if dma 3 is
in use?

Could I see the following?

1.) the output of /proc/dma
2.) the output of
# cd /sys/bus/pnp/devices
# find */resources | xargs cat | grep dma
3.) the output of
# cd /sys/bus/pnp/devices
# find */resources | xargs cat | grep io

Also there is a kernel parameter to allow dma 0. It is 'allowdma0' and
I predict the extra dma will get the sound card working.

Thanks,
Adam

2003-07-19 21:50:18

by Adrian Bunk

[permalink] [raw]
Subject: Re: 2.5.73: ALSA ISA pnp_init_resource_table compile errors

On Wed, Jul 16, 2003 at 06:43:17PM +0000, Adam Belay wrote:
>
> Hi Adrian,

Hi Adam,

> Thanks for the information, I think I have a good idea of whats going here.
>...

thanks for looking into my problem. :-)

> Could I see the following?
>
> 1.) the output of /proc/dma

# cat /proc/dma
4: cascade
#

> 2.) the output of
> # cd /sys/bus/pnp/devices
> # find */resources | xargs cat | grep dma

/sys/bus/pnp/devices# find */resources | xargs cat | grep dma
dma 4
dma 2
dma 3
dma 1
dma disabled
/sys/bus/pnp/devices#

> 3.) the output of
> # cd /sys/bus/pnp/devices
> # find */resources | xargs cat | grep io

# find */resources | xargs cat | grep io
io 0x20-0x21
io 0xa0-0xa1
io 0x0-0xf
io 0x81-0x83
io 0x87-0x87
io 0x89-0x8b
io 0x8f-0x91
io 0xc0-0xdf
io 0x40-0x43
io 0x70-0x71
io 0x60-0x60
io 0x64-0x64
io 0x61-0x61
io 0xf0-0xff
io 0x4d0-0x4d1
io 0xcf8-0xcff
io 0x480-0x48f
io 0x5000-0x507f
io 0x5080-0x50ff
io 0x208-0x20f
io 0x3f8-0x3ff
io 0x3f2-0x3f5
io 0x378-0x37f
io 0x778-0x77a
io 0x2f8-0x2ff
io 0x220-0x22f
io 0x388-0x38b
io 0x500-0x50f
io 0x330-0x331
/sys/bus/pnp/devices#


> Also there is a kernel parameter to allow dma 0. It is 'allowdma0' and
> I predict the extra dma will get the sound card working.

Yup, it works. :-)))

> Thanks,
> Adam

Thanks
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed

2003-07-20 06:07:07

by Jochen Hein

[permalink] [raw]
Subject: Re: 2.5.73: ALSA ISA pnp_init_resource_table compile errors

Adam Belay <[email protected]> writes:

> Also there is a kernel parameter to allow dma 0. It is 'allowdma0' and
> I predict the extra dma will get the sound card working.

Can you please add some explanation to the kernel documentation, what
this parameter does and why it helps?

kernel-parameters.txt says only:

[...]
allowdma0 [ISAPNP]
[...]

pnp.txt says:

[...]
also there are a series of kernel parameters:
allowdma0
pnp_reserve_irq=irq1[,irq2] ....
pnp_reserve_dma=dma1[,dma2] ....
pnp_reserve_io=io1,size1[,io2,size2] ....
pnp_reserve_mem=mem1,size1[,mem2,size2] ....
[...]

Even if I'd read the files, I'd never guess that I should try that
parameter.

Jochen


--
#include <~/.signature>: permission denied

2003-08-09 20:41:01

by Adrian Bunk

[permalink] [raw]
Subject: Re: 2.5.73: ALSA ISA pnp_init_resource_table compile errors

On Wed, Jul 16, 2003 at 06:43:17PM +0000, Adam Belay wrote:
>...
> Hi Adrian,

Hi Adam,

>...
> Also there is a kernel parameter to allow dma 0. It is 'allowdma0' and
> I predict the extra dma will get the sound card working.

FYI:
I do still need allowdma0 for working sound in 2.6.0-test3.

> Thanks,
> Adam

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed