|
@@ -28,6 +28,7 @@
|
|
|
#include <subdev/i2c.h>
|
|
|
#include <subdev/clock.h>
|
|
|
#include <subdev/devinit.h>
|
|
|
+#include <subdev/mc.h>
|
|
|
|
|
|
int
|
|
|
nv40_identify(struct nouveau_device *device)
|
|
@@ -39,6 +40,7 @@ nv40_identify(struct nouveau_device *device)
|
|
|
device->oclass[NVDEV_SUBDEV_I2C ] = &nouveau_i2c_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass;
|
|
|
+ device->oclass[NVDEV_SUBDEV_MC ] = &nv04_mc_oclass;
|
|
|
break;
|
|
|
case 0x41:
|
|
|
device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass;
|
|
@@ -46,6 +48,7 @@ nv40_identify(struct nouveau_device *device)
|
|
|
device->oclass[NVDEV_SUBDEV_I2C ] = &nouveau_i2c_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass;
|
|
|
+ device->oclass[NVDEV_SUBDEV_MC ] = &nv04_mc_oclass;
|
|
|
break;
|
|
|
case 0x42:
|
|
|
device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass;
|
|
@@ -53,6 +56,7 @@ nv40_identify(struct nouveau_device *device)
|
|
|
device->oclass[NVDEV_SUBDEV_I2C ] = &nouveau_i2c_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass;
|
|
|
+ device->oclass[NVDEV_SUBDEV_MC ] = &nv04_mc_oclass;
|
|
|
break;
|
|
|
case 0x43:
|
|
|
device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass;
|
|
@@ -60,6 +64,7 @@ nv40_identify(struct nouveau_device *device)
|
|
|
device->oclass[NVDEV_SUBDEV_I2C ] = &nouveau_i2c_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass;
|
|
|
+ device->oclass[NVDEV_SUBDEV_MC ] = &nv04_mc_oclass;
|
|
|
break;
|
|
|
case 0x45:
|
|
|
device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass;
|
|
@@ -67,6 +72,7 @@ nv40_identify(struct nouveau_device *device)
|
|
|
device->oclass[NVDEV_SUBDEV_I2C ] = &nouveau_i2c_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass;
|
|
|
+ device->oclass[NVDEV_SUBDEV_MC ] = &nv04_mc_oclass;
|
|
|
break;
|
|
|
case 0x47:
|
|
|
device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass;
|
|
@@ -74,6 +80,7 @@ nv40_identify(struct nouveau_device *device)
|
|
|
device->oclass[NVDEV_SUBDEV_I2C ] = &nouveau_i2c_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass;
|
|
|
+ device->oclass[NVDEV_SUBDEV_MC ] = &nv04_mc_oclass;
|
|
|
break;
|
|
|
case 0x49:
|
|
|
device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass;
|
|
@@ -81,6 +88,7 @@ nv40_identify(struct nouveau_device *device)
|
|
|
device->oclass[NVDEV_SUBDEV_I2C ] = &nouveau_i2c_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass;
|
|
|
+ device->oclass[NVDEV_SUBDEV_MC ] = &nv04_mc_oclass;
|
|
|
break;
|
|
|
case 0x4b:
|
|
|
device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass;
|
|
@@ -88,6 +96,7 @@ nv40_identify(struct nouveau_device *device)
|
|
|
device->oclass[NVDEV_SUBDEV_I2C ] = &nouveau_i2c_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass;
|
|
|
+ device->oclass[NVDEV_SUBDEV_MC ] = &nv04_mc_oclass;
|
|
|
break;
|
|
|
case 0x44:
|
|
|
device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass;
|
|
@@ -95,6 +104,7 @@ nv40_identify(struct nouveau_device *device)
|
|
|
device->oclass[NVDEV_SUBDEV_I2C ] = &nouveau_i2c_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass;
|
|
|
+ device->oclass[NVDEV_SUBDEV_MC ] = &nv44_mc_oclass;
|
|
|
break;
|
|
|
case 0x46:
|
|
|
device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass;
|
|
@@ -102,6 +112,7 @@ nv40_identify(struct nouveau_device *device)
|
|
|
device->oclass[NVDEV_SUBDEV_I2C ] = &nouveau_i2c_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass;
|
|
|
+ device->oclass[NVDEV_SUBDEV_MC ] = &nv44_mc_oclass;
|
|
|
break;
|
|
|
case 0x4a:
|
|
|
device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass;
|
|
@@ -109,6 +120,7 @@ nv40_identify(struct nouveau_device *device)
|
|
|
device->oclass[NVDEV_SUBDEV_I2C ] = &nouveau_i2c_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass;
|
|
|
+ device->oclass[NVDEV_SUBDEV_MC ] = &nv44_mc_oclass;
|
|
|
break;
|
|
|
case 0x4c:
|
|
|
device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass;
|
|
@@ -116,6 +128,7 @@ nv40_identify(struct nouveau_device *device)
|
|
|
device->oclass[NVDEV_SUBDEV_I2C ] = &nouveau_i2c_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass;
|
|
|
+ device->oclass[NVDEV_SUBDEV_MC ] = &nv44_mc_oclass;
|
|
|
break;
|
|
|
case 0x4e:
|
|
|
device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass;
|
|
@@ -123,6 +136,7 @@ nv40_identify(struct nouveau_device *device)
|
|
|
device->oclass[NVDEV_SUBDEV_I2C ] = &nouveau_i2c_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass;
|
|
|
+ device->oclass[NVDEV_SUBDEV_MC ] = &nv44_mc_oclass;
|
|
|
break;
|
|
|
case 0x63:
|
|
|
device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass;
|
|
@@ -130,6 +144,7 @@ nv40_identify(struct nouveau_device *device)
|
|
|
device->oclass[NVDEV_SUBDEV_I2C ] = &nouveau_i2c_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass;
|
|
|
+ device->oclass[NVDEV_SUBDEV_MC ] = &nv44_mc_oclass;
|
|
|
break;
|
|
|
case 0x67:
|
|
|
device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass;
|
|
@@ -137,6 +152,7 @@ nv40_identify(struct nouveau_device *device)
|
|
|
device->oclass[NVDEV_SUBDEV_I2C ] = &nouveau_i2c_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass;
|
|
|
+ device->oclass[NVDEV_SUBDEV_MC ] = &nv44_mc_oclass;
|
|
|
break;
|
|
|
case 0x68:
|
|
|
device->oclass[NVDEV_SUBDEV_VBIOS ] = &nouveau_bios_oclass;
|
|
@@ -144,6 +160,7 @@ nv40_identify(struct nouveau_device *device)
|
|
|
device->oclass[NVDEV_SUBDEV_I2C ] = &nouveau_i2c_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_CLOCK ] = &nv40_clock_oclass;
|
|
|
device->oclass[NVDEV_SUBDEV_DEVINIT] = &nv1a_devinit_oclass;
|
|
|
+ device->oclass[NVDEV_SUBDEV_MC ] = &nv44_mc_oclass;
|
|
|
break;
|
|
|
default:
|
|
|
nv_fatal(device, "unknown Curie chipset\n");
|