9.0-Release and Asus P5-NE motherboard

Matthieu Volat mazhe at alkumuna.eu
Fri Jan 20 17:26:05 UTC 2012


On Fri, 20 Jan 2012 09:28:55 -0500
John Baldwin <jhb at freebsd.org> wrote:

> On Friday, January 20, 2012 8:21:28 am Matthieu Volat wrote:
> > Hello,
> > 
> > For a week, I have been trying to boot the FreeBSD 9 installation media 
> (usb, cdrom) on a computer with an Asus P5-NE motherboard (amd64, nvidia MCP51 
> controller), but the kernel fails to initialize correctly.
> 
> I think the problem is with the nvidia chipset and MSI support.  There's not
> an easy way to fix it via a tunable unfortunately.  You can try hacking
> sys/dev/pci/pci.c to disable this code:
> 
> #if defined(__i386__) || defined(__amd64__) || defined(__powerpc__)
> 	/*
> 	 * Enable the MSI mapping window for all HyperTransport
> 	 * slaves.  PCI-PCI bridges have their windows enabled via
> 	 * PCIB_MAP_MSI().
> 	 */
> 	if (cfg->ht.ht_slave != 0 && cfg->ht.ht_msimap != 0 &&
> 	    !(cfg->ht.ht_msictrl & PCIM_HTCMD_MSI_ENABLE)) {
> 		device_printf(pcib,
> 	    "Enabling MSI window for HyperTransport slave at pci%d:%d:%d:%d\n",
> 		    cfg->domain, cfg->bus, cfg->slot, cfg->func);
> 		 cfg->ht.ht_msictrl |= PCIM_HTCMD_MSI_ENABLE;
> 		 WREG(cfg->ht.ht_msimap + PCIR_HT_COMMAND, cfg->ht.ht_msictrl,
> 		     2);
> 	}
> #endif
> 
> -- 
> John Baldwin

Thanks, you are absolutely right, I compiled a kernel disabling MSI-X support and it booted.

I wonder how this worked previously and not now. From what I see, there is a blacklist to disable unsupported chipsets... 

Maybe this chipset should be added as a workaround (I wonder if I'm the only one with the problem)... 

The only references I found about MCP51 and MSI-X (<http://lists.freebsd.org/pipermail/svn-src-head/2010-November/022551.html>) seems to indicates that the chipset should work, but maybe with extra code...

I'm willing to test patches & so if somebody wants to have a look. 

-- 
Matthieu Volat <mazhe at alkumuna.eu>


More information about the freebsd-stable mailing list