Commit c4bdac75 authored by Ben Skeggs's avatar Ben Skeggs
Browse files

drm/nouveau/gr/ga102: initial support



v2:
- whitespace

Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
Signed-off-by: default avatarGourav Samaiya <gsamaiya@nvidia.com>
parent 21e938d0
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -190,6 +190,8 @@

#define TURING_A                                      /* cl9097.h */ 0x0000c597

#define AMPERE_B                                      /* cl9097.h */ 0x0000c797

#define NV74_BSP                                                     0x000074b0

#define GT212_MSVLD                                                  0x000085b1
@@ -234,6 +236,7 @@
#define PASCAL_COMPUTE_B                                             0x0000c1c0
#define VOLTA_COMPUTE_A                                              0x0000c3c0
#define TURING_COMPUTE_A                                             0x0000c5c0
#define AMPERE_COMPUTE_B                                             0x0000c7c0

#define NV74_CIPHER                                                  0x000074c1
#endif
+1 −0
Original line number Diff line number Diff line
@@ -54,4 +54,5 @@ int gp108_gr_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct n
int gp10b_gr_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_gr **);
int gv100_gr_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_gr **);
int tu102_gr_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_gr **);
int ga102_gr_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_gr **);
#endif
+7 −0
Original line number Diff line number Diff line
@@ -118,6 +118,7 @@ struct nvkm_acr_lsf_func {
#define NVKM_ACR_LSF_DMACTL_REQ_CTX                                  0x00000004
#define NVKM_ACR_LSF_FORCE_PRIV_LOAD                                 0x00000008
	u32 flags;
	u32 bl_entry;
	u32 bld_size;
	void (*bld_write)(struct nvkm_acr *, u32 bld, struct nvkm_acr_lsfw *);
	void (*bld_patch)(struct nvkm_acr *, u32 bld, s64 adjust);
@@ -144,4 +145,10 @@ int
nvkm_acr_lsfw_load_bl_inst_data_sig(struct nvkm_subdev *, struct nvkm_falcon *,
				    enum nvkm_acr_lsf_id, const char *path,
				    int ver, const struct nvkm_acr_lsf_func *);

int
nvkm_acr_lsfw_load_bl_sig_net(struct nvkm_subdev *, struct nvkm_falcon *,
				    enum nvkm_acr_lsf_id, const char *path,
				    int ver, const struct nvkm_acr_lsf_func *,
				    const void *, u32, const void *, u32);
#endif
+5 −0
Original line number Diff line number Diff line
@@ -2618,6 +2618,7 @@ nv172_chipset = {
	.disp     = { 0x00000001, ga102_disp_new },
	.dma      = { 0x00000001, gv100_dma_new },
	.fifo     = { 0x00000001, ga102_fifo_new },
	.gr       = { 0x00000001, ga102_gr_new },
	.nvdec    = { 0x00000001, ga102_nvdec_new },
	.sec2     = { 0x00000001, ga102_sec2_new },
};
@@ -2647,6 +2648,7 @@ nv173_chipset = {
	.disp     = { 0x00000001, ga102_disp_new },
	.dma      = { 0x00000001, gv100_dma_new },
	.fifo     = { 0x00000001, ga102_fifo_new },
	.gr       = { 0x00000001, ga102_gr_new },
	.nvdec    = { 0x00000001, ga102_nvdec_new },
	.sec2     = { 0x00000001, ga102_sec2_new },
};
@@ -2676,6 +2678,7 @@ nv174_chipset = {
	.disp     = { 0x00000001, ga102_disp_new },
	.dma      = { 0x00000001, gv100_dma_new },
	.fifo     = { 0x00000001, ga102_fifo_new },
	.gr       = { 0x00000001, ga102_gr_new },
	.nvdec    = { 0x00000001, ga102_nvdec_new },
	.sec2     = { 0x00000001, ga102_sec2_new },
};
@@ -2705,6 +2708,7 @@ nv176_chipset = {
	.disp     = { 0x00000001, ga102_disp_new },
	.dma      = { 0x00000001, gv100_dma_new },
	.fifo     = { 0x00000001, ga102_fifo_new },
	.gr       = { 0x00000001, ga102_gr_new },
	.nvdec    = { 0x00000001, ga102_nvdec_new },
	.sec2     = { 0x00000001, ga102_sec2_new },
};
@@ -2734,6 +2738,7 @@ nv177_chipset = {
	.disp     = { 0x00000001, ga102_disp_new },
	.dma      = { 0x00000001, gv100_dma_new },
	.fifo     = { 0x00000001, ga102_fifo_new },
	.gr       = { 0x00000001, ga102_gr_new },
	.nvdec    = { 0x00000001, ga102_nvdec_new },
	.sec2     = { 0x00000001, ga102_sec2_new },
};
+2 −0
Original line number Diff line number Diff line
@@ -40,6 +40,7 @@ nvkm-y += nvkm/engine/gr/gp108.o
nvkm-y += nvkm/engine/gr/gp10b.o
nvkm-y += nvkm/engine/gr/gv100.o
nvkm-y += nvkm/engine/gr/tu102.o
nvkm-y += nvkm/engine/gr/ga102.o

nvkm-y += nvkm/engine/gr/ctxnv40.o
nvkm-y += nvkm/engine/gr/ctxnv50.o
@@ -63,3 +64,4 @@ nvkm-y += nvkm/engine/gr/ctxgp104.o
nvkm-y += nvkm/engine/gr/ctxgp107.o
nvkm-y += nvkm/engine/gr/ctxgv100.o
nvkm-y += nvkm/engine/gr/ctxtu102.o
nvkm-y += nvkm/engine/gr/ctxga102.o
Loading