helloSystem / ISO

helloSystem Live and installation ISO
https://github.com/helloSystem/
BSD 3-Clause "New" or "Revised" License
805 stars 58 forks source link

Mac mini Mid 2010: GPU not recognized (MCP89) #358

Open probonopd opened 2 years ago

probonopd commented 2 years ago

On Mac mini Mid 2010 (Macmini4,1) the NVIDIA GeForce 320M GPU is not recognized correctly by initgfx on the helloSystem 0.7.0 Live ISO.

10de:08a4:106b:00c0

MCP89 [GeForce 320M]
probonopd commented 2 years ago

Possibly GeForce 320M needs to be added to nvidia_340_ids.

Doing this leads to an immediate reboot as soon as initgfx is starting Xorg!

probonopd commented 2 years ago

https://bsd-hardware.info/?id=pci:10de-08a4-106b-00c0 says :

You need to install the following additional drivers for the device to work properly: nvidia (from 295.75 to 340.108)

probonopd commented 2 years ago

https://github.com/nomadbsd/NomadBSD/commit/102978820e45b50205759b3bb76b82a1e802774b says:

Ignore GeForce 320M. Trying the NVIDIA drivers on it lead to a system crash on a MacBook Air.

probonopd commented 2 years ago

https://forums.developer.nvidia.com/t/crash-on-freebsd-11-2-with-nvidia-driver-340-107-on-geforce-320m/63750 says:

Here are the interesting bits from the kernel dump (let me know if you want to see all of it)

probonopd commented 2 years ago

Adding GeForce 320M to nvidia_304_ids does not lead to the crash. nvidia.ko gets loaded but /usr/local/etc/X11/xorg.xonf.d/00-video.initgfx.conf is still using scfb.

During verbose boot, getting

Auto-detectiong graphics driver :
eval: nv_xorg_cfg: not found
probonopd commented 2 years ago

@danfe in https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=233069

Yes, SUB_FILES were not adjusted in the update to 410.104. Please try with the latest update to 430.50 in ports r516138.

I wonder whether @tehpeh ever got it to work...

Thing is, 430.50 does not seem to be available anymore according to "slave ports" on https://www.freshports.org/x11/nvidia-driver... maybe we should try 470?

probonopd commented 2 years ago

When I add GeForce 320M to nvidia_latest_ids here, then I get:

Jan  2 15:55:30 Macmini4,1 kernel: initgfx: Creating new configuration ...
Jan  2 15:55:30 Macmini4,1 kernel: initgfx: Auto-detecting graphics driver ...
Jan  2 15:55:30 Macmini4,1 kernel: MCP89 [GeForce 320M] ~ GeForce 320M
Jan  2 15:55:30 Macmini4,1 kernel: tar: could not chdir to '/usr/local/nvidia/latest/usr/local/lib/xorg/modules/extensions/.nvidia'
Jan  2 15:55:30 Macmini4,1 kernel: 
Jan  2 15:55:30 Macmini4,1 kernel: initgfx_kmods:  -> /usr/local/nvidia/latest/boot/modules/nvidia.ko /usr/local/nvidia/latest/boot/modules/nvidia-modeset.ko
Jan  2 15:55:30 Macmini4,1 kernel: initgfx: Testing Xorg configuration ...
Jan  2 15:55:30 Macmini4,1 kernel: 
Jan  2 15:55:30 Macmini4,1 syslogd: last message repeated 1 times
Jan  2 15:55:30 Macmini4,1 kernel: X.Org X Server 1.20.11
Jan  2 15:55:30 Macmini4,1 kernel: X Protocol Version 11, Revision 0
Jan  2 15:55:30 Macmini4,1 kernel: Build Operating System: FreeBSD 13.0-RELEASE-p5 amd64 
Jan  2 15:55:30 Macmini4,1 kernel: Current Operating System: FreeBSD Macmini4,1 13.0-RELEASE FreeBSD 13.0-RELEASE #0 releng/13.0-n244733-ea31abc261f: Fri Apr  9 04:24:09 UTC 2021     root@releng1.nyi.freebsd.org:/usr/obj/usr/src/amd64.amd64/sys/GENERIC amd64
Jan  2 15:55:30 Macmini4,1 kernel: Build Date: 13 November 2021  07:49:12AM
Jan  2 15:55:30 Macmini4,1 kernel:  
Jan  2 15:55:30 Macmini4,1 kernel: Current version of pixman: 0.40.0
Jan  2 15:55:30 Macmini4,1 kernel:  Before reporting problems, check http://wiki.x.org
Jan  2 15:55:30 Macmini4,1 kernel:  to make sure that you have the latest version.
Jan  2 15:55:30 Macmini4,1 kernel: Markers: (--) probed, (**) from config file, (==) default setting,
Jan  2 15:55:30 Macmini4,1 kernel:  (++) from command line, (!!) notice, (II) informational,
Jan  2 15:55:30 Macmini4,1 kernel:  (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
Jan  2 15:55:30 Macmini4,1 kernel: (==) Log file: "/var/log/Xorg.0.log", Time: Sun Jan  2 14:54:20 2022
Jan  2 15:55:30 Macmini4,1 kernel: (++) Using config directory: "/tmp/initgfx.360"
Jan  2 15:55:30 Macmini4,1 kernel: (==) Using system config directory "/usr/local/share/X11/xorg.conf.d"
Jan  2 15:55:30 Macmini4,1 kernel: (EE) 
Jan  2 15:55:30 Macmini4,1 kernel: Fatal server error:
Jan  2 15:55:30 Macmini4,1 kernel: (EE) no screens found(EE) 
Jan  2 15:55:30 Macmini4,1 kernel: (EE) 
Jan  2 15:55:30 Macmini4,1 kernel: Please consult the The X.Org Foundation support 
Jan  2 15:55:30 Macmini4,1 kernel:   at http://wiki.x.org
Jan  2 15:55:30 Macmini4,1 kernel:  for help. 
Jan  2 15:55:30 Macmini4,1 kernel: (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
Jan  2 15:55:30 Macmini4,1 kernel: (EE) 
Jan  2 15:55:30 Macmini4,1 kernel: (EE) Server terminated with error (1). Closing log file.
Jan  2 15:55:30 Macmini4,1 kernel: /usr/local/bin/xinit: giving up
Jan  2 15:55:30 Macmini4,1 kernel: /usr/local/bin/xinit: unable to connect to X server: Network is unreachable
Jan  2 15:55:30 Macmini4,1 kernel: /usr/local/bin/xinit: server error
Jan  2 15:55:30 Macmini4,1 kernel: initgfx: Failed to use nvidia driver. Trying nv ...
Jan  2 15:55:30 Macmini4,1 kernel: eval: nv_xorg_cfg: not found
Jan  2 15:55:30 Macmini4,1 kernel: initgfx: Testing Xorg configuration ...
Jan  2 15:55:30 Macmini4,1 kernel: 
Jan  2 15:55:30 Macmini4,1 syslogd: last message repeated 1 times
Jan  2 15:55:30 Macmini4,1 kernel: X.Org X Server 1.20.11
Jan  2 15:55:30 Macmini4,1 kernel: X Protocol Version 11, Revision 0
Jan  2 15:55:30 Macmini4,1 kernel: Build Operating System: FreeBSD 13.0-RELEASE-p5 amd64 
Jan  2 15:55:30 Macmini4,1 kernel: Current Operating System: FreeBSD Macmini4,1 13.0-RELEASE FreeBSD 13.0-RELEASE #0 releng/13.0-n244733-ea31abc261f: Fri Apr  9 04:24:09 UTC 2021     root@releng1.nyi.freebsd.org:/usr/obj/usr/src/amd64.amd64/sys/GENERIC amd64
Jan  2 15:55:30 Macmini4,1 kernel: Build Date: 13 November 2021  07:49:12AM
Jan  2 15:55:30 Macmini4,1 kernel:  
Jan  2 15:55:30 Macmini4,1 kernel: Current version of pixman: 0.40.0
Jan  2 15:55:30 Macmini4,1 kernel:  Before reporting problems, check http://wiki.x.org
Jan  2 15:55:30 Macmini4,1 kernel:  to make sure that you have the latest version.
Jan  2 15:55:30 Macmini4,1 kernel: Markers: (--) probed, (**) from config file, (==) default setting,
Jan  2 15:55:30 Macmini4,1 kernel:  (++) from command line, (!!) notice, (II) informational,
Jan  2 15:55:30 Macmini4,1 kernel:  (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
Jan  2 15:55:30 Macmini4,1 kernel: (==) Log file: "/var/log/Xorg.0.log", Time: Sun Jan  2 14:54:35 2022
Jan  2 15:55:30 Macmini4,1 kernel: (++) Using config directory: "/tmp/initgfx.360"
Jan  2 15:55:30 Macmini4,1 kernel: (==) Using system config directory "/usr/local/share/X11/xorg.conf.d"
Jan  2 15:55:30 Macmini4,1 kernel: scfb trace: probe start
Jan  2 15:55:30 Macmini4,1 kernel: scfb trace: probe done
Jan  2 15:55:30 Macmini4,1 kernel: (EE) 
Jan  2 15:55:30 Macmini4,1 kernel: Fatal server error:
Jan  2 15:55:30 Macmini4,1 kernel: (EE) Cannot run in framebuffer mode. Please specify busIDs        for all framebuffer devices
Jan  2 15:55:30 Macmini4,1 kernel: (EE) 
Jan  2 15:55:30 Macmini4,1 syslogd: last message repeated 1 times
Jan  2 15:55:30 Macmini4,1 kernel: Please consult the The X.Org Foundation support 
Jan  2 15:55:30 Macmini4,1 kernel:   at http://wiki.x.org
Jan  2 15:55:30 Macmini4,1 kernel:  for help. 
Jan  2 15:55:30 Macmini4,1 kernel: (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
Jan  2 15:55:30 Macmini4,1 kernel: (EE) 
Jan  2 15:55:30 Macmini4,1 kernel: (EE) Server terminated with error (1). Closing log file.
Jan  2 15:55:30 Macmini4,1 kernel: /usr/local/bin/xinit: giving up
Jan  2 15:55:30 Macmini4,1 kernel: /usr/local/bin/xinit: unable to connect to X server: Network is unreachable
Jan  2 15:55:30 Macmini4,1 kernel: /usr/local/bin/xinit: server error
Jan  2 15:55:30 Macmini4,1 kernel: initgfx: No suitable graphics driver found. Using scfb instead ...

/var/log/Xorg.0.log.old:

[    59.588] 
X.Org X Server 1.20.11
X Protocol Version 11, Revision 0
[    59.588] Build Operating System: FreeBSD 13.0-RELEASE-p5 amd64 
[    59.589] Current Operating System: FreeBSD Macmini4,1 13.0-RELEASE FreeBSD 13.0-RELEASE #0 releng/13.0-n244733-ea31abc261f: Fri Apr  9 04:24:09 UTC 2021     root@releng1.nyi.freebsd.org:/usr/obj/usr/src/amd64.amd64/sys/GENERIC amd64
[    59.589] Build Date: 13 November 2021  07:49:12AM
[    59.589]  
[    59.589] Current version of pixman: 0.40.0
[    59.589]    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
[    59.589] Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[    59.589] (==) Log file: "/var/log/Xorg.0.log", Time: Sun Jan  2 14:54:35 2022
[    59.589] (++) Using config directory: "/tmp/initgfx.360"
[    59.589] (==) Using system config directory "/usr/local/share/X11/xorg.conf.d"
[    59.590] (==) No Layout section.  Using the first Screen section.
[    59.590] (==) No screen section available. Using defaults.
[    59.590] (**) |-->Screen "Default Screen Section" (0)
[    59.590] (**) |   |-->Monitor "<default monitor>"
[    59.590] (==) No monitor specified for screen "Default Screen Section".
    Using a default monitor configuration.
[    59.590] (==) Automatically adding devices
[    59.590] (==) Automatically enabling devices
[    59.590] (==) Not automatically adding GPU devices
[    59.590] (==) Max clients allowed: 256, resource mask: 0x1fffff
[    59.590] (WW) The directory "/usr/local/share/fonts/misc/" does not exist.
[    59.590]    Entry deleted from font path.
[    59.590] (WW) The directory "/usr/local/share/fonts/Type1/" does not exist.
[    59.590]    Entry deleted from font path.
[    59.590] (WW) The directory "/usr/local/share/fonts/100dpi/" does not exist.
[    59.590]    Entry deleted from font path.
[    59.590] (WW) The directory "/usr/local/share/fonts/75dpi/" does not exist.
[    59.590]    Entry deleted from font path.
[    59.590] (==) FontPath set to:
    /usr/local/share/fonts/TTF/,
    /usr/local/share/fonts/OTF/,
    catalogue:/usr/local/etc/X11/fontpath.d
[    59.590] (==) ModulePath set to "/usr/local/lib/xorg/modules"
[    59.590] (II) The server relies on udev to provide the list of input devices.
    If no devices become available, reconfigure udev or disable AutoAddDevices.
[    59.590] (II) Loader magic: 0x435b20
[    59.590] (II) Module ABI versions:
[    59.590]    X.Org ANSI C Emulation: 0.4
[    59.590]    X.Org Video Driver: 24.1
[    59.590]    X.Org XInput driver : 24.1
[    59.590]    X.Org Server Extension : 10.0
[    59.590] (--) PCI:*(5@0:0:0) 10de:08a4:106b:00c0 rev 162, Mem @ 0xd2000000/16777216, 0xc0000000/268435456, 0xd0000000/33554432, I/O @ 0x00001000/128, BIOS @ 0x????????/65536
[    59.590] (II) LoadModule: "glx"
[    59.600] (II) Loading /usr/local/lib/xorg/modules/extensions/libglx.so
[    59.684] (II) Module glx: vendor="X.Org Foundation"
[    59.684]    compiled for 1.20.11, module version = 1.0.0
[    59.684]    ABI class: X.Org Server Extension, version 10.0
[    59.684] (==) Matched nv as autoconfigured driver 0
[    59.684] (==) Matched modesetting as autoconfigured driver 1
[    59.684] (==) Matched scfb as autoconfigured driver 2
[    59.684] (==) Matched vesa as autoconfigured driver 3
[    59.684] (==) Assigned the driver to the xf86ConfigLayout
[    59.684] (II) LoadModule: "nv"
[    59.686] (WW) Warning, couldn't open module nv
[    59.686] (EE) Failed to load module "nv" (module does not exist, 0)
[    59.686] (II) LoadModule: "modesetting"
[    59.686] (II) Loading /usr/local/lib/xorg/modules/drivers/modesetting_drv.so
[    59.696] (II) Module modesetting: vendor="X.Org Foundation"
[    59.696]    compiled for 1.20.11, module version = 1.20.11
[    59.696]    Module class: X.Org Video Driver
[    59.696]    ABI class: X.Org Video Driver, version 24.1
[    59.696] (II) LoadModule: "scfb"
[    59.696] (II) Loading /usr/local/lib/xorg/modules/drivers/scfb_drv.so
[    59.697] (II) Module scfb: vendor="X.Org Foundation"
[    59.697]    compiled for 1.20.11, module version = 0.0.5
[    59.697]    ABI class: X.Org Video Driver, version 24.1
[    59.697] (II) LoadModule: "vesa"
[    59.698] (II) Loading /usr/local/lib/xorg/modules/drivers/vesa_drv.so
[    59.698] (II) Module vesa: vendor="X.Org Foundation"
[    59.698]    compiled for 1.20.11, module version = 2.5.0
[    59.698]    Module class: X.Org Video Driver
[    59.698]    ABI class: X.Org Video Driver, version 24.1
[    59.698] (II) modesetting: Driver for Modesetting Kernel Drivers: kms
[    59.698] (II) scfb: driver for wsdisplay framebuffer: scfb
[    59.698] (II) VESA: driver for VESA chipsets: vesa
[    59.698] (--) Using syscons driver with X support (version 2.0)
[    59.698] (--) using VT number 2

[    59.698] (EE) open /dev/dri/card0: No such file or directory
[    59.698] (WW) Falling back to old probe method for modesetting
[    59.698] (EE) open /dev/dri/card0: No such file or directory
[    59.698] (WW) Falling back to old probe method for scfb
[    59.698] scfb trace: probe start
[    59.698] (II) scfb(1): using default device
[    59.698] scfb trace: probe done
[    59.698] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support
[    59.698] (EE) Screen 0 deleted because of no matching config section.
[    59.698] (II) UnloadModule: "modesetting"
[    59.698] (EE) 
Fatal server error:
[    59.698] (EE) Cannot run in framebuffer mode. Please specify busIDs        for all framebuffer devices
[    59.698] (EE) 
[    59.698] (EE) 
Please consult the The X.Org Foundation support 
     at http://wiki.x.org
 for help. 
[    59.698] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[    59.698] (EE) 
[    59.699] (EE) Server terminated with error (1). Closing log file.
tehpeh commented 2 years ago

@probonopd I never did get it to work. I have since given up on Apple hardware; too many proprietary things inside like Broadcom chips etc. Also they've become completely user non-serviceable. The Mac Mini in question now runs ESXi.

tehpeh commented 2 years ago

The 320M was a bit of a rare unit, it didn't have its own memory and instead shared from the system. I suspect it will never work unfortunately.

bsduck commented 2 years ago

I have a GT 320M in a HP laptop and last time I tried (probably last year) it was recognised properly and supported by nvidia-340.

probonopd commented 11 months ago

The Mac mini Mid 2010 (Macmini4,1) does boot hello-0.9.0_0I37-FreeBSD-13.2-amd64.iso, but it is not loading any Nvidia driver. Next step: Try to get nvidia-340 loaded.

probonopd commented 11 months ago

Also affects MacBookPro7,1 (A1278) as per https://github.com/helloSystem/ISO/issues/550.

louies0623 commented 10 months ago

Nomadbsd on A1278 https://bsd-hardware.info/?probe=714516a696

louies0623 commented 10 months ago

I tested it on ghostBSD, but it failed to enter the desktop successfully. I had to modify it to scfb to use it, but vesa did not work. macbook 7,1

louies0623 commented 10 months ago

I think this might work. https://forums.freebsd.org/threads/correct-guide-to-install-nvidia-driver.69338/

or this

https://srobb.net/freebsdnvidia.html