case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        case 0xd9:
        case 0xd7:
                break;
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                break;
        }
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        case 0xd9:
        case 0xd7:
                nv_wr32(priv, 0x4040d0, 0x00000000);
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x404174, 0x00000000);
                break;
        case 0xc0:
        case 0xc3:
        case 0xc4:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x405800, 0x078000bf);
                nv_wr32(priv, 0x405830, 0x02180000);
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                break;
        }
        case 0xc0:
        case 0xc3:
        case 0xc4:
+       case 0xc8:
        default:
                break;
        }
        case 0xc0:
        case 0xc3:
        case 0xc4:
+       case 0xc8:
                nv_wr32(priv, 0x408808, 0x0003e00d);
                nv_wr32(priv, 0x408900, 0x3080b801);
                nv_wr32(priv, 0x408904, 0x02000001);
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x418408, 0x00000000);
                break;
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x418414, 0x00200fff);
                break;
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x41870c, 0x07c80000);
                break;
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x418800, 0x0006860a);
                break;
        case 0xc0:
        case 0xc3:
        case 0xc4:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x418830, 0x00000001);
                break;
        case 0xc0:
        case 0xc3:
        case 0xc4:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x4188fc, 0x00100000);
                break;
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x418b00, 0x00000000);
                break;
        case 0xc0:
        case 0xc3:
        case 0xc4:
+       case 0xc8:
        default:
                break;
        }
        case 0xc0:
        case 0xc3:
        case 0xc4:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x419864, 0x0000012a);
                break;
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x419a1c, 0x00000000);
                nv_wr32(priv, 0x419a20, 0x00000800);
        case 0xc0:
        case 0xc3:
        case 0xc4:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x419be0, 0x00000001);
                break;
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x419c00, 0x00000002);
                break;
                nv_wr32(priv, 0x419cb0, 0x00020048);
                break;
        case 0xc0:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x419cb0, 0x00060048);
                break;
        case 0xc0:
        case 0xc3:
        case 0xc4:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x419d20, 0x02180000);
                break;
        case 0xc0:
        case 0xc3:
        case 0xc4:
+       case 0xc8:
        default:
                break;
        }
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                break;
        }
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
                break;
        default:
                break;
        nv_icmd(priv, 0x00000576, 0x00000003);
        switch (nv_device(priv)->chipset) {
        case 0xc1:
+       case 0xc8:
        case 0xd9:
        case 0xd7:
                nv_icmd(priv, 0x0000057b, 0x00000059);
        switch (nv_device(priv)->chipset) {
        case 0xd9:
        case 0xd7:
+       case 0xc8:
                nv_icmd(priv, 0x0000097d, 0x00000020);
                break;
        case 0xc0:
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
                nv_mthd(priv, 0x902d, 0x3410, 0x00000000);
                break;
        case 0xd9:
 
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                break;
        }
                nv_wr32(priv, 0x405900, 0x00002834);
                break;
        case 0xc0:
+       case 0xc8:
        default:
                break;
        }
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                break;
        }
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                break;
        }
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                break;
        }
        case 0xc0:
        case 0xc3:
        case 0xc4:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x418714, 0x80000000);
                break;
        case 0xd9:
        case 0xd7:
        case 0xc1:
+       case 0xc8:
                nv_wr32(priv, 0x4188c8, 0x00000000);
                break;
        case 0xc0:
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                break;
        }
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                break;
        }
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                break;
        }
        case 0xc0:
        case 0xc3:
        case 0xc4:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x418e00, 0x00000050);
                break;
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                break;
        }
                nv_wr32(priv, 0x419ac8, 0x00000000);
                break;
        case 0xc0:
+       case 0xc8:
        default:
                break;
        }
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x41980c, 0x00000000);
                break;
        case 0xc0:
        case 0xc3:
        case 0xc4:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x419814, 0x00000000);
                break;
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x41984c, 0x00005bc5);
                break;
                nv_wr32(priv, 0x419880, 0x00000002);
                break;
        case 0xc0:
+       case 0xc8:
        default:
                break;
        }
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                break;
        }
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                break;
        }
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x419ea8, 0x00001100);
                break;
        }
-       nv_wr32(priv, 0x419eac, 0x11100702);
+
+       switch (nv_device(priv)->chipset) {
+       case 0xc8:
+               nv_wr32(priv, 0x419eac, 0x11100f02);
+               break;
+       case 0xc0:
+       case 0xc3:
+       case 0xc4:
+       case 0xc1:
+       case 0xd9:
+       case 0xd7:
+       default:
+               nv_wr32(priv, 0x419eac, 0x11100702);
+               break;
+       }
        nv_wr32(priv, 0x419eb0, 0x00000003);
        nv_wr32(priv, 0x419eb4, 0x00000000);
        nv_wr32(priv, 0x419eb8, 0x00000000);
                nv_wr32(priv, 0x419ed0, 0x00003818);
                break;
        case 0xc0:
+       case 0xc8:
        default:
                nv_wr32(priv, 0x419ec8, 0x06060618);
                nv_wr32(priv, 0x419ed0, 0x0eff0e38);
        case 0xc3:
        case 0xc4:
        case 0xc1:
+       case 0xc8:
        case 0xd9:
        case 0xd7:
                nvc0_graph_init_unk40xx(priv);