gpu: nvgpu: Add GPU driver for GM20B
Bo Yan [Mon, 14 Apr 2014 19:03:27 +0000 (12:03 -0700)]
this moves GM20B driver to the new location

Change-Id: I5fde14e114a8db79738a4c61849912b1ae225fb5

36 files changed:
drivers/gpu/Makefile
drivers/gpu/nvgpu/Makefile [new file with mode: 0644]
drivers/gpu/nvgpu/gk20a/Makefile
drivers/gpu/nvgpu/gm20b/Makefile [moved from drivers/video/tegra/host/gm20b/Makefile with 56% similarity]
drivers/gpu/nvgpu/gm20b/fb_gm20b.c [moved from drivers/video/tegra/host/gm20b/fb_gm20b.c with 100% similarity]
drivers/gpu/nvgpu/gm20b/fb_gm20b.h [moved from drivers/video/tegra/host/gm20b/fb_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/gm20b_gating_reglist.c [moved from drivers/video/tegra/host/gm20b/gm20b_gating_reglist.c with 100% similarity]
drivers/gpu/nvgpu/gm20b/gm20b_gating_reglist.h [moved from drivers/video/tegra/host/gm20b/gm20b_gating_reglist.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/gr_gm20b.c [moved from drivers/video/tegra/host/gm20b/gr_gm20b.c with 100% similarity]
drivers/gpu/nvgpu/gm20b/gr_gm20b.h [moved from drivers/video/tegra/host/gm20b/gr_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hal_gm20b.c [moved from drivers/video/tegra/host/gm20b/hal_gm20b.c with 100% similarity]
drivers/gpu/nvgpu/gm20b/hal_gm20b.h [moved from drivers/video/tegra/host/gm20b/hal_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_bus_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_bus_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_ccsr_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_ccsr_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_chiplet_pwr_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_chiplet_pwr_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_ctxsw_prog_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_ctxsw_prog_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_fb_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_fb_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_fifo_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_fifo_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_flush_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_flush_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_gmmu_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_gmmu_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_gr_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_gr_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_ltc_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_ltc_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_mc_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_mc_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_pbdma_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_pbdma_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_pri_ringmaster_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_pri_ringmaster_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_pri_ringstation_sys_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_pri_ringstation_sys_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_proj_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_proj_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_pwr_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_pwr_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_ram_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_ram_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_therm_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_therm_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_timer_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_timer_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_top_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_top_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/hw_trim_gm20b.h [moved from drivers/video/tegra/host/gm20b/hw_trim_gm20b.h with 100% similarity]
drivers/gpu/nvgpu/gm20b/ltc_gm20b.c [moved from drivers/video/tegra/host/gm20b/ltc_gm20b.c with 100% similarity]
drivers/gpu/nvgpu/gm20b/ltc_gm20b.h [moved from drivers/video/tegra/host/gm20b/ltc_gm20b.h with 100% similarity]
drivers/video/tegra/host/gm20b/hw_fuse_gm20b.h [deleted file]

index 89cd272..1e33c82 100644 (file)
@@ -1,3 +1,3 @@
 obj-y                  += drm/ vga/
 obj-$(CONFIG_TEGRA_HOST1X)     += host1x/
-obj-$(CONFIG_GK20A)    += nvgpu/gk20a/
+obj-$(CONFIG_GK20A)    += nvgpu/
diff --git a/drivers/gpu/nvgpu/Makefile b/drivers/gpu/nvgpu/Makefile
new file mode 100644 (file)
index 0000000..0fb6090
--- /dev/null
@@ -0,0 +1,7 @@
+GCOV_PROFILE := y
+
+ccflags-y += -Wno-multichar
+ccflags-y += -Werror
+
+obj-$(CONFIG_GK20A)    += gk20a/
+obj-$(CONFIG_GK20A)    += gm20b/
index cba3168..81ae027 100644 (file)
@@ -1,5 +1,5 @@
-
 GCOV_PROFILE := y
+ccflags-y += -Idrivers/gpu/nvgpu
 ccflags-y += -Idrivers/devfreq
 ccflags-y += -Wno-multichar
 ccflags-y += -Werror
similarity index 56%
rename from drivers/video/tegra/host/gm20b/Makefile
rename to drivers/gpu/nvgpu/gm20b/Makefile
index 4be003a..42c3cec 100644 (file)
@@ -1,13 +1,11 @@
 GCOV_PROFILE := y
-ccflags-y += -Idrivers/video/tegra/host
+ccflags-y += -Idrivers/gpu/nvgpu
 ccflags-y += -Wno-multichar
 
-nvhost-gm20b-objs  = \
+obj-$(CONFIG_GK20A)  = \
        hal_gm20b.o \
        ltc_gm20b.o \
        gr_gm20b.o \
        gr_gm20b.o \
        fb_gm20b.o \
        gm20b_gating_reglist.o
-
-obj-$(CONFIG_TEGRA_GK20A) += nvhost-gm20b.o
diff --git a/drivers/video/tegra/host/gm20b/hw_fuse_gm20b.h b/drivers/video/tegra/host/gm20b/hw_fuse_gm20b.h
deleted file mode 100644 (file)
index bd32951..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright (c) 2014, NVIDIA CORPORATION.  All rights reserved.
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms and conditions of the GNU General Public License,
- * version 2, as published by the Free Software Foundation.
- *
- * This program is distributed in the hope it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
- * more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-/*
- * Function naming determines intended use:
- *
- *     <x>_r(void) : Returns the offset for register <x>.
- *
- *     <x>_o(void) : Returns the offset for element <x>.
- *
- *     <x>_w(void) : Returns the word offset for word (4 byte) element <x>.
- *
- *     <x>_<y>_s(void) : Returns size of field <y> of register <x> in bits.
- *
- *     <x>_<y>_f(u32 v) : Returns a value based on 'v' which has been shifted
- *         and masked to place it at field <y> of register <x>.  This value
- *         can be |'d with others to produce a full register value for
- *         register <x>.
- *
- *     <x>_<y>_m(void) : Returns a mask for field <y> of register <x>.  This
- *         value can be ~'d and then &'d to clear the value of field <y> for
- *         register <x>.
- *
- *     <x>_<y>_<z>_f(void) : Returns the constant value <z> after being shifted
- *         to place it at field <y> of register <x>.  This value can be |'d
- *         with others to produce a full register value for <x>.
- *
- *     <x>_<y>_v(u32 r) : Returns the value of field <y> from a full register
- *         <x> value 'r' after being shifted to place its LSB at bit 0.
- *         This value is suitable for direct comparison with other unshifted
- *         values appropriate for use in field <y> of register <x>.
- *
- *     <x>_<y>_<z>_v(void) : Returns the constant value for <z> defined for
- *         field <y> of register <x>.  This value is suitable for direct
- *         comparison with unshifted values appropriate for use in field <y>
- *         of register <x>.
- */
-#ifndef _hw_fuse_gm20b_h_
-#define _hw_fuse_gm20b_h_
-
-static inline u32 fuse_status_opt_tpc_gpc_r(u32 i)
-{
-       return 0x00021c38 + i*4;
-}
-#endif