Cc: stable?
On Thu, Nov 18, 2021 at 4:04 AM Ben Skeggs <skeggsb at gmail.com>
wrote:>
> From: Ben Skeggs <bskeggs at redhat.com>
>
> I've got HW now, appears to work as expected so far.
>
> Signed-off-by: Ben Skeggs <bskeggs at redhat.com>
> ---
> .../gpu/drm/nouveau/nvkm/engine/device/base.c | 22 +++++++++++++++++++
> 1 file changed, 22 insertions(+)
>
> diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
b/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
> index b51d690f375f..88d262ba648c 100644
> --- a/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
> +++ b/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
> @@ -2626,6 +2626,27 @@ nv174_chipset = {
> .fifo = { 0x00000001, ga102_fifo_new },
> };
>
> +static const struct nvkm_device_chip
> +nv176_chipset = {
> + .name = "GA106",
> + .bar = { 0x00000001, tu102_bar_new },
> + .bios = { 0x00000001, nvkm_bios_new },
> + .devinit = { 0x00000001, ga100_devinit_new },
> + .fb = { 0x00000001, ga102_fb_new },
> + .gpio = { 0x00000001, ga102_gpio_new },
> + .i2c = { 0x00000001, gm200_i2c_new },
> + .imem = { 0x00000001, nv50_instmem_new },
> + .mc = { 0x00000001, ga100_mc_new },
> + .mmu = { 0x00000001, tu102_mmu_new },
> + .pci = { 0x00000001, gp100_pci_new },
> + .privring = { 0x00000001, gm200_privring_new },
> + .timer = { 0x00000001, gk20a_timer_new },
> + .top = { 0x00000001, ga100_top_new },
> + .disp = { 0x00000001, ga102_disp_new },
> + .dma = { 0x00000001, gv100_dma_new },
> + .fifo = { 0x00000001, ga102_fifo_new },
> +};
> +
> static const struct nvkm_device_chip
> nv177_chipset = {
> .name = "GA107",
> @@ -3072,6 +3093,7 @@ nvkm_device_ctor(const struct nvkm_device_func *func,
> case 0x168: device->chip = &nv168_chipset; break;
> case 0x172: device->chip = &nv172_chipset; break;
> case 0x174: device->chip = &nv174_chipset; break;
> + case 0x176: device->chip = &nv176_chipset; break;
> case 0x177: device->chip = &nv177_chipset; break;
> default:
> if (nvkm_boolopt(device->cfgopt,
"NvEnableUnsupportedChipsets", false)) {
> --
> 2.31.1
>