View previous topic :: View next topic |
Author |
Message |
Johnny_Bit Apprentice

Joined: 30 Aug 2005 Posts: 246 Location: Poland
|
Posted: Sat Nov 12, 2022 10:05 pm Post subject: [SOLVED]Dell Inspiron 5770 not seeing NVMe drive |
|
|
Hi,
I wanted to update drive on my dell inspiron 5770 - i've got samsung 980 NVMe m.2 SSD. I cloned old disk to new one using clonezilla, mounted new disk into m.2 slot in the motherboard and tried booting up. That's when things got weird. Bios sees all kernels available as well as windows system. Windows boots nicely without a problem or noticing any change. All my kernels fail to boot with kernel panic - not finding the root.
I wanted to try and rescuse the situation but for some reason Gentoo Minimal install doesn't see the new NVMe drive and only alows me to mount the 2nd ssd drive.
The old original drive (a SanDisk X400) is nicely visible if i mount it and boot minimal install USB (also boots nicely to Linux no prob)
how can I make sure my kernel boots and sees the new drive?
Thanks!
EDIT: it was caused by bios having SATA mode set to RAID instead of AHCI. Old drive was AHCI anyway, new drive is real NVMe, that's why drive in RAID mode wasn't seen by linux.
Last edited by Johnny_Bit on Sun Nov 13, 2022 2:52 pm; edited 1 time in total |
|
Back to top |
|
 |
NeddySeagoon Administrator


Joined: 05 Jul 2003 Posts: 55434 Location: 56N 3W
|
Posted: Sat Nov 12, 2022 10:27 pm Post subject: |
|
|
Johnny_Bit,
I suspect NVME support is missing from your kernels.
Its been in the Gentoo live media for some time.
I have
Code: | # NVME Support
CONFIG_NVME_CORE=y
CONFIG_BLK_DEV_NVME=y
# CONFIG_NVME_MULTIPATH is not set
# CONFIG_NVME_VERBOSE_ERRORS is not set
CONFIG_NVME_HWMON=y
# CONFIG_NVME_FC is not set
# CONFIG_NVME_TCP is not set
# CONFIG_NVME_AUTH is not set
# CONFIG_NVME_TARGET is not set
# end of NVME Support
CONFIG_RTC_NVMEM=y
CONFIG_NVMEM=y
CONFIG_NVMEM_SYSFS=y
# CONFIG_NVMEM_RMEM is not set |
Code: | CONFIG_NVME_HWMON=y | gets you the thermal sensors, if your NVMe has them. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
 |
Johnny_Bit Apprentice

Joined: 30 Aug 2005 Posts: 246 Location: Poland
|
Posted: Sun Nov 13, 2022 11:04 am Post subject: |
|
|
I hooked up my old drive and it booted up no problem. Using usb-nvme (Realtek RTL9210 NVMe) adaptor I hooked up new drive and the system sees it without problem too.
My NVMe-related config is:
Code: |
# NVME Support
CONFIG_NVME_CORE=y
CONFIG_BLK_DEV_NVME=y
# CONFIG_NVME_MULTIPATH is not set
CONFIG_NVME_VERBOSE_ERRORS=y
CONFIG_NVME_HWMON=y
# CONFIG_NVME_FC is not set
# CONFIG_NVME_TCP is not set
# CONFIG_NVME_AUTH is not set
# CONFIG_NVME_TARGET is not set
# end of NVME Support
CONFIG_RTC_NVMEM=y
CONFIG_NVMEM=y
CONFIG_NVMEM_SYSFS=y
# CONFIG_NVMEM_RMEM is not set
|
which is nearly identical to yours except for Code: | CONFIG_NVME_VERBOSE_ERRORS |
Also - I used newest Minimal Install CD to make my USB bootable (2022-11-06) and that too didn't see the new NVMe drive when it was hooked up to the motherboard...
In other parts - i tried GParted Live CD (debian based) and it didn't see the drive either! Clonezilla live did see the drive, however that was through usb adapter.
What more can I check to see why my kernel doesn't see the drive? |
|
Back to top |
|
 |
NeddySeagoon Administrator


Joined: 05 Jul 2003 Posts: 55434 Location: 56N 3W
|
Posted: Sun Nov 13, 2022 11:29 am Post subject: |
|
|
Johnny_Bit,
Please post your
Some Intel systems have an extra driver for the PCIe bus that is used for the NVMe slots. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
 |
Johnny_Bit Apprentice

