Revert "video: tegra: gk20a: add PBUS interrupt"
Terje Bergstrom [Wed, 23 Oct 2013 11:36:59 +0000 (04:36 -0700)]
This reverts commit 845ccb7dc90c3e0f1194bec1ee2bfd62d13e06ce.

Change-Id: Ifcdf147901aa11c88d87cfdacf80cc41bf2ccc40
Reviewed-on: http://git-master/r/302819
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Tested-by: Terje Bergstrom <tbergstrom@nvidia.com>

drivers/video/tegra/host/gk20a/clk_gk20a.c
drivers/video/tegra/host/gk20a/gk20a.c
drivers/video/tegra/host/gk20a/hw_bus_gk20a.h
drivers/video/tegra/host/gk20a/hw_mc_gk20a.h
drivers/video/tegra/host/gk20a/hw_timer_gk20a.h [deleted file]

index 4ba1418..34f55d0 100644 (file)
@@ -641,10 +641,7 @@ int gk20a_init_clk_support(struct gk20a *g)
        if (err)
                return err;
 
-       gk20a_writel(g,
-               timer_pri_timeout_r(),
-               timer_pri_timeout_period_f(0x200) ||
-               timer_pri_timeout_en_m());
+       gk20a_writel(g, 0x9080, 0x00100000);
 
        return err;
 }
index ca8d81b..ecd63b4 100644 (file)
@@ -462,35 +462,6 @@ static irqreturn_t gk20a_intr_isr(int irq, void *dev_id)
        return IRQ_WAKE_THREAD;
 }
 
-static void gk20a_pbus_isr(g)
-{
-       u32 val;
-       val = gk20a_readl(g, bus_intr_0_r());
-       if (val & (bus_intr_0_pri_squash_m() |
-                       bus_intr_0_pri_fecserr_m() |
-                       bus_intr_0_pri_timeout_m()))
-       {
-               nvhost_err(&g->dev->dev,
-                       "NV_PTIMER_PRI_TIMEOUT_SAVE_0: 0x%x\n",
-                       gk20a_readl(g, timer_pri_timeout_save_0_r()));
-               nvhost_err(&g->dev->dev,
-                       "NV_PTIMER_PRI_TIMEOUT_SAVE_1: 0x%x\n",
-                       gk20a_readl(g, timer_pri_timeout_save_1_r()));
-               nvhost_err(&g->dev->dev,
-                       "NV_PTIMER_PRI_TIMEOUT_FECS_ERRCODE: 0x%x\n",
-                       gk20a_readl(g, timer_pri_timeout_fecs_errcode_r()));
-               val &= ~(bus_intr_0_pri_squash_m() |
-                       bus_intr_0_pri_fecserr_m() |
-                       bus_intr_0_pri_timeout_m());
-       }
-
-       if (val)
-               nvhost_err(&g->dev->dev,
-                       "Unhandled pending pbus interrupt\n");
-
-       gk20a_writel(g, bus_intr_0_r(), val);
-}
-
 static irqreturn_t gk20a_intr_thread(int irq, void *dev_id)
 {
        struct gk20a *g = dev_id;
@@ -510,8 +481,6 @@ static irqreturn_t gk20a_intr_thread(int irq, void *dev_id)
                gk20a_priv_ring_isr(g);
        if (mc_intr_0 & mc_intr_0_ltc_pending_f())
                gk20a_mm_ltc_isr(g);
-       if (mc_intr_0 & mc_intr_0_pbus_pending_f())
-               gk20a_pbus_isr(g);
        if (mc_intr_0)
                nvhost_dbg_info("leaving isr with interrupt pending 0x%08x",
                                mc_intr_0);
@@ -762,11 +731,6 @@ int nvhost_gk20a_finalize_poweron(struct platform_device *dev)
        gk20a_writel(g, mc_intr_en_0_r(),
                mc_intr_en_0_inta_hardware_f());
 
-
-       gk20a_writel(g, bus_intr_en_0_r(),
-                       bus_intr_en_0_pri_squash_m() |
-                       bus_intr_en_0_pri_fecserr_m() |
-                       bus_intr_en_0_pri_timeout_m());
        gk20a_reset_priv_ring(g);
 
        /* TBD: move this after graphics init in which blcg/slcg is enabled.
index ebf8a87..a6c9029 100644 (file)
@@ -70,36 +70,4 @@ static inline u32 bus_bar1_block_ptr_shift_v(void)
 {
        return 0x0000000c;
 }
-static inline u32 bus_intr_0_r(void)
-{
-       return 0x00001100;
-}
-static inline u32 bus_intr_0_pri_squash_m(void)
-{
-       return 0x1 << 1;
-}
-static inline u32 bus_intr_0_pri_fecserr_m(void)
-{
-       return 0x1 << 2;
-}
-static inline u32 bus_intr_0_pri_timeout_m(void)
-{
-       return 0x1 << 3;
-}
-static inline u32 bus_intr_en_0_r(void)
-{
-       return 0x00001140;
-}
-static inline u32 bus_intr_en_0_pri_squash_m(void)
-{
-       return 0x1 << 1;
-}
-static inline u32 bus_intr_en_0_pri_fecserr_m(void)
-{
-       return 0x1 << 2;
-}
-static inline u32 bus_intr_en_0_pri_timeout_m(void)
-{
-       return 0x1 << 3;
-}
 #endif
index 53fdc4d..e6763c0 100644 (file)
@@ -74,10 +74,6 @@ static inline u32 mc_intr_0_priv_ring_pending_f(void)
 {
        return 0x40000000;
 }
-static inline u32 mc_intr_0_pbus_pending_f(void)
-{
-       return 0x10000000;
-}
 static inline u32 mc_intr_mask_0_r(void)
 {
        return 0x00000640;
diff --git a/drivers/video/tegra/host/gk20a/hw_timer_gk20a.h b/drivers/video/tegra/host/gk20a/hw_timer_gk20a.h
deleted file mode 100644 (file)
index 22bc50a..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright (c) 2013, 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_timer_gk20a_h_
-#define _hw_timer_gk20a_h_
-
-static inline u32 timer_pri_timeout_r(void)
-{
-       return 0x00009080;
-}
-static inline u32 timer_pri_timeout_period_f(u32 v)
-{
-       return (v & 0xffffff) << 0;
-}
-static inline u32 timer_pri_timeout_period_m(void)
-{
-       return 0xffffff << 0;
-}
-static inline u32 timer_pri_timeout_period_v(u32 r)
-{
-       return (r >> 0) & 0xffffff;
-}
-static inline u32 timer_pri_timeout_en_f(u32 v)
-{
-       return (v & 0x1) << 31;
-}
-static inline u32 timer_pri_timeout_en_m(void)
-{
-       return 0x1 << 31;
-}
-static inline u32 timer_pri_timeout_en_v(u32 r)
-{
-       return (r >> 31) & 0x1;
-}
-static inline u32 timer_pri_timeout_en_en_enabled_f(void)
-{
-       return 0x80000000;
-}
-static inline u32 timer_pri_timeout_en_en_disabled_f(void)
-{
-       return 0x0;
-}
-static inline u32 timer_pri_timeout_save_0_r(void)
-{
-       return 0x00009084;
-}
-static inline u32 timer_pri_timeout_save_1_r(void)
-{
-       return 0x00009088;
-}
-static inline u32 timer_pri_timeout_fecs_errcode_r(void)
-{
-       return 0x0000908c;
-}
-#endif