2003-08-14 16:28:48

by Arkadiusz Miskiewicz

[permalink] [raw]
Subject: finding which pci device works as ide controller for root fs

Hi,

I need /dev/hdX -> pci id mapping for geninitrd script - with modular IDE I
need to load some IDE controller driver from initrd to mount root fs.

Now I'm loading all modules for IDE devices found from:
awk ' { print $2 } ' /proc/bus/pci/devices
+ simple file which maps PCI ID to module name like
808684cb piix

How to find controller which is used for root fs (and do not load other
modules)? I suppose that on 2.4 this is impossible from userspace but on 2.6
maybe sysfs will be useful.

[arekm@mobarm arekm]$ ls -l /sys/block/hda/device
lrwxrwxrwx 1 root root 46 2003-08-14 00:49
/sys/block/hda/device -> ../../devices/pci0000:00/0000:00:11.1/ide0/0.0

Is it possible to get PCI ID from sysfs for specified device?

--
Arkadiusz Mi?kiewicz CS at FoE, Wroclaw University of Technology
[email protected] AM2-6BONE, 1024/3DB19BBD, arekm(at)ircnet, PLD/Linux


2003-08-15 00:22:39

by Greg KH

[permalink] [raw]
Subject: Re: finding which pci device works as ide controller for root fs

On Thu, Aug 14, 2003 at 06:26:30PM +0200, Arkadiusz Miskiewicz wrote:
>
> [arekm@mobarm arekm]$ ls -l /sys/block/hda/device
> lrwxrwxrwx 1 root root 46 2003-08-14 00:49
> /sys/block/hda/device -> ../../devices/pci0000:00/0000:00:11.1/ide0/0.0
>
> Is it possible to get PCI ID from sysfs for specified device?

It's right there in the path to the ide device "0000:00:11.1"


greg k-h

2003-08-15 00:40:23

by Arkadiusz Miskiewicz

[permalink] [raw]
Subject: Re: finding which pci device works as ide controller for root fs

On Friday 15 of August 2003 02:15, Greg KH wrote:
> On Thu, Aug 14, 2003 at 06:26:30PM +0200, Arkadiusz Miskiewicz wrote:
> > [arekm@mobarm arekm]$ ls -l /sys/block/hda/device
> > lrwxrwxrwx 1 root root 46 2003-08-14 00:49
> > /sys/block/hda/device -> ../../devices/pci0000:00/0000:00:11.1/ide0/0.0
> >
> > Is it possible to get PCI ID from sysfs for specified device?
>
> It's right there in the path to the ide device "0000:00:11.1"
How's that related to awk ' { print $2 } ' /proc/bus/pci/devices?

> greg k-h

--
Arkadiusz Mi?kiewicz CS at FoE, Wroclaw University of Technology
[email protected] AM2-6BONE, 1024/3DB19BBD, arekm(at)ircnet, PLD/Linux

2003-08-15 02:48:56

by Charles Lepple

[permalink] [raw]
Subject: Re: finding which pci device works as ide controller for root fs

Arkadiusz Miskiewicz wrote:
> On Friday 15 of August 2003 02:15, Greg KH wrote:
>
>>On Thu, Aug 14, 2003 at 06:26:30PM +0200, Arkadiusz Miskiewicz wrote:
>>
>>>[arekm@mobarm arekm]$ ls -l /sys/block/hda/device
>>>lrwxrwxrwx 1 root root 46 2003-08-14 00:49
>>>/sys/block/hda/device -> ../../devices/pci0000:00/0000:00:11.1/ide0/0.0
>>>
>>>Is it possible to get PCI ID from sysfs for specified device?
>>
>>It's right there in the path to the ide device "0000:00:11.1"
>
> How's that related to awk ' { print $2 } ' /proc/bus/pci/devices?

If you're looking for the vendor and product IDs, they're in
/sys/devices/pci..../..../{vendor,device}

--
Charles Lepple <ghz.cc!clepple>