2004-01-04 16:27:04

by Russell King

[permalink] [raw]
Subject: Re: EISA ID for PnP modem and resource allocation

On Mon, Dec 29, 2003 at 10:50:37PM +0000, Adam Belay wrote:
> > ttyS0 at I/O 0x3f8 (irq = 0) is a 16550A
> > ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
> > ttyS2 at I/O 0x3e8 (irq = 4) is a 16550A
> > parport0: irq 7 detected
>
> Hmm, it shouldn't be reporting irq 0. The probbing code may be confused.
> I would guess it is on irq 4.

irq0 on x86 means "I'll use polled mode".

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 PCMCIA - http://pcmcia.arm.linux.org.uk/
2.6 Serial core


2004-01-05 13:22:39

by Amit Gurdasani

[permalink] [raw]
Subject: Re: EISA ID for PnP modem and resource allocation

On Sun, 4 Jan 2004, Russell King wrote:

:On Mon, Dec 29, 2003 at 10:50:37PM +0000, Adam Belay wrote:
:> > ttyS0 at I/O 0x3f8 (irq = 0) is a 16550A
:> > ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
:> > ttyS2 at I/O 0x3e8 (irq = 4) is a 16550A
:> > parport0: irq 7 detected
:>
:> Hmm, it shouldn't be reporting irq 0. The probbing code may be confused.
:> I would guess it is on irq 4.
:
:irq0 on x86 means "I'll use polled mode".

Does this imply a performance reduction whether or not I actually have a
device connected to the port? And would this imply that the serial port
should remain functional despite there being no interrupt line assigned to
it?

What sort of performance degradation (in terms of CPU utilization, latency,
throughput, or otherwise) can I expect from a serial port operating in
polled mode?

Thanks,

Amit

2004-01-27 00:36:53

by Adam Belay

[permalink] [raw]
Subject: Re: EISA ID for PnP modem and resource allocation

On Mon, Jan 05, 2004 at 05:23:27PM +0400, Amit Gurdasani wrote:
> On Sun, 4 Jan 2004, Russell King wrote:
>
> :On Mon, Dec 29, 2003 at 10:50:37PM +0000, Adam Belay wrote:
> :> > ttyS0 at I/O 0x3f8 (irq = 0) is a 16550A
> :> > ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
> :> > ttyS2 at I/O 0x3e8 (irq = 4) is a 16550A
> :> > parport0: irq 7 detected
> :>
> :> Hmm, it shouldn't be reporting irq 0. The probbing code may be confused.
> :> I would guess it is on irq 4.
> :
> :irq0 on x86 means "I'll use polled mode".

It occured to me that we should probably check which resources the pnpbios is
reporting. If you have a chance, could you please show me the output of this
hack.

Thanks,
Adam

--- a/drivers/serial/8250_pnp.c 2004-01-23 15:05:39.000000000 +0000
+++ b/drivers/serial/8250_pnp.c 2004-01-26 19:10:34.000000000 +0000
@@ -32,6 +32,8 @@

#define UNKNOWN_DEV 0x3000

+#define SERIAL_DEBUG_PNP 1
+

static const struct pnp_device_id pnp_dev_table[] = {
/* Archtek America Corp. */
@@ -402,8 +404,8 @@
if (HIGH_BITS_OFFSET)
serial_req.port = pnp_port_start(dev, 0) >> HIGH_BITS_OFFSET;
#ifdef SERIAL_DEBUG_PNP
- printk("Setup PNP port: port %x, irq %d, type %d\n",
- serial_req.port, serial_req.irq, serial_req.io_type);
+ printk("Setup PNP port: port %x, irq %d, type %d, pnp_node %x\n",
+ serial_req.port, serial_req.irq, serial_req.io_type, dev->number);
#endif

serial_req.flags = ASYNC_SKIP_TEST | ASYNC_AUTOPROBE;

2004-01-29 06:55:00

by Amit Gurdasani

[permalink] [raw]
Subject: Re: EISA ID for PnP modem and resource allocation

On Mon, 26 Jan 2004, Adam Belay wrote:

:On Mon, Jan 05, 2004 at 05:23:27PM +0400, Amit Gurdasani wrote:
:> On Sun, 4 Jan 2004, Russell King wrote:
:>
:> :On Mon, Dec 29, 2003 at 10:50:37PM +0000, Adam Belay wrote:
:> :> > ttyS0 at I/O 0x3f8 (irq = 0) is a 16550A
:> :> > ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
:> :> > ttyS2 at I/O 0x3e8 (irq = 4) is a 16550A
:> :> > parport0: irq 7 detected
:> :>
:> :> Hmm, it shouldn't be reporting irq 0. The probbing code may be confused.
:> :> I would guess it is on irq 4.
:> :
:> :irq0 on x86 means "I'll use polled mode".
:
:It occured to me that we should probably check which resources the pnpbios is
:reporting. If you have a chance, could you please show me the output of this
:hack.

Sorry about taking so long to reply.

It doesn't seem that the printk was ever called. Here are dmesg outputs with
and without isapnptools capturing an IRQ for the ISA modem. (I'm using
loadlin from DOS to boot Linux, incidentally. Would that make any
difference?)


Without userspace isapnp, the modem isn't picked up by the serial driver:

Linux version 2.6.1 ([email protected]) (gcc version 3.3.2 20030908 (Debian prerelease)) #2 Thu Jan 29 01:18:51 GST 2004
BIOS-provided physical RAM map:
BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)
BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)
BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
BIOS-e820: 0000000000100000 - 0000000008000000 (usable)
BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved)
128MB LOWMEM available.
On node 0 totalpages: 32768
DMA zone: 4096 pages, LIFO batch:1
Normal zone: 28672 pages, LIFO batch:7
HighMem zone: 0 pages, LIFO batch:1
DMI 2.0 present.
Building zonelist for node : 0
Kernel command line: root=/dev/hdf1 pnp_reserve_irq=5 BOOT_IMAGE=vmlinu~1
No local APIC present or hardware disabled
Initializing CPU#0
PID hash table entries: 1024 (order 10: 8192 bytes)
Detected 398.946 MHz processor.
Using tsc for high-res timesource
Console: colour VGA+ 80x60
Memory: 126888k/131072k available (1352k kernel code, 3628k reserved, 642k data, 132k init, 0k highmem)
Checking if this processor honours the WP bit even in supervisor mode... Ok.
Calibrating delay loop... 788.48 BogoMIPS
Security Scaffold v1.0.0 initialized
SELinux: Initializing.
SELinux: Starting in permissive mode
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
CPU: After generic identify, caps: 008021bf 808029bf 00000000 00000000
CPU: After vendor identify, caps: 008021bf 808029bf 00000000 00000000
Enabling new style K6 write allocation for 128 Mb
CPU: L1 I Cache: 32K (32 bytes/line), D cache 32K (32 bytes/line)
CPU: After all inits, caps: 008021bf 808029bf 00000000 00000002
CPU: AMD-K6(tm) 3D processor stepping 0c
Checking 'hlt' instruction... OK.
POSIX conformance testing by UNIFIX
NET: Registered protocol family 16
PCI: PCI BIOS revision 2.10 entry at 0xfb1a0, last bus=0
mtrr: v2.0 (20020519)
Linux Plug and Play Support v0.97 (c) Adam Belay
pnp: the driver 'system' has been registered
PnPBIOS: Scanning system for PnP BIOS support...
PnPBIOS: Found PnP BIOS installation structure at 0xc00fbd20
PnPBIOS: PnP BIOS version 1.0, entry 0xf0000:0xbd48, dseg 0xf0000
pnp: match found with the PnP device '00:07' and the driver 'system'
pnp: match found with the PnP device '00:0a' and the driver 'system'
pnp: 00:0a: ioport range 0x208-0x20f has been reserved
PnPBIOS: 15 nodes reported by PnP BIOS; 15 recorded by driver
PCI: Probing PCI hardware
PCI: Probing PCI hardware (bus 00)
PCI: Using IRQ router PIIX/ICH [8086/7000] at 0000:00:07.0
apm: BIOS version 1.2 Flags 0x07 (Driver version 1.16ac)
Total HugeTLB memory allocated, 0
VFS: Disk quotas dquot_6.5.1
devfs: v1.22 (20021013) Richard Gooch ([email protected])
devfs: boot_options: 0x1
Initializing Cryptographic API
Limiting direct PCI/PCI transfers.
Activating ISA DMA hang workarounds.
isapnp: Scanning for PnP cards...
isapnp: Card 'ISA PnP K56flex Fax/Modem'
isapnp: 1 Plug & Play card detected total
pty: 2048 Unix98 ptys configured
Software Watchdog Timer: 0.06, soft_margin: 60 sec, nowayout: 0
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
PIIX3: IDE controller at PCI slot 0000:00:07.1
PIIX3: chipset revision 0
PIIX3: not 100% native mode: will probe irqs later
ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:pio, hdb:pio
ide1: BM-DMA at 0xf008-0xf00f, BIOS settings: hdc:pio, hdd:pio
hdc: ATAPI CDROM 48X, ATAPI CD/DVD-ROM drive
hdd: CD-ROM 24X/AKOx, ATAPI CD/DVD-ROM drive
Using anticipatory io scheduler
ide1 at 0x170-0x177,0x376 on irq 15
SiI680: IDE controller at PCI slot 0000:00:13.0
PCI: Found IRQ 9 for device 0000:00:13.0
SiI680: chipset revision 2
SiI680: BASE CLOCK == 133
SiI680: 100% native mode on irq 9
ide2: MMIO-DMA , BIOS settings: hde:pio, hdf:pio
ide3: MMIO-DMA , BIOS settings: hdg:pio, hdh:pio
hde: WDC AC34300L, ATA DISK drive
hdf: MAXTOR 6L080L4, ATA DISK drive
ide2 at 0xc8800080-0xc8800087,0xc880008a on irq 9
pnp: the driver 'ide' has been registered
hde: max request size: 64KiB
hde: 8406720 sectors (4304 MB) w/256KiB Cache, CHS=8896/15/63, UDMA(33)
/dev/ide/host2/bus0/target0/lun0: p1
hdf: max request size: 64KiB
hdf: 156355584 sectors (80054 MB) w/1819KiB Cache, CHS=65535/16/63, UDMA(133)
/dev/ide/host2/bus0/target1/lun0: p1 p2
mice: PS/2 mouse device common for all mice
serio: i8042 AUX port at 0x60,0x64 irq 12
serio: i8042 KBD port at 0x60,0x64 irq 1
input: AT Translated Set 2 keyboard on isa0060/serio0
NET: Registered protocol family 2
IP: routing cache hash table of 1024 buckets, 8Kbytes
TCP: Hash tables configured (established 8192 bind 16384)
NET: Registered protocol family 1
NET: Registered protocol family 17
BIOS EDD facility v0.10 2003-Oct-11, 3 devices found
Please report your BIOS at http://domsch.com/linux/edd30/results.html
kjournald starting. Commit interval 5 seconds
EXT3-fs: mounted filesystem with ordered data mode.
VFS: Mounted root (ext3 filesystem) readonly.
Mounted devfs on /dev
Freeing unused kernel memory: 132k freed
Adding 302392k swap on /dev/hdf2. Priority:-1 extents:1
EXT3 FS on hdf1, internal journal
SCSI subsystem initialized
PCI: Found IRQ 11 for device 0000:00:11.0
warning: process `update' used the obsolete bdflush system call
Fix your initscripts?
i91u: PCI Base=0x6100, IRQ=11, BIOS=0xC8000, SCSI ID=7
i91u: Reset SCSI Bus ...
ERROR: SCSI host `INI9100U' has no error handling
ERROR: This is not a safe way to run your SCSI host
ERROR: The error handling must be added to this driver
Call Trace:
[<c883eede>] scsi_host_alloc+0x67/0x262 [scsi_mod]
[<c0120515>] __request_region+0x61/0x99
[<c883f0e9>] scsi_register+0x10/0x51 [scsi_mod]
[<c884e348>] i91u_detect+0x19e/0x33d [initio]
[<c882a050>] init_this_scsi_driver+0x50/0xe0 [initio]
[<c012eb41>] sys_init_module+0xe3/0x1d1
[<c0109ec7>] syscall_call+0x7/0xb

