ioports

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello!

Here is my problem. When initing kernel allocatest ranges for ioports some "random" style.
#cat /proc/pci
  Bus  2, device  13, function  0:
    Class ff00: PCI device 4953:4d50 (rev 1).
      IRQ 5.
      Master Capable.  Latency=64.  Min Gnt=255.
      I/O at 0xda80 [0xdabf].
      I/O at 0xd080 [0xd0ff].
      I/O at 0xd980 [0xd9bf].
      Non-prefetchable 32 bit memory at 0xfeaf8000 [0xfeaf8fff].
      I/O at 0xde20 [0xde3f].
  Bus  2, device  12, function  0:
    Class ff00: PCI device 4953:4d50 (rev 1).
      IRQ 11.
      Master Capable.  Latency=64.  Min Gnt=255.
      I/O at 0xdcc0 [0xdcff].
      I/O at 0xd400 [0xd47f].
      I/O at 0xdb00 [0xdb3f].
      Non-prefetchable 32 bit memory at 0xfeaf9000 [0xfeaf9fff].
      I/O at 0xdec0 [0xdedf].
  Bus  2, device  11, function  0:
    Class ff00: PCI device 4953:4d50 (rev 1).
      IRQ 10.
      Master Capable.  Latency=64.  Min Gnt=255.
      I/O at 0xdd80 [0xddbf].
      I/O at 0xd480 [0xd4ff].
      I/O at 0xdd00 [0xdd3f].
      Non-prefetchable 32 bit memory at 0xfeafa000 [0xfeafafff].
      I/O at 0xdf40 [0xdf5f].
  Bus  2, device  10, function  0:
    Class ff00: PCI device 4953:4d50 (rev 1).
      IRQ 5.
      Master Capable.  Latency=64.  Min Gnt=255.
      I/O at 0xdf00 [0xdf3f].
      I/O at 0xdc00 [0xdc7f].
      I/O at 0xde80 [0xdebf].
      Non-prefetchable 32 bit memory at 0xfeafb000 [0xfeafbfff].
      I/O at 0xdf80 [0xdf9f].

As you can see regions of device hashed. Why? Why they arent one-by-one to make possible
use one base pointer to device and works with ports using single shift? May be I can use some tricks?
Please advice.

--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux