linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] drm/nouveau: fix unknown chipset for GTX 1060
@ 2016-12-12 11:26 Chris Chiu
  2016-12-12 11:44 ` Ben Skeggs
  2016-12-20  8:33 ` [Nouveau] " Karol Herbst
  0 siblings, 2 replies; 3+ messages in thread
From: Chris Chiu @ 2016-12-12 11:26 UTC (permalink / raw)
  To: Ben Skeggs, David Airlie, Alexandre Courbot, Karol Herbst,
	Martin Peres, dri-devel, nouveau, linux-kernel
  Cc: linux, Chris Chiu

Nouveau driver shows unknown chipset (136000a1) for GTX 1060, so it
only gives VGA resolution on screen. Use the same chipset as nv134
then it shows FullHD. This commit copies fields from nv134_chipset
to nv136_chipset for GTX 1060.

Signed-off-by: Chris Chiu <chiu@endlessm.com>
---
 drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 29 +++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c b/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
index 7218a06..7c6eece 100644
--- a/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
+++ b/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
@@ -2209,6 +2209,34 @@ nv134_chipset = {
 	.fifo = gp100_fifo_new,
 };
 
+static const struct nvkm_device_chip
+nv136_chipset = {
+	.name = "GP104",
+	.bar = gf100_bar_new,
+	.bios = nvkm_bios_new,
+	.bus = gf100_bus_new,
+	.devinit = gm200_devinit_new,
+	.fb = gp104_fb_new,
+	.fuse = gm107_fuse_new,
+	.gpio = gk104_gpio_new,
+	.i2c = gm200_i2c_new,
+	.ibus = gm200_ibus_new,
+	.imem = nv50_instmem_new,
+	.ltc = gp100_ltc_new,
+	.mc = gp100_mc_new,
+	.mmu = gf100_mmu_new,
+	.pci = gp100_pci_new,
+	.timer = gk20a_timer_new,
+	.top = gk104_top_new,
+	.ce[0] = gp104_ce_new,
+	.ce[1] = gp104_ce_new,
+	.ce[2] = gp104_ce_new,
+	.ce[3] = gp104_ce_new,
+	.disp = gp104_disp_new,
+	.dma = gf119_dma_new,
+	.fifo = gp100_fifo_new,
+};
+
 static int
 nvkm_device_event_ctor(struct nvkm_object *object, void *data, u32 size,
 		       struct nvkm_notify *notify)
@@ -2644,6 +2672,7 @@ nvkm_device_ctor(const struct nvkm_device_func *func,
 		case 0x12b: device->chip = &nv12b_chipset; break;
 		case 0x130: device->chip = &nv130_chipset; break;
 		case 0x134: device->chip = &nv134_chipset; break;
+		case 0x136: device->chip = &nv136_chipset; break;
 		default:
 			nvdev_error(device, "unknown chipset (%08x)\n", boot0);
 			goto done;
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] drm/nouveau: fix unknown chipset for GTX 1060
  2016-12-12 11:26 [PATCH] drm/nouveau: fix unknown chipset for GTX 1060 Chris Chiu
@ 2016-12-12 11:44 ` Ben Skeggs
  2016-12-20  8:33 ` [Nouveau] " Karol Herbst
  1 sibling, 0 replies; 3+ messages in thread
From: Ben Skeggs @ 2016-12-12 11:44 UTC (permalink / raw)
  To: Chris Chiu, David Airlie, Alexandre Courbot, Karol Herbst,
	Martin Peres, dri-devel, nouveau, linux-kernel
  Cc: linux