scsi0 : Initio INI-9X00U/UW SCSI device driver; Revision: 1.03g
Vendor: IBM Model: DDYS-T36950M Rev: SC4D
Type: Direct-Access ANSI SCSI revision: 03
SCSI device sda: 71687340 512-byte hdwr sectors (36704 MB)
SCSI device sda: drive cache: write back
/dev/scsi/host0/bus0/target1/lun0: p1
Attached scsi disk sda at scsi0, channel 0, id 1, lun 0
hdc: ATAPI 24X CD-ROM drive, 128kB Cache, (U)DMA
Uniform CD-ROM driver Revision: 3.12
hdd: ATAPI 24X CD-ROM drive, 120kB Cache, DMA
input: ImExPS/2 Generic Explorer Mouse on isa0060/serio1
8139too Fast Ethernet driver 0.9.26
PCI: Found IRQ 10 for device 0000:00:12.0
eth0: RealTek RTL8139 at 0xc8868000, 00:0a:cd:05:6f:66, IRQ 10
eth0: Identified 8139 chip type 'RTL-8100B/8139D'
Serial: 8250/16550 driver $Revision: 1.90 $ 48 ports, IRQ sharing enabled
ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
ip_tables: (C) 2000-2002 Netfilter core team
ppdev: user-space parallel port driver
Hangcheck: starting hangcheck timer 0.5.0 (tick is 180 seconds, margin is 60 seconds).
inserting floppy driver for 2.6.1
Floppy drive(s): fd0 is 1.44M
FDC 0 is a post-1991 82077
Real Time Clock Driver v1.12
request_module: failed /sbin/modprobe -- nls_utf-8. error = 256
Unable to load NLS charset utf-8
request_module: failed /sbin/modprobe -- nls_utf-8. error = 256
Unable to load NLS charset utf-8
eth0: link down


With userspace isapnp enabling the ISA modem, the first serial port uses
polled mode:

