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);