Messages in this thread | | | Date | Fri, 20 Aug 2004 14:41:06 -0700 | From | "Randy.Dunlap" <> | Subject | Re: Timer allocates too many ports |
| |
On Fri, 20 Aug 2004 23:25:49 +0200 Pierre Ossman wrote:
| Randy.Dunlap wrote: | | >On Fri, 20 Aug 2004 22:33:19 +0200 Pierre Ossman wrote: | > | >| The timer in linux allocates the io ports 0x40 to 0x5F. This is causing | >| some problems for me since the hardware I'm writing a driver for has its | >| ports at 0x4E and 0x4F. In Windows the ports 0x40 to 0x43 are used for | >| the timer. Why does linux allocate so many more ports? | > | >Seems reasonable to me for Linux timer driver (resource) to allocate | >0x40 - 0x43 and 0x50 - 0x53 (on intel x86; only 0x40 - 0x43 for AMD x86-64). | >At least that's what is in some Intel specs. That would be accurate | >AFAIK and still leave 0x4e - 0x4f available. | > | > | Unfortunately the driver allocates 0x40-0x5f as can be seen in | /proc/ioports: | 0040-005f : timer
Yes, I know, I wasn't questioning that.
| I do not know which file contains this allocation so I haven't been able | to change it. Any ideas?
Sure, arch/i386/kernel/setup.c, near line 221 (in 2.6.8.1):
.name = "timer", .start = 0x0040, .end = 0x005f, .flags = IORESOURCE_BUSY | IORESOURCE_IO
Just split that into 2 entries in the standard_io_resources[] array and it's done.
| >What kind of device uses IO addresses 0x4e - 0x4f? | >Is it a motherboard device? Intel ICH specs think that 0x4e - 0x4f | >are for LPC SIO and are forwarded to the LPC device. | > | > | The device is a SD/MMC card reader which is indeed an LPC device. The | ports in question are needed to identify the chip and determine which | resources it has. Actual usage is done on higher ports.
-- ~Randy - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |