OSDev.org

The Place to Start for Operating System Developers
It is currently Sat Apr 27, 2024 11:22 pm

All times are UTC - 6 hours




Post new topic Reply to topic  [ 4 posts ] 
Author Message
 Post subject: Detecting the PCI controllers on my laptop
PostPosted: Sat Dec 09, 2023 7:39 am 
Offline
Member
Member

Joined: Tue Jul 14, 2020 4:01 am
Posts: 70
My laptop seems to have a funky pci arrangement that I'm not sure on how to detect (host bridge at 0,0,0 and two pci controllers), how can I do it

my lspci output:
Code:
0000:00:00.0 Host bridge: Intel Corporation Device 4621 (rev 02)
0000:00:01.0 PCI bridge: Intel Corporation 12th Gen Core Processor PCI Express x16 Controller #1 (rev 02)
0000:00:02.0 VGA compatible controller: Intel Corporation Alder Lake-P GT2 [Iris Xe Graphics] (rev 0c)
0000:00:04.0 Signal processing controller: Intel Corporation Alder Lake Innovation Platform Framework Processor Participant (rev 02)
0000:00:06.0 System peripheral: Intel Corporation RST VMD Managed Controller
0000:00:07.0 PCI bridge: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port #0 (rev 02)
0000:00:08.0 System peripheral: Intel Corporation 12th Gen Core Processor Gaussian & Neural Accelerator (rev 02)
0000:00:0d.0 USB controller: Intel Corporation Alder Lake-P Thunderbolt 4 USB Controller (rev 02)
0000:00:0d.2 USB controller: Intel Corporation Alder Lake-P Thunderbolt 4 NHI #0 (rev 02)
0000:00:0e.0 RAID bus controller: Intel Corporation Volume Management Device NVMe RAID Controller
0000:00:14.0 USB controller: Intel Corporation Alder Lake PCH USB 3.2 xHCI Host Controller (rev 01)
0000:00:14.2 RAM memory: Intel Corporation Alder Lake PCH Shared SRAM (rev 01)
0000:00:14.3 Network controller: Intel Corporation Alder Lake-P PCH CNVi WiFi (rev 01)
0000:00:15.0 Serial bus controller: Intel Corporation Alder Lake PCH Serial IO I2C Controller #0 (rev 01)
0000:00:15.1 Serial bus controller: Intel Corporation Alder Lake PCH Serial IO I2C Controller #1 (rev 01)
0000:00:16.0 Communication controller: Intel Corporation Alder Lake PCH HECI Controller (rev 01)
0000:00:1d.0 PCI bridge: Intel Corporation Device 51b3 (rev 01)
0000:00:1f.0 ISA bridge: Intel Corporation Alder Lake PCH eSPI Controller (rev 01)
0000:00:1f.3 Multimedia audio controller: Intel Corporation Alder Lake PCH-P High Definition Audio Controller (rev 01)
0000:00:1f.4 SMBus: Intel Corporation Alder Lake PCH-P SMBus Host Controller (rev 01)
0000:00:1f.5 Serial bus controller: Intel Corporation Alder Lake-P PCH SPI Controller (rev 01)
0000:01:00.0 VGA compatible controller: NVIDIA Corporation GA107M [GeForce RTX 3050 Mobile] (rev a1)
0000:01:00.1 Audio device: NVIDIA Corporation Device 2291 (rev a1)
0000:2b:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. Device 2600 (rev 21)
10000:e0:06.0 PCI bridge: Intel Corporation 12th Gen Core Processor PCI Express x4 Controller #0 (rev 02)
10000:e1:00.0 Non-Volatile memory controller: Micron Technology Inc 3400 NVMe SSD [Hendrix]


Top
 Profile  
 
 Post subject: Re: Detecting the PCI controllers on my laptop
PostPosted: Sat Dec 09, 2023 2:38 pm 
Offline
Member
Member

Joined: Sat Feb 04, 2012 5:03 pm
Posts: 111
I think that's a 600 series integrated chipset with CNVi WiFi.


Top
 Profile  
 
 Post subject: Re: Detecting the PCI controllers on my laptop
PostPosted: Sat Dec 09, 2023 4:29 pm 
Offline
Member
Member

Joined: Mon Mar 25, 2013 7:01 pm
Posts: 5146
Code:
0000:00:0e.0 RAID bus controller: Intel Corporation Volume Management Device NVMe RAID Controller

VMD is basically a PCIe bridge.

Code:
10000:e0:06.0 PCI bridge: Intel Corporation 12th Gen Core Processor PCI Express x4 Controller #0 (rev 02)
10000:e1:00.0 Non-Volatile memory controller: Micron Technology Inc 3400 NVMe SSD [Hendrix]

These devices are behind the VMD bridge.

If you disable VMD in the firmware setup, you should be able to enumerate all PCIe devices like normal. If you can't or don't want to do that, you'll need to write a driver for VMD to access devices behind it.


Top
 Profile  
 
 Post subject: Re: Detecting the PCI controllers on my laptop
PostPosted: Sat Dec 09, 2023 6:20 pm 
Offline
Member
Member

Joined: Tue Jul 14, 2020 4:01 am
Posts: 70
Octocontrabass wrote:
Code:
0000:00:0e.0 RAID bus controller: Intel Corporation Volume Management Device NVMe RAID Controller

VMD is basically a PCIe bridge.

Code:
10000:e0:06.0 PCI bridge: Intel Corporation 12th Gen Core Processor PCI Express x4 Controller #0 (rev 02)
10000:e1:00.0 Non-Volatile memory controller: Micron Technology Inc 3400 NVMe SSD [Hendrix]

These devices are behind the VMD bridge.

If you disable VMD in the firmware setup, you should be able to enumerate all PCIe devices like normal. If you can't or don't want to do that, you'll need to write a driver for VMD to access devices behind it.


that was indeed the issue, tysm


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

All times are UTC - 6 hours


Who is online

Users browsing this forum: Bing [Bot] and 11 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