Lenovo IdeaPad 1 11ADA05에서 Ramexal SSD를 찾을 수 없습니다.

Lenovo IdeaPad 1 11ADA05에서 Ramexal SSD를 찾을 수 없습니다.

Lenovo IdeaPad 1 11ADA05에 Linux를 설치하려고 합니다. SD 카드에 설치 프로그램을 준비했습니다. SD 카드로 제대로 부팅되지만 배포판을 설치하려고 하면 SSD를 찾을 수 없습니다. 내 SSD 모델은 eMMC 카드 64GB Ramexal SSD입니다. 저는 Arch, Manjaro, Ubuntu, Mint, Kubuntu 및 GNU Guix를 포함한 여러 가지 배포판을 사용해 보았습니다. 이것이 출력이다fdisk -l

Disk /dev/loop0: 81.81 MiB, 85786624 bytes, 167552 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/loop1: 537.95 MiB, 564084736 bytes, 1101728 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/loop2: 1.31 GiB, 1404850176 bytes, 2743848 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/loop3: 656.67 MiB, 688570368 bytes, 1344864 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/sda: 29.72 GiB, 31914983424 bytes, 62333952 sectors
Disk model: MassStorageClass
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device     Boot   Start     End Sectors  Size Id Type
/dev/sda1  *         64 5496075 5496012  2.6G  0 Empty
/dev/sda2       5496076 5504267    8192    4M ef EFI (FAT-12/16/32)

SSD를 작동시킬 수 있는 방법이 있나요? 아니면 Windows에서 멈춰 있나요?

답변1

최신 Ubuntu Mainline Kernel 5.13을 사용하면 이제 IdeaPad 1 11ADA05에서 mmc 장치를 볼 수 있습니다.

답변2

IOMMU를 비활성화하면 도움이 될 수 있습니다.

출력을 보면 lspciSD/MMC 호스트 컨트롤러에 해당하는 PCI 장치가 없다는 것이 분명합니다. 이는 mmc 드라이버 모듈이 로드되지 않는 이유를 설명합니다(일치하는 장치가 나타날 때 모듈 로드가 트리거됨).

나는 그 특정 기계를 본 적이 없어서 어떤 종류의 MMC 컨트롤러를 사용하는지 잘 모르겠습니다. 그러나 전용 컨트롤러가 없다는 것은 메모리가 CPU에 내장된 컨트롤러에 연결되어 있다는 의미일 가능성이 높습니다.

PCI 장치도 어디에도 표시되지 않는다는 점을 고려하면 얼마 전 커널 메일링 리스트에 언급된 버그 변형의 영향을 받은 것 같습니다.

https://www.lkml.org/lml/2019/9/21/31"IOMMU 및 Ryzen 임베디드 EMMC 컨트롤러"

간단히 말해서, 플랫폼 ACPI 테이블(기계 공급업체에서 제공)의 잘못된 구성으로 인해 IOMMU("AMD-Vi" 또는 "Intel VT-d"로 판매됨)에는 PCI 장치에 대한 올바른 매핑이 없어 이를 숨깁니다. 커널에서.

이런 경우인지 확인하려면 UEFI 설정에서 IOMMU를 비활성화할 수 있는 토글을 찾아보세요. IOMMU를 비활성화하면 장치에서 가상 머신을 실행하고 해당 가상 머신에 하드웨어에 대한 빠른 액세스를 제공하려는 경우가 아니면 IOMMU를 끌 수 있습니다(종종 가상 머신에서 GPU 렌더링 속도를 높이는 데 사용됨).

대체 테스트로 드라이버를 수동으로 로드 modprobe sdhci_acpi하고 로그의 IOMMU에서 오류가 수신되는지 확인할 수 있습니다 dmesg.

ivrs_acpihidIOMMU를 비활성화하면 도움이 되지만 실제로 활성화된 상태를 유지하려면 다음과 같은 해결 방법을 사용해야 합니다.https://www.lkml.org/lkml/2019/10/9/1015:

eMMC 장치용 ACPI HID가 필요한 IVRS 테이블에 뭔가가 누락된 것 같습니다.

커널 매개변수 보기:

ivrs_acpihid    [HW,X86_64]
                         Provide an override to the ACPI-HID:UID<->DEVICE-ID
                         mapping provided in the IVRS ACPI table. For
                         example, to map UART-HID:UID AMD0020:0 to
                         PCI device 00:14.5 write the parameter as:
                                 ivrs_acpihid[00:14.5]=AMD0020:0

관련 정보