[-- Attachment #1.1: Type: text/plain, Size: 2358 bytes --]

On 12/12/2016 09:26 PM, Chris Chiu wrote:
> Nouveau driver shows unknown chipset (136000a1) for GTX 1060, so it
> only gives VGA resolution on screen. Use the same chipset as nv134
> then it shows FullHD. This commit copies fields from nv134_chipset
> to nv136_chipset for GTX 1060.
I have one of these sitting on my desk, but won't be merging support for
it until it's been confirmed that no additional changes are required vs
GP104.  We've been bitten by just making these kind of blind assumptions
before.

Thanks,
Ben.

> 
> Signed-off-by: Chris Chiu <chiu@endlessm.com>
> ---
>  drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 29 +++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
> 
> diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c b/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
> index 7218a06..7c6eece 100644
> --- a/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
> +++ b/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
> @@ -2209,6 +2209,34 @@ nv134_chipset = {
>  	.fifo = gp100_fifo_new,
>  };
>  
> +static const struct nvkm_device_chip
> +nv136_chipset = {
> +	.name = "GP104",
> +	.bar = gf100_bar_new,
> +	.bios = nvkm_bios_new,
> +	.bus = gf100_bus_new,
> +	.devinit = gm200_devinit_new,
> +	.fb = gp104_fb_new,
> +	.fuse = gm107_fuse_new,
> +	.gpio = gk104_gpio_new,
> +	.i2c = gm200_i2c_new,
> +	.ibus = gm200_ibus_new,
> +	.imem = nv50_instmem_new,
> +	.ltc = gp100_ltc_new,
> +	.mc = gp100_mc_new,
> +	.mmu = gf100_mmu_new,
> +	.pci = gp100_pci_new,
> +	.timer = gk20a_timer_new,
> +	.top = gk104_top_new,
> +	.ce[0] = gp104_ce_new,
> +	.ce[1] = gp104_ce_new,
> +	.ce[2] = gp104_ce_new,
> +	.ce[3] = gp104_ce_new,
> +	.disp = gp104_disp_new,
> +	.dma = gf119_dma_new,
> +	.fifo = gp100_fifo_new,
> +};
> +
>  static int
>  nvkm_device_event_ctor(struct nvkm_object *object, void *data, u32 size,
>  		       struct nvkm_notify *notify)
> @@ -2644,6 +2672,7 @@ nvkm_device_ctor(const struct nvkm_device_func *func,
>  		case 0x12b: device->chip = &nv12b_chipset; break;
>  		case 0x130: device->chip = &nv130_chipset; break;
>  		case 0x134: device->chip = &nv134_chipset; break;
> +		case 0x136: device->chip = &nv136_chipset; break;
>  		default:
>  			nvdev_error(device, "unknown chipset (%08x)\n", boot0);
>  			goto done;
> 


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Nouveau] [PATCH] drm/nouveau: fix unknown chipset for GTX 1060
  2016-12-12 11:26 [PATCH] drm/nouveau: fix unknown chipset for GTX 1060 Chris Chiu
  2016-12-12 11:44 ` Ben Skeggs
@ 2016-12-20  8:33 ` Karol Herbst
  1 sibling, 0 replies; 3+ messages in thread
From: Karol Herbst @ 2016-12-20  8:33 UTC (permalink / raw)
  To: Chris Chiu
  Cc: Ben Skeggs, David Airlie, Alexandre Courbot, Karol Herbst,
	Martin Peres, dri-devel, ML nouveau, Linux Kernel Mailing List,
	linux

we already have that included in 4.10

2016-12-12 12:26 GMT+01:00 Chris Chiu <chiu@endlessm.com>:
> Nouveau driver shows unknown chipset (136000a1) for GTX 1060, so it
> only gives VGA resolution on screen. Use the same chipset as nv134
> then it shows FullHD. This commit copies fields from nv134_chipset
> to nv136_chipset for GTX 1060.
>
> Signed-off-by: Chris Chiu <chiu@endlessm.com>
> ---
>  drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 29 +++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c b/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
> index 7218a06..7c6eece 100644
> --- a/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
> +++ b/drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
> @@ -2209,6 +2209,34 @@ nv134_chipset = {
>         .fifo = gp100_fifo_new,
>  };
>
> +static const struct nvkm_device_chip
> +nv136_chipset = {
> +       .name = "GP104",
> +       .bar = gf100_bar_new,
> +       .bios = nvkm_bios_new,
> +       .bus = gf100_bus_new,
> +       .devinit = gm200_devinit_new,
> +       .fb = gp104_fb_new,
> +       .fuse = gm107_fuse_new,
> +       .gpio = gk104_gpio_new,
> +       .i2c = gm200_i2c_new,
> +       .ibus = gm200_ibus_new,
> +       .imem = nv50_instmem_new,
> +       .ltc = gp100_ltc_new,
> +       .mc = gp100_mc_new,
> +       .mmu = gf100_mmu_new,
> +       .pci = gp100_pci_new,
> +       .timer = gk20a_timer_new,
> +       .top = gk104_top_new,
> +       .ce[0] = gp104_ce_new,
> +       .ce[1] = gp104_ce_new,
> +       .ce[2] = gp104_ce_new,
> +       .ce[3] = gp104_ce_new,
> +       .disp = gp104_disp_new,
> +       .dma = gf119_dma_new,
> +       .fifo = gp100_fifo_new,
> +};
> +
>  static int
>  nvkm_device_event_ctor(struct nvkm_object *object, void *data, u32 size,
>                        struct nvkm_notify *notify)
> @@ -2644,6 +2672,7 @@ nvkm_device_ctor(const struct nvkm_device_func *func,
>                 case 0x12b: device->chip = &nv12b_chipset; break;
>                 case 0x130: device->chip = &nv130_chipset; break;
>                 case 0x134: device->chip = &nv134_chipset; break;
> +               case 0x136: device->chip = &nv136_chipset; break;
>                 default:
>                         nvdev_error(device, "unknown chipset (%08x)\n", boot0);
>                         goto done;
> --
> 2.1.4
>
> _______________________________________________
> Nouveau mailing list
> Nouveau@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/nouveau

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-12-20  8:33 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-12-12 11:26 [PATCH] drm/nouveau: fix unknown chipset for GTX 1060 Chris Chiu
2016-12-12 11:44 ` Ben Skeggs
2016-12-20  8:33 ` [Nouveau] " Karol Herbst

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).