Linux version 2.6.1 ([email protected]) (gcc version 3.3.2 20030908 (Debian prerelease)) #2 Thu Jan 29 01:18:51 GST 2004
BIOS-provided physical RAM map:
BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)
BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)
BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
BIOS-e820: 0000000000100000 - 0000000008000000 (usable)
BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved)
128MB LOWMEM available.
On node 0 totalpages: 32768
DMA zone: 4096 pages, LIFO batch:1
Normal zone: 28672 pages, LIFO batch:7
HighMem zone: 0 pages, LIFO batch:1
DMI 2.0 present.
Building zonelist for node : 0
Kernel command line: root=/dev/hdf1 pnp_reserve_irq=5 BOOT_IMAGE=vmlinu~1
No local APIC present or hardware disabled
Initializing CPU#0
PID hash table entries: 1024 (order 10: 8192 bytes)
Detected 398.978 MHz processor.
Using tsc for high-res timesource
Console: colour VGA+ 80x60
Memory: 126888k/131072k available (1352k kernel code, 3628k reserved, 642k data, 132k init, 0k highmem)
Checking if this processor honours the WP bit even in supervisor mode... Ok.
Calibrating delay loop... 788.48 BogoMIPS
Security Scaffold v1.0.0 initialized
SELinux: Initializing.
SELinux: Starting in permissive mode
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
CPU: After generic identify, caps: 008021bf 808029bf 00000000 00000000
CPU: After vendor identify, caps: 008021bf 808029bf 00000000 00000000
Enabling new style K6 write allocation for 128 Mb
CPU: L1 I Cache: 32K (32 bytes/line), D cache 32K (32 bytes/line)
CPU: After all inits, caps: 008021bf 808029bf 00000000 00000002
CPU: AMD-K6(tm) 3D processor stepping 0c
Checking 'hlt' instruction... OK.
POSIX conformance testing by UNIFIX
NET: Registered protocol family 16
PCI: PCI BIOS revision 2.10 entry at 0xfb1a0, last bus=0
mtrr: v2.0 (20020519)
Linux Plug and Play Support v0.97 (c) Adam Belay
pnp: the driver 'system' has been registered
PnPBIOS: Scanning system for PnP BIOS support...
PnPBIOS: Found PnP BIOS installation structure at 0xc00fbd20
PnPBIOS: PnP BIOS version 1.0, entry 0xf0000:0xbd48, dseg 0xf0000
pnp: match found with the PnP device '00:07' and the driver 'system'
pnp: match found with the PnP device '00:0a' and the driver 'system'
pnp: 00:0a: ioport range 0x208-0x20f has been reserved
PnPBIOS: 15 nodes reported by PnP BIOS; 15 recorded by driver
PCI: Probing PCI hardware
PCI: Probing PCI hardware (bus 00)
PCI: Using IRQ router PIIX/ICH [8086/7000] at 0000:00:07.0
apm: BIOS version 1.2 Flags 0x07 (Driver version 1.16ac)
Total HugeTLB memory allocated, 0
VFS: Disk quotas dquot_6.5.1
devfs: v1.22 (20021013) Richard Gooch ([email protected])
devfs: boot_options: 0x1
Initializing Cryptographic API
Limiting direct PCI/PCI transfers.
Activating ISA DMA hang workarounds.
isapnp: Scanning for PnP cards...
isapnp: Card 'ISA PnP K56flex Fax/Modem'
isapnp: 1 Plug & Play card detected total
pty: 2048 Unix98 ptys configured
Software Watchdog Timer: 0.06, soft_margin: 60 sec, nowayout: 0
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
PIIX3: IDE controller at PCI slot 0000:00:07.1
PIIX3: chipset revision 0
PIIX3: not 100% native mode: will probe irqs later
ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:pio, hdb:pio
ide1: BM-DMA at 0xf008-0xf00f, BIOS settings: hdc:pio, hdd:pio
hdc: ATAPI CDROM 48X, ATAPI CD/DVD-ROM drive
hdd: CD-ROM 24X/AKOx, ATAPI CD/DVD-ROM drive
Using anticipatory io scheduler
ide1 at 0x170-0x177,0x376 on irq 15
SiI680: IDE controller at PCI slot 0000:00:13.0
PCI: Found IRQ 9 for device 0000:00:13.0
SiI680: chipset revision 2
SiI680: BASE CLOCK == 133
SiI680: 100% native mode on irq 9
ide2: MMIO-DMA , BIOS settings: hde:pio, hdf:pio
ide3: MMIO-DMA , BIOS settings: hdg:pio, hdh:pio
hde: WDC AC34300L, ATA DISK drive
hdf: MAXTOR 6L080L4, ATA DISK drive
ide2 at 0xc8800080-0xc8800087,0xc880008a on irq 9
pnp: the driver 'ide' has been registered
hde: max request size: 64KiB
hde: 8406720 sectors (4304 MB) w/256KiB Cache, CHS=8896/15/63, UDMA(33)
/dev/ide/host2/bus0/target0/lun0: p1
hdf: max request size: 64KiB
hdf: 156355584 sectors (80054 MB) w/1819KiB Cache, CHS=65535/16/63, UDMA(133)
/dev/ide/host2/bus0/target1/lun0: p1 p2
mice: PS/2 mouse device common for all mice
serio: i8042 AUX port at 0x60,0x64 irq 12
serio: i8042 KBD port at 0x60,0x64 irq 1
input: AT Translated Set 2 keyboard on isa0060/serio0
NET: Registered protocol family 2
IP: routing cache hash table of 1024 buckets, 8Kbytes
TCP: Hash tables configured (established 8192 bind 16384)
NET: Registered protocol family 1
NET: Registered protocol family 17
BIOS EDD facility v0.10 2003-Oct-11, 2 devices found
Please report your BIOS at http://domsch.com/linux/edd30/results.html
kjournald starting. Commit interval 5 seconds
EXT3-fs: mounted filesystem with ordered data mode.
VFS: Mounted root (ext3 filesystem) readonly.
Mounted devfs on /dev
Freeing unused kernel memory: 132k freed
Adding 302392k swap on /dev/hdf2. Priority:-1 extents:1
EXT3 FS on hdf1, internal journal
SCSI subsystem initialized
PCI: Found IRQ 11 for device 0000:00:11.0
i91u: PCI Base=0x6100, IRQ=11, BIOS=0xC8000, SCSI ID=7
i91u: Reset SCSI Bus ...
warning: process `update' used the obsolete bdflush system call
Fix your initscripts?
ERROR: SCSI host `INI9100U' has no error handling
ERROR: This is not a safe way to run your SCSI host
ERROR: The error handling must be added to this driver
Call Trace:
[<c883eede>] scsi_host_alloc+0x67/0x262 [scsi_mod]
[<c0120515>] __request_region+0x61/0x99
[<c883f0e9>] scsi_register+0x10/0x51 [scsi_mod]
[<c884e348>] i91u_detect+0x19e/0x33d [initio]
[<c882a050>] init_this_scsi_driver+0x50/0xe0 [initio]
[<c012eb41>] sys_init_module+0xe3/0x1d1
[<c0109ec7>] syscall_call+0x7/0xb

scsi0 : Initio INI-9X00U/UW SCSI device driver; Revision: 1.03g
Vendor: IBM Model: DDYS-T36950M Rev: SC4D
Type: Direct-Access ANSI SCSI revision: 03
SCSI device sda: 71687340 512-byte hdwr sectors (36704 MB)
SCSI device sda: drive cache: write back
/dev/scsi/host0/bus0/target1/lun0: p1
Attached scsi disk sda at scsi0, channel 0, id 1, lun 0
hdc: ATAPI 24X CD-ROM drive, 128kB Cache, (U)DMA
Uniform CD-ROM driver Revision: 3.12
hdd: ATAPI 24X CD-ROM drive, 120kB Cache, DMA
input: ImExPS/2 Generic Explorer Mouse on isa0060/serio1
8139too Fast Ethernet driver 0.9.26
PCI: Found IRQ 10 for device 0000:00:12.0
eth0: RealTek RTL8139 at 0xc8868000, 00:0a:cd:05:6f:66, IRQ 10
eth0: Identified 8139 chip type 'RTL-8100B/8139D'
Serial: 8250/16550 driver $Revision: 1.90 $ 48 ports, IRQ sharing enabled
ttyS0 at I/O 0x3f8 (irq = 0) is a 16550A
ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
ttyS2 at I/O 0x3e8 (irq = 4) is a 16550A
ip_tables: (C) 2000-2002 Netfilter core team
ppdev: user-space parallel port driver
Hangcheck: starting hangcheck timer 0.5.0 (tick is 180 seconds, margin is 60 seconds).
inserting floppy driver for 2.6.1
Floppy drive(s): fd0 is 1.44M
FDC 0 is a post-1991 82077
Real Time Clock Driver v1.12
request_module: failed /sbin/modprobe -- nls_utf-8. error = 256
Unable to load NLS charset utf-8
request_module: failed /sbin/modprobe -- nls_utf-8. error = 256
Unable to load NLS charset utf-8
eth0: link down


