OSDev.org

The Place to Start for Operating System Developers
It is currently Thu Mar 28, 2024 8:30 am

All times are UTC - 6 hours




Post new topic Reply to topic  [ 5 posts ] 
Author Message
 Post subject: Enumerating PCI, can't find SATA or IDE controllers
PostPosted: Mon Oct 23, 2017 4:31 am 
Offline

Joined: Mon Sep 21, 2015 2:37 am
Posts: 4
I've lost count of how many hours I've spent on this issue. I'm enumerating the PCI bus, I get valid devices, but no SATA or IDE controllers. I'm using virtualbox and have controllers and drives attached. If there's any relevant information that I havn't included please let me know.

Thanks,
Aaron

PCI driver
https://gist.github.com/aaronhance/2ce2 ... ddfbf4aff9

Image


Top
 Profile  
 
 Post subject: Re: Enumerating PCI, can't find SATA or IDE controllers
PostPosted: Mon Oct 23, 2017 5:34 am 
Offline
Member
Member

Joined: Wed Oct 26, 2011 12:00 pm
Posts: 202
ISA devices don't always appear on the PCI bus. You can sometimes detect if the PCI bus has a ISA bus bridge and then enumerate the ISA bus bridge, OR you can use ACPI to find which ISA devices are present in the system. For the IDE controller maybe just manually probe for it if you only need to enumerate the IDE controller.

_________________
mollenos | gracht (protocol library) | vioarr (window-manager) | bake (package manager)


Top
 Profile  
 
 Post subject: Re: Enumerating PCI, can't find SATA or IDE controllers
PostPosted: Mon Oct 23, 2017 5:45 am 
Offline
Member
Member

Joined: Tue May 13, 2014 3:02 am
Posts: 280
Location: Private, UK
The second device on your list appears to be an Intel (8086) 82371 (7000), which is an IDE controller (among other things). You appear only to be enumerating the first function of each device.

_________________
Image


Top
 Profile  
 
 Post subject: Re: Enumerating PCI, can't find SATA or IDE controllers
PostPosted: Mon Oct 23, 2017 5:51 am 
Offline
Member
Member

Joined: Wed Oct 26, 2011 12:00 pm
Posts: 202
mallard wrote:
The second device on your list appears to be an Intel (8086) 82371 (7000), which is an IDE controller (among other things). You appear only to be enumerating the first function of each device.

Good point :wink:

_________________
mollenos | gracht (protocol library) | vioarr (window-manager) | bake (package manager)


Top
 Profile  
 
 Post subject: Re: Enumerating PCI, can't find SATA or IDE controllers
PostPosted: Mon Oct 23, 2017 5:55 am 
Offline

Joined: Mon Sep 21, 2015 2:37 am
Posts: 4
mallard wrote:
The second device on your list appears to be an Intel (8086) 82371 (7000), which is an IDE controller (among other things). You appear only to be enumerating the first function of each device.


Thanks for the help! :)

Image


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 5 posts ] 

All times are UTC - 6 hours


Who is online

Users browsing this forum: Bing [Bot], SemrushBot [Bot] and 67 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group