So, in my ongoing NetBSD on a MacBook saga.... NetBSD-7.2 boots fine from USB on the MacBook Pro (MacBook7,1) (with the help of rEFIT on a second USB stick). NetBSD-8.2 and newer, including the most recent -current, hangs during boot and the kernel messages appear to have torn video: http://www.planix.ca/~woods/macbookpro-netbsd-boot-fail.jpg However today I discovered that NetBSD-8.0 will often boot with the kernel messages properly visible in nice green on black in a full 52(?)-line display, but it hangs or crashes. (It is not reliable at booting though -- sometimes the boot loader just hangs without printing anything.) If the boot loader does work though, and if I boot "normally" it just hangs, with the last message being: pci0 at mainbus0 bus0: configuration mode 1 The caps-lock button is dead so I think the machine is well and truly frozen in a CPU loop (the CPU is hot, the fan runs fast). I'm guessing NetBSD-8.2 and everything more recent is also hanging at this same spot, but with the busted video mode it's hard to tell for sure. If I boot 8.0 with ACPI turned off (boot option #2 or from the boot prompt "boot -2"), it crashes into ddb after getting a bit further, but there are many errors about not being ablt to map PCI interrupts. If I boot 8.0 with "-vx", there are quite a number of "invalid config space" messages after the pci0 attachment: pci0 at mainbus0 bus0: configuration mode 1 acpi0: MCFG: 000:00:0: invalid config space (cfg[0x100]=0xffffffff, alias=false) The second and third numbers change in each following message, and in two of those messages the cfg[0x100] number is 0x00000000. So it looks like ACPI is necessary, but support for using it in this MacBook7,1 is broken somehow. I can post a full-res photo of the screen in one or more or all of these states it someone wants to see it. In any case, what might have been changed after 8.0 that broke the video output? Where do I look? Is amd64 video now the genfb(4) device code? Or is it still vga(4)? If it's genfb(4), then I do see commits about doing anti-aliasing, and maybe the video junk I see could possibly be explained by such a thing. If I can get 7.2 installed (likely), so that I need only drop a kernel in place instead of building the whole installimage and writing the damn slow USB stick with a whole install image every time, then maybe I'll be able to try bisecting changes to get the video working right again. I really wish modern PC vendors were not still so bloody stupid with their firmware as to make it impossible to talk to them via a serial port of some kind (e.g. a USB serial adapter as console would be awesome!). That said, what would it take to wire the NetBSD console to a USB serial adapter? In lieu of that it would be nice if hitting ^S on the keyboard would at least pause the kernel messages from scrolling by during boot, but I get that such a thing might be a bit hard to arrange for in NetBSD. -- Greg A. Woods <gwoods%acm.org@localhost> Kelowna, BC +1 250 762-7675 RoboHack <woods%robohack.ca@localhost> Planix, Inc. <woods%planix.com@localhost> Avoncote Farms <woods%avoncote.ca@localhost>
Attachment:
pgprd2f7X1iMU.pgp
Description: OpenPGP Digital Signature