Joined: 30 Aug 2005 Posts: 246 Location: Poland
|
Posted: Sun Nov 13, 2022 12:32 pm Post subject: |
|
|
Hi,
Old drive booted and connected, new drive connected via USB adaptor:
Code: |
00:00.0 Host bridge [0600]: Intel Corporation Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers [8086:5914] (rev 08)
Subsystem: Dell Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers [1028:0811]
Kernel driver in use: skl_uncore
00:02.0 VGA compatible controller [0300]: Intel Corporation UHD Graphics 620 [8086:5917] (rev 07)
DeviceName: Onboard IGD
Subsystem: Dell UHD Graphics 620 [1028:0811]
Kernel driver in use: i915
Kernel modules: i915
00:04.0 Signal processing controller [1180]: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem [8086:1903] (rev 08)
Subsystem: Dell Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem [1028:0811]
00:14.0 USB controller [0c03]: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller [8086:9d2f] (rev 21)
Subsystem: Dell Sunrise Point-LP USB 3.0 xHCI Controller [1028:0811]
Kernel driver in use: xhci_hcd
00:14.2 Signal processing controller [1180]: Intel Corporation Sunrise Point-LP Thermal subsystem [8086:9d31] (rev 21)
Subsystem: Dell Sunrise Point-LP Thermal subsystem [1028:0811]
Kernel driver in use: intel_pch_thermal
00:15.0 Signal processing controller [1180]: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #0 [8086:9d60] (rev 21)
Subsystem: Dell Sunrise Point-LP Serial IO I2C Controller [1028:0811]
Kernel driver in use: intel-lpss
00:16.0 Communication controller [0780]: Intel Corporation Sunrise Point-LP CSME HECI #1 [8086:9d3a] (rev 21)
Subsystem: Dell Sunrise Point-LP CSME HECI [1028:0811]
00:17.0 RAID bus controller [0104]: Intel Corporation 82801 Mobile SATA Controller [RAID mode] [8086:282a] (rev 21)
Subsystem: Dell 82801 Mobile SATA Controller [RAID mode] [1028:0811]
Kernel driver in use: ahci
00:1c.0 PCI bridge [0604]: Intel Corporation Sunrise Point-LP PCI Express Root Port #1 [8086:9d10] (rev f1)
Subsystem: Dell Sunrise Point-LP PCI Express Root Port [1028:0811]
Kernel driver in use: pcieport
00:1c.4 PCI bridge [0604]: Intel Corporation Sunrise Point-LP PCI Express Root Port #5 [8086:9d14] (rev f1)
Subsystem: Dell Sunrise Point-LP PCI Express Root Port [1028:0811]
Kernel driver in use: pcieport
00:1c.5 PCI bridge [0604]: Intel Corporation Sunrise Point-LP PCI Express Root Port #6 [8086:9d15] (rev f1)
Subsystem: Dell Sunrise Point-LP PCI Express Root Port [1028:0811]
Kernel driver in use: pcieport
00:1f.0 ISA bridge [0601]: Intel Corporation Sunrise Point LPC Controller/eSPI Controller [8086:9d4e] (rev 21)
Subsystem: Dell Sunrise Point LPC Controller/eSPI Controller [1028:0811]
00:1f.2 Memory controller [0580]: Intel Corporation Sunrise Point-LP PMC [8086:9d21] (rev 21)
Subsystem: Dell Sunrise Point-LP PMC [1028:0811]
00:1f.3 Audio device [0403]: Intel Corporation Sunrise Point-LP HD Audio [8086:9d71] (rev 21)
Subsystem: Dell Sunrise Point-LP HD Audio [1028:0811]
Kernel driver in use: snd_hda_intel
00:1f.4 SMBus [0c05]: Intel Corporation Sunrise Point-LP SMBus [8086:9d23] (rev 21)
Subsystem: Dell Sunrise Point-LP SMBus [1028:0811]
Kernel driver in use: i801_smbus
Kernel modules: i2c_i801
01:00.0 Display controller [0380]: Advanced Micro Devices, Inc. [AMD/ATI] Topaz XT [Radeon R7 M260/M265 / M340/M360 / M440/M445 / 530/535 / 620/625 Mobile] [10... (rev c1)
Subsystem: Dell Topaz XT [Radeon R7 M260/M265 / M340/M360 / M440/M445 / 530/535 / 620/625 Mobile] [1028:0811]
Kernel driver in use: amdgpu
Kernel modules: amdgpu
02:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL810xE PCI Express Fast Ethernet controller [10ec:8136] (rev 07)
Subsystem: Dell RTL810xE PCI Express Fast Ethernet controller [1028:0811]
Kernel driver in use: r8169
Kernel modules: r8169
03:00.0 Network controller [0280]: Qualcomm Atheros QCA9377 802.11ac Wireless Network Adapter [168c:0042] (rev 31)
Subsystem: Dell QCA9377 802.11ac Wireless Network Adapter [1028:1810]
Kernel driver in use: ath10k_pci
Kernel modules: ath10k_pci
|
New drive connected to motherboard, old drive disconnected, system booted from Gentoo Minimal Install CD (on USB, minimal CD date 2022-11-06):
Code: |
00:00.0 Host bridge [0600]: Intel Corporation Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers [8086:5914] (rev 08)
Subsystem: Dell Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers [1028:0811]
Kernel driver in use: skl_uncore
00:02.0 VGA compatible controller [0300]: Intel Corporation UHD Graphics 620 [8086:5917] (rev 07)
DeviceName: Onboard IGD
Subsystem: Dell UHD Graphics 620 [1028:0811]
00:04.0 Signal processing controller [1180]: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem [8086:1903] (rev 08)
Subsystem: Dell Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem [1028:0811]
00:14.0 USB controller [0c03]: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller [8086:9d2f] (rev 21)
Subsystem: Dell Sunrise Point-LP USB 3.0 xHCI Controller [1028:0811]
Kernel driver in use: xhci_hcd
Kernel modules: xhci_pci
00:14.2 Signal processing controller [1180]: Intel Corporation Sunrise Point-LP Thermal subsystem [8086:9d31] (rev 21)
Subsystem: Dell Sunrise Point-LP Thermal subsystem [1028:0811]
00:15.0 Signal processing controller [1180]: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #0 [8086:9d60] (rev 21)
Subsystem: Dell Sunrise Point-LP Serial IO I2C Controller [1028:0811]
Kernel driver in use: intel-lpss
Kernel modules: intel_lpss_pci
00:16.0 Communication controller [0780]: Intel Corporation Sunrise Point-LP CSME HECI #1 [8086:9d3a] (rev 21)
Subsystem: Dell Sunrise Point-LP CSME HECI [1028:0811]
00:17.0 RAID bus controller [0104]: Intel Corporation 82801 Mobile SATA Controller [RAID mode] [8086:282a] (rev 21)
Subsystem: Dell 82801 Mobile SATA Controller [RAID mode] [1028:0811]
Kernel driver in use: ahci
Kernel modules: ahci
00:1c.0 PCI bridge [0604]: Intel Corporation Sunrise Point-LP PCI Express Root Port #1 [8086:9d10] (rev f1)
Subsystem: Dell Sunrise Point-LP PCI Express Root Port [1028:0811]
Kernel driver in use: pcieport
00:1c.4 PCI bridge [0604]: Intel Corporation Sunrise Point-LP PCI Express Root Port #5 [8086:9d14] (rev f1)
Subsystem: Dell Sunrise Point-LP PCI Express Root Port [1028:0811]
Kernel driver in use: pcieport
00:1c.5 PCI bridge [0604]: Intel Corporation Sunrise Point-LP PCI Express Root Port #6 [8086:9d15] (rev f1)
Subsystem: Dell Sunrise Point-LP PCI Express Root Port [1028:0811]
Kernel driver in use: pcieport
00:1f.0 ISA bridge [0601]: Intel Corporation Sunrise Point LPC Controller/eSPI Controller [8086:9d4e] (rev 21)
Subsystem: Dell Sunrise Point LPC Controller/eSPI Controller [1028:0811]
00:1f.2 Memory controller [0580]: Intel Corporation Sunrise Point-LP PMC [8086:9d21] (rev 21)
Subsystem: Dell Sunrise Point-LP PMC [1028:0811]
00:1f.3 Audio device [0403]: Intel Corporation Sunrise Point-LP HD Audio [8086:9d71] (rev 21)
Subsystem: Dell Sunrise Point-LP HD Audio [1028:0811]
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
00:1f.4 SMBus [0c05]: Intel Corporation Sunrise Point-LP SMBus [8086:9d23] (rev 21)
Subsystem: Dell Sunrise Point-LP SMBus [1028:0811]
Kernel driver in use: i801_smbus
Kernel modules: i2c_i801
01:00.0 Display controller [0380]: Advanced Micro Devices, Inc. [AMD/ATI] Topaz XT [Radeon R7 M260/M265 / M340/M360 / M440/M445 / 530/535 / 620/625 Mobile] [10... (rev c1)
Subsystem: Dell Topaz XT [Radeon R7 M260/M265 / M340/M360 / M440/M445 / 530/535 / 620/625 Mobile] [1028:0811]
02:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL810xE PCI Express Fast Ethernet controller [10ec:8136] (rev 07)
Subsystem: Dell RTL810xE PCI Express Fast Ethernet controller [1028:0811]
Kernel driver in use: r8169
Kernel modules: r8169
03:00.0 Network controller [0280]: Qualcomm Atheros QCA9377 802.11ac Wireless Network Adapter [168c:0042] (rev 31)
Subsystem: Dell QCA9377 802.11ac Wireless Network Adapter [1028:1810]
Kernel driver in use: ath10k_pci
Kernel modules: ath10k_pci
|
diff lspci_olddrive lspci_newdrive:
Code: |
7,8d6
< Kernel driver in use: i915
< Kernel modules: i915
13a12
> Kernel modules: xhci_pci
16d14
< Kernel driver in use: intel_pch_thermal
19a18
> Kernel modules: intel_lpss_pci
24a24
> Kernel modules: ahci
40a41
> Kernel modules: snd_hda_intel
47,48d47
< Kernel driver in use: amdgpu
< Kernel modules: amdgpu
|
|
|
Back to top |
|
 |
NeddySeagoon Administrator


Joined: 05 Jul 2003 Posts: 55434 Location: 56N 3W
|
Posted: Sun Nov 13, 2022 1:45 pm Post subject: |
|
|
Johnny_Bit,
I was expecting to see a Non-Volatile memory controller listed there. Its not.
NVMe cards come in two flavours. Those with a PCIe interface and those with a SATA interface.
Some cards do both and which one is used depends on the keying in the socket.
It appears that the Dell Inspiron 5770 has two M.2 slots. One for SATA and one for dual lane PCIe3
The slot/device keying won't let you fit a card into a slot where it can't possibly work.
As windows works from the Samsung 980 NVMe, so will linux.
In the Windows control panel, there is a system tab. At least, there used to be.
It will tell the Vendor and Device IDs of the hardware, just as lspci -nnk shows at the end of the first line. e.g. [8086:5914] is your 00:00.0 Host bridge ...
[8086 means Intel.
Windows will show more devices than linux.
I suspect that there will be a whole PCIe bus that Windows sees but Linux does not ... yet.
The PCIe bus number is the first pair of digits in the 00:00.0
That's bus 00.
Some buses can be hidden behind PCIe bridges.
Code: | 00:17.0 RAID bus controller [0104]: Intel Corporation 82801 Mobile SATA Controller [RAID mode] [8086:282a] (rev 21)
Subsystem: Dell 82801 Mobile SATA Controller [RAID mode] [1028:0811]
Kernel driver in use: ahci
Kernel modules: ahci | are you really using raid mode?
Raid requires two or more drives. So setting raid mode be a bad thing.
Be warned that switching to AHCI mode may prevent anything booting, as it can change the data layout on the drives. That's a reinstall to fix or flip Raid mode back on. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
 |
Johnny_Bit Apprentice

Joined: 30 Aug 2005 Posts: 246 Location: Poland
|
Posted: Sun Nov 13, 2022 2:49 pm Post subject: |
|
|
Ni NeddySaegoon,
Indeed the AHCI/RAID was the cause. The system had RAID mode selected initially and due to SanDisk X400 being just a SSD with M+B key it ran in AHCI mode anyway. Samsung SSD 980 is true NVMe so just M.2 M key on it allowed system tu use it in RAID mode which made the device invisible to linux.
Now the drive is visible to linux (AHCI) however windows doesn't like it now ;(
So now all I have left to do is to make windows happy with AHCI or switch between modes depending on which OS i'd like to boot which might be suboptimal...
Thank you very much!
//EDIT
To those of you who need windows to boot like I do try this:
1. Set SATA mode back to RAID
2. Boot into windows
3. Snable safe mode:
Code: |
bcdedit /set {current} safeboot minimal
|
4. reboot
5. Set SATA mode to AHCI
6. Boot windows in safe mode (it should boot)
7. Disable safe mode
Code: |
bcdedit /deletevalue {current} safeboot
|
8. reboot into windows
Now both Linux and windows should enjoy AHCI mode. |
|
Back to top |
|
 |
|