drm/nouveau/device: use an additional bit from NV_PMC_BOOT_0 to identify chipset

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
Ben Skeggs 2013-09-28 07:31:07 +10:00
parent 3db0fdb467
commit dd5b84ac3c

View File

@ -158,9 +158,9 @@ nouveau_devobj_ctor(struct nouveau_object *parent,
iounmap(map); iounmap(map);
/* determine chipset and derive architecture from it */ /* determine chipset and derive architecture from it */
if ((boot0 & 0x0f000000) > 0) { if ((boot0 & 0x1f000000) > 0) {
device->chipset = (boot0 & 0xff00000) >> 20; device->chipset = (boot0 & 0x1ff00000) >> 20;
switch (device->chipset & 0xf0) { switch (device->chipset & 0x1f0) {
case 0x10: { case 0x10: {
if (0x461 & (1 << (device->chipset & 0xf))) if (0x461 & (1 << (device->chipset & 0xf)))
device->card_type = NV_10; device->card_type = NV_10;