Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 20 Jan 2012 18:25:52 +0100
From:      Matthieu Volat <mazhe@alkumuna.eu>
To:        John Baldwin <jhb@freebsd.org>
Cc:        mazhe@alkumun, freebsd-stable@freebsd.org
Subject:   Re: 9.0-Release and Asus P5-NE motherboard
Message-ID:  <20120120182552.683bba8b.mazhe@alkumuna.eu>
In-Reply-To: <201201200928.55558.jhb@freebsd.org>
References:  <20120120142128.0c6ba578.mazhe@alkumuna.eu> <201201200928.55558.jhb@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 20 Jan 2012 09:28:55 -0500
John Baldwin <jhb@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@alkumuna.eu>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120120182552.683bba8b.mazhe>