And for completeness' sake, here's my kernel .config:
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_UID16=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_EXPERIMENTAL=y
CONFIG_STANDALONE=y
CONFIG_BROKEN=y
CONFIG_BROKEN_ON_SMP=y
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_SYSCTL=y
CONFIG_LOG_BUF_SHIFT=14
CONFIG_EMBEDDED=y
CONFIG_KALLSYMS=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_OBSOLETE_MODPARM=y
CONFIG_KMOD=y
CONFIG_X86_PC=y
CONFIG_MK6=y
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_L1_CACHE_SHIFT=5
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_ALIGNMENT_16=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_HPET_TIMER=y
CONFIG_PREEMPT=y
CONFIG_X86_UP_APIC=y
CONFIG_X86_UP_IOAPIC=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_TSC=y
CONFIG_X86_MCE=y
CONFIG_MICROCODE=m
CONFIG_X86_MSR=m
CONFIG_X86_CPUID=m
CONFIG_EDD=y
CONFIG_NOHIGHMEM=y
CONFIG_MTRR=y
CONFIG_HAVE_DEC_LOCK=y
CONFIG_PM=y
CONFIG_SOFTWARE_SUSPEND=y
CONFIG_APM=y
CONFIG_APM_DO_ENABLE=y
CONFIG_APM_CPU_IDLE=y
CONFIG_APM_DISPLAY_BLANK=y
CONFIG_APM_ALLOW_INTS=y
CONFIG_APM_REAL_MODE_POWER_OFF=y
CONFIG_PCI=y
CONFIG_PCI_GOBIOS=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_USE_VECTOR=y
CONFIG_PCI_LEGACY_PROC=y
CONFIG_PCI_NAMES=y
CONFIG_ISA=y
CONFIG_HOTPLUG=y
CONFIG_PCMCIA_PROBE=y
CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_AOUT=m
CONFIG_BINFMT_MISC=m
CONFIG_FW_LOADER=m
CONFIG_PARPORT=m
CONFIG_PARPORT_PC=m
CONFIG_PARPORT_PC_CML1=m
CONFIG_PARPORT_PC_FIFO=y
CONFIG_PARPORT_PC_SUPERIO=y
CONFIG_PARPORT_1284=y
CONFIG_PNP=y
CONFIG_PNP_DEBUG=y
CONFIG_ISAPNP=y
CONFIG_PNPBIOS=y
CONFIG_BLK_DEV_FD=m
CONFIG_BLK_DEV_LOOP=m
CONFIG_BLK_DEV_CRYPTOLOOP=m
CONFIG_BLK_DEV_NBD=m
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_INITRD=y
CONFIG_LBD=y
CONFIG_IDE=y
CONFIG_BLK_DEV_IDE=y
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDEDISK_MULTI_MODE=y
CONFIG_IDEDISK_STROKE=y
CONFIG_BLK_DEV_IDECD=m
CONFIG_BLK_DEV_IDETAPE=m
CONFIG_BLK_DEV_IDEFLOPPY=m
CONFIG_BLK_DEV_IDESCSI=m
CONFIG_IDE_TASK_IOCTL=y
CONFIG_IDE_TASKFILE_IO=y
CONFIG_BLK_DEV_IDEPNP=y
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
CONFIG_BLK_DEV_GENERIC=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
CONFIG_IDEDMA_PCI_AUTO=y
CONFIG_BLK_DEV_ADMA=y
CONFIG_BLK_DEV_CMD64X=y
CONFIG_BLK_DEV_PIIX=y
CONFIG_BLK_DEV_SIIMAGE=y
CONFIG_BLK_DEV_VIA82CXXX=y
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_IDEDMA_AUTO=y
CONFIG_SCSI=m
CONFIG_SCSI_PROC_FS=y
CONFIG_BLK_DEV_SD=m
CONFIG_BLK_DEV_SR=m
CONFIG_BLK_DEV_SR_VENDOR=y
CONFIG_CHR_DEV_SG=m
CONFIG_SCSI_REPORT_LUNS=y
CONFIG_SCSI_BUSLOGIC=m
CONFIG_SCSI_OMIT_FLASHPOINT=y
CONFIG_SCSI_INITIO=m
CONFIG_SCSI_PPA=m
CONFIG_SCSI_IMM=m
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y
CONFIG_NETLINK_DEV=y
CONFIG_UNIX=y
CONFIG_NET_KEY=m
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_FWMARK=y
CONFIG_IP_ROUTE_NAT=y
CONFIG_IP_ROUTE_MULTIPATH=y
CONFIG_IP_ROUTE_TOS=y
CONFIG_IP_ROUTE_VERBOSE=y
CONFIG_NET_IPIP=m
CONFIG_NET_IPGRE=m
CONFIG_NET_IPGRE_BROADCAST=y
CONFIG_IP_MROUTE=y
CONFIG_IP_PIMSM_V1=y
CONFIG_IP_PIMSM_V2=y
CONFIG_SYN_COOKIES=y
CONFIG_BRIDGE=m
CONFIG_NETFILTER=y
CONFIG_BRIDGE_NETFILTER=y
CONFIG_IP_NF_CONNTRACK=m
CONFIG_IP_NF_FTP=m
CONFIG_IP_NF_IRC=m
CONFIG_IP_NF_TFTP=m
CONFIG_IP_NF_AMANDA=m
CONFIG_IP_NF_QUEUE=m
CONFIG_IP_NF_IPTABLES=m
CONFIG_IP_NF_MATCH_LIMIT=m
CONFIG_IP_NF_MATCH_MAC=m
CONFIG_IP_NF_MATCH_PKTTYPE=m
CONFIG_IP_NF_MATCH_MARK=m
CONFIG_IP_NF_MATCH_MULTIPORT=m
CONFIG_IP_NF_MATCH_TOS=m
CONFIG_IP_NF_MATCH_RECENT=m
CONFIG_IP_NF_MATCH_ECN=m
CONFIG_IP_NF_MATCH_DSCP=m
CONFIG_IP_NF_MATCH_AH_ESP=m
CONFIG_IP_NF_MATCH_LENGTH=m
CONFIG_IP_NF_MATCH_TTL=m
CONFIG_IP_NF_MATCH_TCPMSS=m
CONFIG_IP_NF_MATCH_HELPER=m
CONFIG_IP_NF_MATCH_STATE=m
CONFIG_IP_NF_MATCH_CONNTRACK=m
CONFIG_IP_NF_MATCH_OWNER=m
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_TARGET_REJECT=m
CONFIG_IP_NF_NAT=m
CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_IP_NF_TARGET_NETMAP=m
CONFIG_IP_NF_TARGET_SAME=m
CONFIG_IP_NF_NAT_SNMP_BASIC=m
CONFIG_IP_NF_NAT_IRC=m
CONFIG_IP_NF_NAT_FTP=m
CONFIG_IP_NF_NAT_TFTP=m
CONFIG_IP_NF_NAT_AMANDA=m
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_TARGET_TOS=m
CONFIG_IP_NF_TARGET_ECN=m
CONFIG_IP_NF_TARGET_DSCP=m
CONFIG_IP_NF_TARGET_MARK=m
CONFIG_IP_NF_TARGET_LOG=m
CONFIG_IP_NF_TARGET_ULOG=m
CONFIG_IP_NF_TARGET_TCPMSS=m
CONFIG_IP_NF_ARPTABLES=m
CONFIG_IP_NF_ARPFILTER=m
CONFIG_IP_NF_ARP_MANGLE=m
CONFIG_IP_NF_COMPAT_IPCHAINS=m
CONFIG_IP_NF_COMPAT_IPFWADM=m
CONFIG_BRIDGE_NF_EBTABLES=m
CONFIG_BRIDGE_EBT_BROUTE=m
CONFIG_BRIDGE_EBT_T_FILTER=m
CONFIG_BRIDGE_EBT_T_NAT=m
CONFIG_BRIDGE_EBT_802_3=m
CONFIG_BRIDGE_EBT_AMONG=m
CONFIG_BRIDGE_EBT_ARP=m
CONFIG_BRIDGE_EBT_IP=m
CONFIG_BRIDGE_EBT_LIMIT=m
CONFIG_BRIDGE_EBT_MARK=m
CONFIG_BRIDGE_EBT_PKTTYPE=m
CONFIG_BRIDGE_EBT_STP=m
CONFIG_BRIDGE_EBT_VLAN=m
CONFIG_BRIDGE_EBT_ARPREPLY=m
CONFIG_BRIDGE_EBT_DNAT=m
CONFIG_BRIDGE_EBT_MARK_T=m
CONFIG_BRIDGE_EBT_REDIRECT=m
CONFIG_BRIDGE_EBT_SNAT=m
CONFIG_BRIDGE_EBT_LOG=m
CONFIG_XFRM=y
CONFIG_XFRM_USER=m
CONFIG_IPV6_SCTP__=y
CONFIG_VLAN_8021Q=m
CONFIG_LLC=m
CONFIG_LLC2=m
CONFIG_IPX=m
CONFIG_ATALK=m
CONFIG_NET_SCHED=y
CONFIG_NET_SCH_CBQ=m
CONFIG_NET_SCH_HTB=m
CONFIG_NET_SCH_CSZ=m
CONFIG_NET_SCH_PRIO=m
CONFIG_NET_SCH_RED=m
CONFIG_NET_SCH_SFQ=m
CONFIG_NET_SCH_TEQL=m
CONFIG_NET_SCH_TBF=m
CONFIG_NET_SCH_GRED=m
CONFIG_NET_SCH_DSMARK=m
CONFIG_NET_SCH_INGRESS=m
CONFIG_NET_QOS=y
CONFIG_NET_ESTIMATOR=y
CONFIG_NET_CLS=y
CONFIG_NET_CLS_TCINDEX=m
CONFIG_NET_CLS_ROUTE4=m
CONFIG_NET_CLS_ROUTE=y
CONFIG_NET_CLS_FW=m
CONFIG_NET_CLS_U32=m
CONFIG_NET_CLS_RSVP=m
CONFIG_NET_CLS_RSVP6=m
CONFIG_NET_CLS_POLICE=y
CONFIG_NETDEVICES=y
CONFIG_DUMMY=m
CONFIG_BONDING=m
CONFIG_EQUALIZER=m
CONFIG_TUN=m
CONFIG_ETHERTAP=m
CONFIG_NET_ETHERNET=y
CONFIG_MII=m
CONFIG_NET_PCI=y
CONFIG_PCNET32=m
CONFIG_NE2K_PCI=m
CONFIG_8139TOO=m
CONFIG_8139TOO_TUNE_TWISTER=y
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_PLIP=m
CONFIG_PPP=m
CONFIG_PPP_MULTILINK=y
CONFIG_PPP_FILTER=y
CONFIG_PPP_ASYNC=m
CONFIG_PPP_SYNC_TTY=m
CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
CONFIG_SLIP=m
CONFIG_SLIP_COMPRESSED=y
CONFIG_SLIP_SMART=y
CONFIG_SLIP_MODE_SLIP6=y
CONFIG_SHAPER=m
CONFIG_INPUT=y
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
CONFIG_INPUT_EVDEV=m
CONFIG_GAMEPORT=m
CONFIG_SOUND_GAMEPORT=m
CONFIG_GAMEPORT_NS558=m
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
CONFIG_SERIO_SERPORT=m
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=m
CONFIG_MOUSE_SERIAL=m
CONFIG_INPUT_MISC=y
CONFIG_INPUT_PCSPKR=m
CONFIG_INPUT_UINPUT=m
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
CONFIG_SERIAL_8250=m
CONFIG_SERIAL_8250_NR_UARTS=4
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_MANY_PORTS=y
CONFIG_SERIAL_8250_SHARE_IRQ=y
CONFIG_SERIAL_8250_DETECT_IRQ=y
CONFIG_SERIAL_CORE=m
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=2048
CONFIG_PRINTER=m
CONFIG_LP_CONSOLE=y
CONFIG_PPDEV=m
CONFIG_I2C=m
CONFIG_I2C_ALGOBIT=m
CONFIG_I2C_ALGOPCF=m
CONFIG_I2C_ISA=m
CONFIG_I2C_SENSOR=m
CONFIG_SENSORS_EEPROM=m
CONFIG_WATCHDOG=y
CONFIG_SOFT_WATCHDOG=y
CONFIG_NVRAM=m
CONFIG_RTC=m
CONFIG_GEN_RTC=m
CONFIG_GEN_RTC_X=y
CONFIG_RAW_DRIVER=m
CONFIG_MAX_RAW_DEVS=256
CONFIG_HANGCHECK_TIMER=m
CONFIG_VIDEO_DEV=m
CONFIG_VIDEO_BT848=m
CONFIG_VIDEO_TUNER=m
CONFIG_VIDEO_BUF=m
CONFIG_VIDEO_BTCX=m
CONFIG_FB=y
CONFIG_FB_VGA16=m
CONFIG_FB_VESA=y
CONFIG_VIDEO_SELECT=y
CONFIG_VGA_CONSOLE=y
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_PCI_CONSOLE=y
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
CONFIG_LOGO=y
CONFIG_LOGO_LINUX_MONO=y
CONFIG_LOGO_LINUX_VGA16=y
CONFIG_LOGO_LINUX_CLUT224=y
CONFIG_SOUND=m
CONFIG_SND=m
CONFIG_SND_SEQUENCER=m
CONFIG_SND_OSSEMUL=y
CONFIG_SND_MIXER_OSS=m
CONFIG_SND_PCM_OSS=m
CONFIG_SND_SEQUENCER_OSS=y
CONFIG_SND_RTCTIMER=m
CONFIG_SND_DUMMY=m
CONFIG_SND_VIRMIDI=m
CONFIG_SND_SERIAL_U16550=m
CONFIG_SND_MPU401=m
CONFIG_SND_AD1848=m
CONFIG_SND_OPTI92X_AD1848=m
CONFIG_SND_SB16=m
CONFIG_SND_SB16_CSP=y
CONFIG_SOUND_PRIME=m
CONFIG_SOUND_OSS=m
CONFIG_SOUND_TRACEINIT=y
CONFIG_SOUND_DMAP=y
CONFIG_SOUND_VMIDI=m
CONFIG_SOUND_MSS=m
CONFIG_SOUND_MPU401=m
CONFIG_SOUND_MAD16=m
CONFIG_MAD16_OLDCARD=y
CONFIG_SOUND_SB=m
CONFIG_USB=m
CONFIG_USB_DEVICEFS=y
CONFIG_USB_DYNAMIC_MINORS=y
CONFIG_USB_EHCI_HCD=m
CONFIG_USB_UHCI_HCD=m
CONFIG_USB_AUDIO=m
CONFIG_USB_MIDI=m
CONFIG_USB_ACM=m
CONFIG_USB_PRINTER=m
CONFIG_USB_STORAGE=m
CONFIG_USB_HID=m
CONFIG_USB_HIDINPUT=y
CONFIG_HID_FF=y
CONFIG_HID_PID=y
CONFIG_LOGITECH_FF=y
CONFIG_THRUSTMASTER_FF=y
CONFIG_USB_HIDDEV=y
CONFIG_USB_RTL8150=m
CONFIG_USB_USBNET=m
CONFIG_USB_AN2720=y
CONFIG_USB_BELKIN=y
CONFIG_USB_GENESYS=y
CONFIG_USB_NET1080=y
CONFIG_USB_PL2301=y
CONFIG_USB_ARMLINUX=y
CONFIG_USB_EPSON2888=y
CONFIG_USB_ZAURUS=y
CONFIG_USB_CDCETHER=y
CONFIG_USB_AX8817X=y
CONFIG_USB_SERIAL=m
CONFIG_USB_SERIAL_GENERIC=y
CONFIG_USB_SERIAL_VISOR=m
CONFIG_USB_SERIAL_IPAQ=m
CONFIG_USB_SERIAL_IR=m
CONFIG_USB_SERIAL_KLSI=m
CONFIG_USB_SERIAL_SAFE=m
CONFIG_USB_SERIAL_SAFE_PADDED=y
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT2_FS_SECURITY=y
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y
CONFIG_JBD=y
CONFIG_FS_MBCACHE=y
CONFIG_REISERFS_FS=m
CONFIG_REISERFS_PROC_INFO=y
CONFIG_JFS_FS=m
CONFIG_JFS_POSIX_ACL=y
CONFIG_JFS_STATISTICS=y
CONFIG_FS_POSIX_ACL=y
CONFIG_XFS_FS=m
CONFIG_XFS_RT=y
CONFIG_XFS_QUOTA=y
CONFIG_XFS_POSIX_ACL=y
CONFIG_MINIX_FS=m
CONFIG_ROMFS_FS=m
CONFIG_QUOTA=y
CONFIG_QFMT_V1=m
CONFIG_QFMT_V2=m
CONFIG_QUOTACTL=y
CONFIG_AUTOFS4_FS=m
CONFIG_ISO9660_FS=m
CONFIG_JOLIET=y
CONFIG_ZISOFS=y
CONFIG_ZISOFS_FS=m
CONFIG_UDF_FS=m
CONFIG_FAT_FS=y
CONFIG_MSDOS_FS=y
CONFIG_VFAT_FS=m
CONFIG_NTFS_FS=m
CONFIG_NTFS_RW=y
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=y
CONFIG_DEVFS_FS=y
CONFIG_DEVFS_MOUNT=y
CONFIG_DEVPTS_FS=y
CONFIG_DEVPTS_FS_XATTR=y
CONFIG_DEVPTS_FS_SECURITY=y
CONFIG_TMPFS=y
CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y
CONFIG_RAMFS=y
CONFIG_HFS_FS=m
CONFIG_BEFS_FS=m
CONFIG_CRAMFS=m
CONFIG_VXFS_FS=m
CONFIG_QNX4FS_FS=m
CONFIG_QNX4FS_RW=y
CONFIG_UFS_FS=m
CONFIG_UFS_FS_WRITE=y
CONFIG_NFS_FS=m
CONFIG_NFS_V3=y
CONFIG_NFS_V4=y
CONFIG_NFS_DIRECTIO=y
CONFIG_NFSD=m
CONFIG_NFSD_V3=y
CONFIG_NFSD_V4=y
CONFIG_NFSD_TCP=y
CONFIG_LOCKD=m
CONFIG_LOCKD_V4=y
CONFIG_EXPORTFS=m
CONFIG_SUNRPC=m
CONFIG_SUNRPC_GSS=m
CONFIG_RPCSEC_GSS_KRB5=m
CONFIG_SMB_FS=m
CONFIG_SMB_NLS_DEFAULT=y
CONFIG_SMB_NLS_REMOTE="utf-8"
CONFIG_CIFS=m
CONFIG_NCP_FS=m
CONFIG_NCPFS_PACKET_SIGNING=y
CONFIG_NCPFS_IOCTL_LOCKING=y
CONFIG_NCPFS_STRONG=y
CONFIG_NCPFS_NFS_NS=y
CONFIG_NCPFS_OS2_NS=y
CONFIG_NCPFS_SMALLDOS=y
CONFIG_NCPFS_NLS=y
CONFIG_NCPFS_EXTRAS=y
CONFIG_AFS_FS=m
CONFIG_RXRPC=m
CONFIG_PARTITION_ADVANCED=y
CONFIG_MAC_PARTITION=y
CONFIG_MSDOS_PARTITION=y
CONFIG_BSD_DISKLABEL=y
CONFIG_MINIX_SUBPARTITION=y
CONFIG_SOLARIS_X86_PARTITION=y
CONFIG_UNIXWARE_DISKLABEL=y
CONFIG_LDM_PARTITION=y
CONFIG_SUN_PARTITION=y
CONFIG_EFI_PARTITION=y
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="utf-8"
CONFIG_NLS_CODEPAGE_437=m
CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_CODEPAGE_864=m
CONFIG_NLS_ISO8859_8=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_ISO8859_2=m
CONFIG_NLS_ISO8859_3=m
CONFIG_NLS_ISO8859_4=m
CONFIG_NLS_ISO8859_5=m
CONFIG_NLS_ISO8859_6=m
CONFIG_NLS_ISO8859_7=m
CONFIG_NLS_ISO8859_9=m
CONFIG_NLS_ISO8859_13=m
CONFIG_NLS_ISO8859_14=m
CONFIG_NLS_ISO8859_15=m
CONFIG_NLS_UTF8=m
CONFIG_DEBUG_KERNEL=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_X86_EXTRA_IRQS=y
CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y
CONFIG_SECURITY=y
CONFIG_SECURITY_NETWORK=y
CONFIG_SECURITY_CAPABILITIES=m
CONFIG_SECURITY_SELINUX=y
CONFIG_SECURITY_SELINUX_BOOTPARAM=y
CONFIG_SECURITY_SELINUX_DEVELOP=y
CONFIG_CRYPTO=y
CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_NULL=m
CONFIG_CRYPTO_MD4=m
CONFIG_CRYPTO_MD5=m
CONFIG_CRYPTO_SHA1=m
CONFIG_CRYPTO_SHA256=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_DES=m
CONFIG_CRYPTO_BLOWFISH=m
CONFIG_CRYPTO_TWOFISH=m
CONFIG_CRYPTO_SERPENT=m
CONFIG_CRYPTO_AES=m
CONFIG_CRYPTO_CAST5=m
CONFIG_CRYPTO_CAST6=m
CONFIG_CRYPTO_DEFLATE=m
CONFIG_CRC32=y
CONFIG_ZLIB_INFLATE=m
CONFIG_ZLIB_DEFLATE=m
CONFIG_X86_BIOS_REBOOT=y

