Чтобы узнать, сможете ли вы заставить BIOS распознавать ваш M.2. диск, вы можете попробовать:
(примечание: я не могу опубликовать более 8 ссылок в настоящее время, но вы можете увидеть все скриншоты в этом комментарии: https://gist.github.com/constantoverride/78f78da30f42ebc9a187252a1bfae127#gistcomment-2702017 )
* на странице под Advanced\Onboard Devices Configuration
, можно поиграться с настройками: Hyper M.2X16
, M.2_1 Configuration
, M.2_2 PCIe Bandwidth Configuration: [X2][X4]
.
* Попробуйте поиграться с настройками PCIe Speed
на странице Advanced\PCH Configuration\PCI Express Configuration
.
* Попробуйте отключить (или включить? Нет, возможно, не включить!) Aggressive LPM Support
Со страницы Advanced\PCH Storage Configuration
.
* попробуйте обновить BIOS (скриншоты говорят, что это версия 0616, самая новая версия 1002) - будьте осторожны, потому что после обновления все ваши настройки BIOS (даже те, которые сохранены в профилях, но не те, которые сохранены в виде файлов на каком-либо USB-накопителе, очевидно) будут потеряны и будут установлены по умолчанию в BIOS.
Другие вещи, которые вы можете попробовать временно :
* Убедитесь, что ErP Ready
есть Disabled
. Когда это так Enabled
, он устанавливает / включает другие настройки (по Advanced\Platform Misc Configuration
крайней мере, на странице (см. Следующий снимок экрана)), которые для меня приводили к тому, что моя клавиатура / мышь USB не распознавалась в Linux (или memtest86; например, в любой загруженной ОС) из-за чего-то войдя в режим пониженного энергопотребления (или что-то подобное), в действительности их увидит только BIOS.
* Убедитесь, что все на этой странице ( Advanced\Platform Misc Configuration
) отключены, просто чтобы убедиться, что ваш M.2. накопитель каким-то образом не вошел в какое-то состояние, которое фактически переведено в спящий режим (хотя это никогда не должно происходить в BIOS / GUI).
* Вы можете установить POST Report
на Until Press ESC
(это на Advanced подBoot\Boot Configuration
) так, чтобы вы могли видеть, что POST Screen говорит, что обнаружил, он обычно говорил что-то о дисках.
* Fast Boot
Настройка, вероятно, не влияет на это, просто подумал, что я все равно подниму это.
* Может быть, вы могли бы проверить экран, под Advanced\PCH Storage Configuration
которым могут быть устройства SATA Disabled
, просто чтобы увидеть, есть ли M.2. устройства, которые могут / есть Disabled
.
* Проверьте, Advanced\HDD/SSD SMART Information
можете ли вы выбрать свой привод M.2 из Device
списка. Это помогает увидеть, может ли BIOS это увидеть.
* Может быть, вы могли бы возиться с DMI Max Link Speed
настройками, которые на странице Advanced\System Agent (SA) Configuration\DMI/OPI Configuration
. В настоящее время я не знаю, что это за настройка и может ли она повлиять на что-либо, связанное с M.2.
* Вы уже пытались отключить CSM (модуль поддержки совместимости) и не помогли (согласно комментариям к вашему вопросу)
Может быть применимо следующее, но я считаю, что сначала его нужно распознать в BIOS: (хотя Linux может все же обнаружить его, даже если BIOS его не обнаруживает, или, может быть, только если BIOS отключил его, я неуверен)
Существует коммита ядра Linux ( 467c77d4cbefaaf65e2f44fe102d543a52fcae5b ), созданная и зафиксированная 11 марта 2018 года, которая гласит:
nvme-pci: отключить APST для Samsung NVMe SSD 960 EVO + ASUS PRIME Z370-A
Еще одна «несовместимая» комбинация материнских плат Samsung NVMe SSD 960 EVO и Asus. Устройство 960 EVO исчезает с шины PCIe через несколько минут после загрузки, когда используется APST, и никогда не возвращается. Принудительное использование NVME_QUIRK_NO_APST - единственный способ заставить этот диск работать с этой конкретной материнской платой. NVME_QUIRK_NO_DEEPEST_PS не работает, обновление BIOS материнской платы тоже не помогло. Так как это материнская плата для настольных ПК, единственным недостатком неиспользования APST является повышенная температура устройства.
Так что я предполагаю, что то же самое происходит с вашим диском Samsung SSD 970 EVO NVMe M.2 250GB
.
Если вам хочется перекомпилировать ядро Linux:
вы можете попробовать загрузить любую из следующих версий ядер (которые должны содержать этот коммит):
v4.19-rc2 v4.19-rc1 v4.18 v4.18-rc8 v4.18-rc7 v4 .18-rc6 v4.18-rc5 v4.18-rc4 v4.18-rc3 v4.18-rc2 v4.18-rc1 v4.17 v4.17-rc7 v4.17-rc6 v4.17-rc5 v4.17 -rc4 v4.17-rc3 v4.17-rc2 v4.17-rc1 И, вероятно, также любые версии, не относящиеся к rc, так что: 4.17, 4.18 и еще не выпущенные 4.19 (поэтому из этого доступны только -rc2 и -rc1 один).
Затем посмотрите, lspci -nn
показывает ли ваше устройство M.2 по имени, за которым следуют два шестнадцатеричных числа [vendor:device]
(должны начинаться с [144d:XXXX]
), а затем проверьте, отличаются ли эти числа в конце строки от[144d:a804]
(это 960 EVO SSD, который они упоминают в коммите), это, вероятно, означает, что вышеупомянутый коммит / патч не будет действовать для вашего диска, но если вы можете перекомпилировать ядро, вы можете добавить номера вашего устройства [vendor:device]
в этот if
блок, а затем посмотреть, если драйв работает; если это произойдет, то, возможно, также сообщит об этом ядру bugzilla, чтобы они тоже могли добавить его в этот if
блок.