Wednesday, February 01, 2023

Re: MacBook Pro 15,2 (2019) nvme not available during 7.2-current install

On Wed, Feb 01, 2023 at 09:47:53PM -0800, Logan Ellis wrote:
> Hi all,
>
> Attempting to do single-os install of OpenBSD on my 2019 13" Intel MacBook Pro, but the nvme drive is not detected during installation. The usb drive containing the installer is detected without issue. `machine diskinfo` at the boot prompt lists the nvme. This occurs with both 7.2-current as well as a 7.2 release builds. For boot loaders, I attempted an option-key boot as well as booting from refind. Neither worked. I have also attempted to install the `apple-boot-firmware` into the install image using the FAQ instructions on bootstrapping firmware. As a long shot, I also tried to repartition the drive with GPT (and formatted as Fat) using disk utility during boot recovery, but no joy. Finally, dmesg (provided below) shows several unconfigured Apple entries, including a "mass storage device". I'm at a bit of a loss on what to try next. Has anyone had success with this generation to MacBooks? I know Asahi has support for M-series MacBooks, and I've seen reports online of older MacBooks with working installs. Thanks in advance.
>
> Best,
> - Logan

apple-boot-firmware is for the Arm based machines.

>
> dmesg.txt:
...

> vendor "Apple", unknown product 0x2005 (class mass storage subclass miscellaneous, rev 0x01) at pci14 dev 0 function 0 not configured
> vendor "Apple", unknown product 0x1801 (class prehistoric subclass miscellaneous, rev 0x01) at pci14 dev 0 function 1 not configured
> vendor "Apple", unknown product 0x1802 (class prehistoric subclass miscellaneous, rev 0x01) at pci14 dev 0 function 2 not configured
> vendor "Apple", unknown product 0x1803 (class multimedia subclass audio, rev 0x01) at pci14 dev 0 function 3 not configured

As the pci subclass is set to misc, nvme(4) doesn't match.
At a minimum a diff like this would be required.

Though you'd need another machine to do a build.

Index: sys/dev/pci/nvme_pci.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/nvme_pci.c,v
retrieving revision 1.10
diff -u -p -r1.10 nvme_pci.c
--- sys/dev/pci/nvme_pci.c 11 Mar 2022 18:00:51 -0000 1.10
+++ sys/dev/pci/nvme_pci.c 2 Feb 2023 06:06:21 -0000
@@ -72,7 +72,8 @@ nvme_pci_match(struct device *parent, vo

if (PCI_VENDOR(pa->pa_id) == PCI_VENDOR_APPLE &&
(PCI_PRODUCT(pa->pa_id) == PCI_PRODUCT_APPLE_NVME1 ||
- PCI_PRODUCT(pa->pa_id) == PCI_PRODUCT_APPLE_NVME2))
+ PCI_PRODUCT(pa->pa_id) == PCI_PRODUCT_APPLE_NVME2 ||
+ PCI_PRODUCT(pa->pa_id) == 0x2005))
return (1);

return (0);

No comments:

Post a Comment