2004-01-30 05:41:17

by Adam Belay

[permalink] [raw]
Subject: Re: EISA ID for PnP modem and resource allocation

On Thu, Jan 29, 2004 at 10:57:58AM +0400, Amit Gurdasani wrote:
> On Mon, 26 Jan 2004, Adam Belay wrote:
>
> :On Mon, Jan 05, 2004 at 05:23:27PM +0400, Amit Gurdasani wrote:
> :> On Sun, 4 Jan 2004, Russell King wrote:
> :>
> :> :On Mon, Dec 29, 2003 at 10:50:37PM +0000, Adam Belay wrote:
> :> :> > ttyS0 at I/O 0x3f8 (irq = 0) is a 16550A
> :> :> > ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
> :> :> > ttyS2 at I/O 0x3e8 (irq = 4) is a 16550A
> :> :> > parport0: irq 7 detected
> :> :>
> :> :> Hmm, it shouldn't be reporting irq 0. The probbing code may be confused.
> :> :> I would guess it is on irq 4.
> :> :
> :> :irq0 on x86 means "I'll use polled mode".
> :
> :It occured to me that we should probably check which resources the pnpbios is
> :reporting. If you have a chance, could you please show me the output of this
> :hack.
>
> Sorry about taking so long to reply.

Sorry for waiting so long to bring this up.

