Re: Request for help

From: Andy Pfiffer (andyp@osdl.org)
Date: Mon Jun 02 2003 - 13:48:47 EST


On Mon, 2003-06-02 at 10:49, Eric W. Biederman wrote:
> "ganesh_borse" <ganesh_borse@indiatimes.com> writes:
...
> > I am trying to develop a device drive code for listing the devices connected to
> > a ide controller at the time of kernel booting.
...
> > Is there any way to get which channels on ide controller has got devices and
> > which devices?
>
> Yes. But it is baroque.
>
> > This I am trying to get even before the normal ide device driver
> > has been setup. Are there ide controller commands to get this info?

If you can wait until *after* the system has booted, there are lots of
ways to derive what is out there. Grab the sources for "hdparm" and
have a look at it for examples of hardcore access methods.

A simple way to derive some information can be found by walking the
sysfs hierarchy.

Here's a dirt-simple script I use that somewhat-pretty-prints items
hanging off busses in the sysfs hierarchy. Sysfs must be mounted for
the script to work.

Sample output:
% lsbus
ide:
  pci0/00:1f.1/ide1/1.0 [ IDE Drive ]
  pci0/00:1f.1/ide0/0.1 [ IDE Drive ]
  pci0/00:1f.1/ide0/0.0 [ IDE Drive ]

ide-scsi:

pci:
  pci0/00:1e.0/04:04.0 [ Intel Corp. 82557/8/9 [Ethernet ]
  pci0/00:02.0/02:1f.0/03:00.0 [ Intel Corp. 82806AA PCI64 Hub Ad ]
  pci0/00:02.0/02:1f.0 [ Intel Corp. 82806AA PCI64 Hub PC ]
  pci0/00:01.0/01:00.0 [ Matrox Graphics, Inc MGA G400 AGP ]
  pci0/00:1f.5 [ Intel Corp. 82801BA/BAM AC'97 Au ]
  pci0/00:1f.3 [ Intel Corp. 82801BA/BAM SMBus ]
  pci0/00:1f.2 [ Intel Corp. 82801BA/BAM USB (Hub ]
  pci0/00:1f.1 [ Intel Corp. 82801BA IDE U100 ]
  pci0/00:1f.0 [ Intel Corp. 82801BA ISA Bridge ( ]
  pci0/00:1e.0 [ Intel Corp. 82801BA/CA/DB PCI Br ]
  pci0/00:02.0 [ Intel Corp. 82860 860 (Wombat) C ]
  pci0/00:01.0 [ Intel Corp. 82850 850 (Tehama) C ]
  pci0/00:00.0 [ Intel Corp. 82860 860 (Wombat) C ]

platform:
  legacy/floppy0 [ Floppy Drive ]

pnp:
  pnp0/00:10 [ 16550A-compatible COM port ]
  pnp0/00:0f [ ECP printer port ]
  pnp0/00:0d [ PC standard floppy disk controller ]
  pnp0/00:0c [ 16550A-compatible COM port ]
  pnp0/00:0b [ PS/2 Port for PS/2-style Mice ]
  pnp0/00:0a [ PCI Bus ]
  pnp0/00:09 [ Reserved Motherboard Resources ]
  pnp0/00:08 [ System Board ]
  pnp0/00:07 [ ]
  pnp0/00:06 [ Math Coprocessor ]
  pnp0/00:05 [ AT-style speaker sound ]
  pnp0/00:04 [ IBM Enhanced (101/102-key, PS/2 mouse support) ]
  pnp0/00:03 [ AT Real-Time Clock ]
  pnp0/00:02 [ AT Timer ]
  pnp0/00:01 [ AT DMA Controller ]
  pnp0/00:00 [ AT Interrupt Controller ]

scsi:

system:
  sys/rtc0 [ i8253 Real Time Clock ]
  sys/timer0 [ timer ]
  sys/pic0 [ i8259A PIC ]
  sys/cpu1 [ CPU 1 ]
  sys/cpu0 [ CPU 0 ]

usb:
  pci0/00:1f.2/usb1/1-0:0 [ Hub ]
  pci0/00:1f.2/usb1 [ Intel Corp. 82801BA/BAM USB (Hub (Linux 2.5.70 uh
]
%

The script is attached...



-
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/



This archive was generated by hypermail 2b29 : Sat Jun 07 2003 - 22:00:17 EST