>
> It doesn't seem that the printk was ever called. Here are dmesg outputs with
> and without isapnptools capturing an IRQ for the ISA modem. (I'm using
> loadlin from DOS to boot Linux, incidentally. Would that make any
> difference?)
>

Hmm, it looks like something strange is going on. Perhaps the serial driver
isn't matching to the device. Could I see the output of the following:

#mkdir /sys
#mount -t sysfs none /sys
#cd /sys/bus/pnp/devices
#find */* | xargs cat <------

Thanks,
Adam

2004-01-30 11:51:55

by Amit Gurdasani

[permalink] [raw]
Subject: Re: EISA ID for PnP modem and resource allocation

:> It doesn't seem that the printk was ever called. Here are dmesg outputs with
:> and without isapnptools capturing an IRQ for the ISA modem. (I'm using
:> loadlin from DOS to boot Linux, incidentally. Would that make any
:> difference?)
:>
:
:Hmm, it looks like something strange is going on. Perhaps the serial driver
:isn't matching to the device.

Well, it's certainly able to identify the device as a serial device. (I've
sent this message using the modem over a regular PPP link . . .)

:Could I see the output of the following:
:
:#mkdir /sys
:#mount -t sysfs none /sys
:#cd /sys/bus/pnp/devices
:#find */* | xargs cat <------


Without isapnptools interfering:

[ amitg @ athena | ~ ] sudo find /sys/bus/pnp/devices -follow -type f -exec sh -c "echo ''; echo {}:; cat {}" \;

/sys/bus/pnp/devices/01:01.00/id:
AEI0250

/sys/bus/pnp/devices/01:01.00/resources:
state = disabled

/sys/bus/pnp/devices/01:01.00/options:
Dependent: 01 - Priority acceptable
port 0x3f8-0x3f8, align 0x7, size 0x8, 16-bit address decoding
irq 4 High-Edge
Dependent: 02 - Priority acceptable
port 0x2f8-0x2f8, align 0x7, size 0x8, 16-bit address decoding
irq 3 High-Edge
Dependent: 03 - Priority acceptable
port 0x3e8-0x3e8, align 0x7, size 0x8, 16-bit address decoding
irq 4 High-Edge
Dependent: 04 - Priority acceptable
port 0x2e8-0x2e8, align 0x7, size 0x8, 16-bit address decoding
irq 3 High-Edge
Dependent: 05 - Priority acceptable
port 0x3e8-0x3e8, align 0x7, size 0x8, 16-bit address decoding
irq 5 High-Edge
Dependent: 06 - Priority acceptable
port 0x2e8-0x2e8, align 0x7, size 0x8, 16-bit address decoding
irq 7 High-Edge
Dependent: 07 - Priority acceptable
port 0x3f8-0x3f8, align 0x7, size 0x8, 16-bit address decoding
irq 5,7,2/9,10,11,12,15 High-Edge
Dependent: 08 - Priority acceptable
port 0x2f8-0x2f8, align 0x7, size 0x8, 16-bit address decoding
irq 5,7,2/9,10,11,12,15 High-Edge
Dependent: 09 - Priority acceptable
port 0x3e8-0x3e8, align 0x7, size 0x8, 16-bit address decoding
irq 7,2/9,10,11,12,15 High-Edge
Dependent: 10 - Priority acceptable
port 0x2e8-0x2e8, align 0x7, size 0x8, 16-bit address decoding
irq 5,2/9,10,11,12,15 High-Edge
Dependent: 11 - Priority acceptable
port 0x100-0xfff8, align 0x7, size 0x8, 16-bit address decoding
irq 3,4,5,7,2/9,10,11,12,15 High-Edge

/sys/bus/pnp/devices/01:01.00/power/state:
0

/sys/bus/pnp/devices/01:01.00/detach_state:
0

/sys/bus/pnp/devices/00:0e/id:
PNP0501

/sys/bus/pnp/devices/00:0e/resources:
state = active
io 0x2f8-0x2ff
irq 3

/sys/bus/pnp/devices/00:0e/options:
irq 3,4,5,7,10,11 High-Edge
Dependent: 01 - Priority acceptable
port 0x3f8-0x3f8, align 0x0, size 0x8, 16-bit address decoding
Dependent: 02 - Priority acceptable
port 0x2f8-0x2f8, align 0x0, size 0x8, 16-bit address decoding
Dependent: 03 - Priority acceptable
port 0x3e8-0x3e8, align 0x0, size 0x8, 16-bit address decoding
Dependent: 04 - Priority acceptable
port 0x2e8-0x2e8, align 0x0, size 0x8, 16-bit address decoding

/sys/bus/pnp/devices/00:0e/power/state:
0

/sys/bus/pnp/devices/00:0e/detach_state:
0

/sys/bus/pnp/devices/00:0d/id:
PNP0401

/sys/bus/pnp/devices/00:0d/resources:
state = active
io 0x378-0x37f
io 0x778-0x77a
irq 7
dma 3

/sys/bus/pnp/devices/00:0d/options:
irq 3,4,5,7,10,11 High-Edge
dma 1,3 8-bit compatible
Dependent: 01 - Priority acceptable
port 0x378-0x378, align 0x0, size 0x8, 16-bit address decoding
port 0x778-0x778, align 0x0, size 0x3, 16-bit address decoding
Dependent: 02 - Priority acceptable
port 0x278-0x278, align 0x0, size 0x8, 16-bit address decoding
port 0x678-0x678, align 0x0, size 0x3, 16-bit address decoding
Dependent: 03 - Priority acceptable
port 0x3bc-0x3bc, align 0x0, size 0x4, 16-bit address decoding
port 0x7bc-0x7bc, align 0x0, size 0x3, 16-bit address decoding

/sys/bus/pnp/devices/00:0d/power/state:
0

/sys/bus/pnp/devices/00:0d/detach_state:
0

/sys/bus/pnp/devices/00:0c/id:
PNP0700

/sys/bus/pnp/devices/00:0c/resources:
state = active
io 0x3f2-0x3f5
irq 6
dma 2

/sys/bus/pnp/devices/00:0c/options:
Dependent: 01 - Priority acceptable
port 0x3f2-0x3f2, align 0x0, size 0x4, 16-bit address decoding
irq 6 High-Edge
dma 2 8-bit compatible

/sys/bus/pnp/devices/00:0c/power/state:
0

/sys/bus/pnp/devices/00:0c/detach_state:
0

/sys/bus/pnp/devices/00:0b/id:
PNP0501

/sys/bus/pnp/devices/00:0b/resources:
state = active
io 0x3f8-0x3ff
irq 4

/sys/bus/pnp/devices/00:0b/options:
irq 3,4,5,7,10,11 High-Edge
Dependent: 01 - Priority acceptable
port 0x3f8-0x3f8, align 0x0, size 0x8, 16-bit address decoding
Dependent: 02 - Priority acceptable
port 0x2f8-0x2f8, align 0x0, size 0x8, 16-bit address decoding
Dependent: 03 - Priority acceptable
port 0x3e8-0x3e8, align 0x0, size 0x8, 16-bit address decoding
Dependent: 04 - Priority acceptable
port 0x2e8-0x2e8, align 0x0, size 0x8, 16-bit address decoding

/sys/bus/pnp/devices/00:0b/power/state:
0

/sys/bus/pnp/devices/00:0b/detach_state:
0

/sys/bus/pnp/devices/00:0a/id:
PNP0c02

/sys/bus/pnp/devices/00:0a/resources:
state = active
io 0x208-0x20f

/sys/bus/pnp/devices/00:0a/options:

/sys/bus/pnp/devices/00:0a/power/state:
0

/sys/bus/pnp/devices/00:0a/detach_state:
0

/sys/bus/pnp/devices/00:09/id:
PNP0f13

/sys/bus/pnp/devices/00:09/resources:
state = active
irq 12

/sys/bus/pnp/devices/00:09/options:
Dependent: 01 - Priority acceptable
irq 12 High-Edge

/sys/bus/pnp/devices/00:09/power/state:
0

/sys/bus/pnp/devices/00:09/detach_state:
0

/sys/bus/pnp/devices/00:08/id:
PNP0a03

/sys/bus/pnp/devices/00:08/resources:
state = active
io 0x4d0-0x4d1
io 0xcf8-0xcff
io 0x480-0x48f
io 0xfff-0xfff

/sys/bus/pnp/devices/00:08/options:

/sys/bus/pnp/devices/00:08/power/state:
0

/sys/bus/pnp/devices/00:08/detach_state:
0

/sys/bus/pnp/devices/00:07/id:
PNP0c01

/sys/bus/pnp/devices/00:07/resources:
state = active
mem 0xe0000-0xfffff
mem 0x0-0x9ffff
mem 0xfffe0000-0xffffffff
mem 0x100000-0x7ffffff

/sys/bus/pnp/devices/00:07/options:

/sys/bus/pnp/devices/00:07/power/state:
0

/sys/bus/pnp/devices/00:07/detach_state:
0

/sys/bus/pnp/devices/00:06/id:
PNP0c04

/sys/bus/pnp/devices/00:06/resources:
state = active
io 0xf0-0xff
irq 13

/sys/bus/pnp/devices/00:06/options:

/sys/bus/pnp/devices/00:06/power/state:
0

/sys/bus/pnp/devices/00:06/detach_state:
0

/sys/bus/pnp/devices/00:05/id:
PNP0800

/sys/bus/pnp/devices/00:05/resources:
state = active
io 0x61-0x61

/sys/bus/pnp/devices/00:05/options:

/sys/bus/pnp/devices/00:05/power/state:
0

/sys/bus/pnp/devices/00:05/detach_state:
0

/sys/bus/pnp/devices/00:04/id:
PNP0303

/sys/bus/pnp/devices/00:04/resources:
state = active
io 0x60-0x60
io 0x64-0x64
irq 1

/sys/bus/pnp/devices/00:04/options:

/sys/bus/pnp/devices/00:04/power/state:
0

/sys/bus/pnp/devices/00:04/detach_state:
0

/sys/bus/pnp/devices/00:03/id:
PNP0b00

/sys/bus/pnp/devices/00:03/resources:
state = active
io 0x70-0x71
irq 8

/sys/bus/pnp/devices/00:03/options:

/sys/bus/pnp/devices/00:03/power/state:
0

/sys/bus/pnp/devices/00:03/detach_state:
0

/sys/bus/pnp/devices/00:02/id:
PNP0100

/sys/bus/pnp/devices/00:02/resources:
state = active
io 0x40-0x43
irq 0

/sys/bus/pnp/devices/00:02/options:

/sys/bus/pnp/devices/00:02/power/state:
0

/sys/bus/pnp/devices/00:02/detach_state:
0

/sys/bus/pnp/devices/00:01/id:
PNP0200

/sys/bus/pnp/devices/00:01/resources:
state = active
io 0x0-0xf
io 0x81-0x83
io 0x87-0x87
io 0x89-0x8b
io 0x8f-0x91
io 0xc0-0xdf
dma 4

/sys/bus/pnp/devices/00:01/options:

/sys/bus/pnp/devices/00:01/power/state:
0

/sys/bus/pnp/devices/00:01/detach_state:
0

/sys/bus/pnp/devices/00:00/id:
PNP0000

/sys/bus/pnp/devices/00:00/resources:
state = active
io 0x20-0x21
io 0xa0-0xa1
irq 2

/sys/bus/pnp/devices/00:00/options:

/sys/bus/pnp/devices/00:00/power/state:
0

/sys/bus/pnp/devices/00:00/detach_state:
0



If I get it to use isapnptools to enable the modem:

[ amitg @ athena | ~ ] sudo find /sys/bus/pnp/devices -follow -type f -exec sh -c "echo ''; echo {}:; cat {}" \;

/sys/bus/pnp/devices/01:01.00/id:
AEI0250

/sys/bus/pnp/devices/01:01.00/resources:
state = disabled

/sys/bus/pnp/devices/01:01.00/options:
Dependent: 01 - Priority acceptable
port 0x3f8-0x3f8, align 0x7, size 0x8, 16-bit address decoding
irq 4 High-Edge
Dependent: 02 - Priority acceptable
port 0x2f8-0x2f8, align 0x7, size 0x8, 16-bit address decoding
irq 3 High-Edge
Dependent: 03 - Priority acceptable
port 0x3e8-0x3e8, align 0x7, size 0x8, 16-bit address decoding
irq 4 High-Edge
Dependent: 04 - Priority acceptable
port 0x2e8-0x2e8, align 0x7, size 0x8, 16-bit address decoding
irq 3 High-Edge
Dependent: 05 - Priority acceptable
port 0x3e8-0x3e8, align 0x7, size 0x8, 16-bit address decoding
irq 5 High-Edge
Dependent: 06 - Priority acceptable
port 0x2e8-0x2e8, align 0x7, size 0x8, 16-bit address decoding
irq 7 High-Edge
Dependent: 07 - Priority acceptable
port 0x3f8-0x3f8, align 0x7, size 0x8, 16-bit address decoding
irq 5,7,2/9,10,11,12,15 High-Edge
Dependent: 08 - Priority acceptable
port 0x2f8-0x2f8, align 0x7, size 0x8, 16-bit address decoding
irq 5,7,2/9,10,11,12,15 High-Edge
Dependent: 09 - Priority acceptable
port 0x3e8-0x3e8, align 0x7, size 0x8, 16-bit address decoding
irq 7,2/9,10,11,12,15 High-Edge
Dependent: 10 - Priority acceptable
port 0x2e8-0x2e8, align 0x7, size 0x8, 16-bit address decoding
irq 5,2/9,10,11,12,15 High-Edge
Dependent: 11 - Priority acceptable
port 0x100-0xfff8, align 0x7, size 0x8, 16-bit address decoding
irq 3,4,5,7,2/9,10,11,12,15 High-Edge

/sys/bus/pnp/devices/01:01.00/power/state:
0

/sys/bus/pnp/devices/01:01.00/detach_state:
0

/sys/bus/pnp/devices/00:0e/id:
PNP0501

/sys/bus/pnp/devices/00:0e/resources:
state = active
io 0x2f8-0x2ff
irq 3

/sys/bus/pnp/devices/00:0e/options:
irq 3,4,5,7,10,11 High-Edge
Dependent: 01 - Priority acceptable
port 0x3f8-0x3f8, align 0x0, size 0x8, 16-bit address decoding
Dependent: 02 - Priority acceptable
port 0x2f8-0x2f8, align 0x0, size 0x8, 16-bit address decoding
Dependent: 03 - Priority acceptable
port 0x3e8-0x3e8, align 0x0, size 0x8, 16-bit address decoding
Dependent: 04 - Priority acceptable
port 0x2e8-0x2e8, align 0x0, size 0x8, 16-bit address decoding

/sys/bus/pnp/devices/00:0e/power/state:
0

/sys/bus/pnp/devices/00:0e/detach_state:
0

/sys/bus/pnp/devices/00:0d/id:
PNP0401

/sys/bus/pnp/devices/00:0d/resources:
state = active
io 0x378-0x37f
io 0x778-0x77a
irq 7
dma 3

/sys/bus/pnp/devices/00:0d/options:
irq 3,4,5,7,10,11 High-Edge
dma 1,3 8-bit compatible
Dependent: 01 - Priority acceptable
port 0x378-0x378, align 0x0, size 0x8, 16-bit address decoding
port 0x778-0x778, align 0x0, size 0x3, 16-bit address decoding
Dependent: 02 - Priority acceptable
port 0x278-0x278, align 0x0, size 0x8, 16-bit address decoding
port 0x678-0x678, align 0x0, size 0x3, 16-bit address decoding
Dependent: 03 - Priority acceptable
port 0x3bc-0x3bc, align 0x0, size 0x4, 16-bit address decoding
port 0x7bc-0x7bc, align 0x0, size 0x3, 16-bit address decoding

/sys/bus/pnp/devices/00:0d/power/state:
0

/sys/bus/pnp/devices/00:0d/detach_state:
0

/sys/bus/pnp/devices/00:0c/id:
PNP0700

/sys/bus/pnp/devices/00:0c/resources:
state = active
io 0x3f2-0x3f5
irq 6
dma 2

/sys/bus/pnp/devices/00:0c/options:
Dependent: 01 - Priority acceptable
port 0x3f2-0x3f2, align 0x0, size 0x4, 16-bit address decoding
irq 6 High-Edge
dma 2 8-bit compatible

/sys/bus/pnp/devices/00:0c/power/state:
0

/sys/bus/pnp/devices/00:0c/detach_state:
0

/sys/bus/pnp/devices/00:0b/id:
PNP0501

/sys/bus/pnp/devices/00:0b/resources:
state = active
io 0x3f8-0x3ff
irq 4

/sys/bus/pnp/devices/00:0b/options:
irq 3,4,5,7,10,11 High-Edge
Dependent: 01 - Priority acceptable
port 0x3f8-0x3f8, align 0x0, size 0x8, 16-bit address decoding
Dependent: 02 - Priority acceptable
port 0x2f8-0x2f8, align 0x0, size 0x8, 16-bit address decoding
Dependent: 03 - Priority acceptable
port 0x3e8-0x3e8, align 0x0, size 0x8, 16-bit address decoding
Dependent: 04 - Priority acceptable
port 0x2e8-0x2e8, align 0x0, size 0x8, 16-bit address decoding

/sys/bus/pnp/devices/00:0b/power/state:
0

/sys/bus/pnp/devices/00:0b/detach_state:
0

/sys/bus/pnp/devices/00:0a/id:
PNP0c02

/sys/bus/pnp/devices/00:0a/resources:
state = active
io 0x208-0x20f

/sys/bus/pnp/devices/00:0a/options:

/sys/bus/pnp/devices/00:0a/power/state:
0

/sys/bus/pnp/devices/00:0a/detach_state:
0

/sys/bus/pnp/devices/00:09/id:
PNP0f13

/sys/bus/pnp/devices/00:09/resources:
state = active
irq 12

/sys/bus/pnp/devices/00:09/options:
Dependent: 01 - Priority acceptable
irq 12 High-Edge

/sys/bus/pnp/devices/00:09/power/state:
0

/sys/bus/pnp/devices/00:09/detach_state:
0

/sys/bus/pnp/devices/00:08/id:
PNP0a03

/sys/bus/pnp/devices/00:08/resources:
state = active
io 0x4d0-0x4d1
io 0xcf8-0xcff
io 0x480-0x48f
io 0xfff-0xfff

/sys/bus/pnp/devices/00:08/options:

/sys/bus/pnp/devices/00:08/power/state:
0

/sys/bus/pnp/devices/00:08/detach_state:
0

/sys/bus/pnp/devices/00:07/id:
PNP0c01

/sys/bus/pnp/devices/00:07/resources:
state = active
mem 0xe0000-0xfffff
mem 0x0-0x9ffff
mem 0xfffe0000-0xffffffff
mem 0x100000-0x7ffffff

/sys/bus/pnp/devices/00:07/options:

/sys/bus/pnp/devices/00:07/power/state:
0

/sys/bus/pnp/devices/00:07/detach_state:
0

/sys/bus/pnp/devices/00:06/id:
PNP0c04

/sys/bus/pnp/devices/00:06/resources:
state = active
io 0xf0-0xff
irq 13

/sys/bus/pnp/devices/00:06/options:

/sys/bus/pnp/devices/00:06/power/state:
0

/sys/bus/pnp/devices/00:06/detach_state:
0

/sys/bus/pnp/devices/00:05/id:
PNP0800

/sys/bus/pnp/devices/00:05/resources:
state = active
io 0x61-0x61

/sys/bus/pnp/devices/00:05/options:

/sys/bus/pnp/devices/00:05/power/state:
0

/sys/bus/pnp/devices/00:05/detach_state:
0

/sys/bus/pnp/devices/00:04/id:
PNP0303

/sys/bus/pnp/devices/00:04/resources:
state = active
io 0x60-0x60
io 0x64-0x64
irq 1

/sys/bus/pnp/devices/00:04/options:

/sys/bus/pnp/devices/00:04/power/state:
0

/sys/bus/pnp/devices/00:04/detach_state:
0

/sys/bus/pnp/devices/00:03/id:
PNP0b00

/sys/bus/pnp/devices/00:03/resources:
state = active
io 0x70-0x71
irq 8

/sys/bus/pnp/devices/00:03/options:

/sys/bus/pnp/devices/00:03/power/state:
0

/sys/bus/pnp/devices/00:03/detach_state:
0

/sys/bus/pnp/devices/00:02/id:
PNP0100

/sys/bus/pnp/devices/00:02/resources:
state = active
io 0x40-0x43
irq 0

/sys/bus/pnp/devices/00:02/options:

/sys/bus/pnp/devices/00:02/power/state:
0

/sys/bus/pnp/devices/00:02/detach_state:
0

/sys/bus/pnp/devices/00:01/id:
PNP0200

/sys/bus/pnp/devices/00:01/resources:
state = active
io 0x0-0xf
io 0x81-0x83
io 0x87-0x87
io 0x89-0x8b
io 0x8f-0x91
io 0xc0-0xdf
dma 4

/sys/bus/pnp/devices/00:01/options:

/sys/bus/pnp/devices/00:01/power/state:
0

/sys/bus/pnp/devices/00:01/detach_state:
0

/sys/bus/pnp/devices/00:00/id:
PNP0000

/sys/bus/pnp/devices/00:00/resources:
state = active
io 0x20-0x21
io 0xa0-0xa1
irq 2

/sys/bus/pnp/devices/00:00/options:

/sys/bus/pnp/devices/00:00/power/state:
0

/sys/bus/pnp/devices/00:00/detach_state:
0



I hope this helps.

Amit