Skip to content

Commit

Permalink
total rebase
Browse files Browse the repository at this point in the history
removes the Flo Adreno mess and other stuff we don't want or need.

Change-Id: I09cb9ae4c8f861228fc4f0d4462ad5c463278c40

Revert "msm: vidc: Initialize kernel space stack variables"

This reverts commit 7694219.

Change-Id: I62561d201cc43bbe4d3b752745220ec3b6074720

Revert "msm: mdp: Update sync pt. behaviour"

This reverts commit 9d76c84.

Revert "gpu: msm2: Sync with upstream"

This reverts commit 5f19660.

Revert "msm: We are using the msm2 gpu driver, not msm"

This reverts commit 34b44d5.

Revert "iommu/core: pass a user-provided token to fault handlers"

This reverts commit 73c8716.

Revert "msm: kgsl: Add intermediate power levels"

This reverts commit e9d771e.

Revert "msm: kgsl: Add separate GPU shader memory mapping"

This reverts commit b90cfb0.

Revert "gpu: msm: Add new Adreno driver"

This reverts commit 948ae82.
  • Loading branch information
Jake Whatley committed Apr 7, 2014
1 parent 43c2a38 commit 068449a
Show file tree
Hide file tree
Showing 100 changed files with 130 additions and 42,734 deletions.
13 changes: 3 additions & 10 deletions Documentation/devicetree/bindings/gpu/adreno.txt
Expand Up @@ -5,12 +5,7 @@ Qualcomm Adreno GPU
Required properties:
- label: A string used as a descriptive name for the device.
- compatible: Must be "qcom,kgsl-3d0" and "qcom,kgsl-3d"
- reg: Specifies the register base address and size. The second interval
specifies the shader memory base address and size.
- reg-names: Resource names used for the physical address of device registers
and shader memory. "kgsl_3d0_reg_memory" gives the physical address
and length of device registers while "kgsl_3d0_shader_memory" gives
physical address and length of device shader memory.
- reg: Specifies the base address and address size for this device.
- interrupts: Interrupt mapping for GPU IRQ.
- interrupt-names: String property to describe the name of the interrupt.
- qcom,id: An integer used as an identification number for the device.
Expand Down Expand Up @@ -62,7 +57,6 @@ DCVS Core info
Optional Properties:
- qcom,initial-powerlevel: This value indicates which qcom,gpu-pwrlevel should be used at start time
and when coming back out of resume
- qcom,step-pwrlevel: How many qcom,gpu-pwrlevel should be decremented at once
- qcom,idle-timeout: This property represents the time in microseconds for idle timeout.
- qcom,nap-allowed: Boolean. <0> or <1> to disable/enable nap.
- qcom,chipid: If it exists this property is used to replace
Expand All @@ -75,9 +69,8 @@ Example of A330 GPU in MSM8974:
qcom,kgsl-3d0@fdb00000 {
label = "kgsl-3d0";
compatible = "qcom,kgsl-3d0", "qcom,kgsl-3d";
reg = <0xfdb00000 0x10000
0xfdb20000 0x10000>;
reg-names = "kgsl_3d0_reg_memory", "kgsl_3d0_shader_memory";
reg = <0xfdb00000 0x20000>;
reg-names = "kgsl_3d0_reg_memory";
interrupts = <0 33 0>;
interrupt-names = "kgsl_3d0_irq";
qcom,id = <0>;
Expand Down
42 changes: 12 additions & 30 deletions arch/arm/boot/dts/msm8974-gpu.dtsi
Expand Up @@ -13,33 +13,29 @@
qcom,kgsl-3d0@fdb00000 {
label = "kgsl-3d0";
compatible = "qcom,kgsl-3d0", "qcom,kgsl-3d";
reg = <0xfdb00000 0x10000
0xfdb20000 0x10000>;
reg-names = "kgsl_3d0_reg_memory" , "kgsl_3d0_shader_memory";
reg = <0xfdb00000 0x20000>;
reg-names = "kgsl_3d0_reg_memory";
interrupts = <0 33 0>;
interrupt-names = "kgsl_3d0_irq";
qcom,id = <0>;

qcom,chipid = <0x03030000>;

qcom,initial-pwrlevel = <2>;
qcom,step-pwrlevel = <2>;
qcom,initial-pwrlevel = <1>;

qcom,idle-timeout = <83>; //<HZ/12>
qcom,nap-allowed = <1>;
qcom,clk-map = <0x00000016>; //KGSL_CLK_CORE | KGSL_CLK_IFACE | KGSL_CLK_MEM_IFACE

/* Bus Scale Settings */
qcom,msm-bus,name = "grp3d";
qcom,msm-bus,num-cases = <6>;
qcom,msm-bus,num-cases = <4>;
qcom,msm-bus,active-only = <0>;
qcom,msm-bus,num-paths = <2>;
qcom,msm-bus,vectors-KBps =
<26 512 0 0>, <89 604 0 0>,
<26 512 0 2200000>, <89 604 0 3000000>,
<26 512 0 4000000>, <89 604 0 3000000>,
<26 512 0 4000000>, <89 604 0 4500000>,
<26 512 0 6400000>, <89 604 0 4500000>,
<26 512 0 2000000>, <89 604 0 3000000>,
<26 512 0 4000000>, <89 604 0 5000000>,
<26 512 0 6400000>, <89 604 0 7600000>;

/* GDSC oxili regulators */
Expand All @@ -59,41 +55,27 @@

qcom,gpu-pwrlevel@0 {
reg = <0>;
qcom,gpu-freq = <450000000>;
qcom,bus-freq = <5>;
qcom,gpu-freq = <500000000>;
qcom,bus-freq = <3>;
qcom,io-fraction = <0>;
};

qcom,gpu-pwrlevel@1 {
reg = <1>;
qcom,gpu-freq = <300000000>;
qcom,bus-freq = <4>;
qcom,gpu-freq = <333000000>;
qcom,bus-freq = <2>;
qcom,io-fraction = <33>;
};

qcom,gpu-pwrlevel@2 {
reg = <2>;
qcom,gpu-freq = <300000000>;
qcom,bus-freq = <3>;
qcom,io-fraction = <33>;
};

qcom,gpu-pwrlevel@3 {
reg = <3>;
qcom,gpu-freq = <200000000>;
qcom,bus-freq = <2>;
qcom,io-fraction = <100>;
};

qcom,gpu-pwrlevel@4 {
reg = <4>;
qcom,gpu-freq = <200000000>;
qcom,bus-freq = <1>;
qcom,io-fraction = <100>;
};

qcom,gpu-pwrlevel@5 {
reg = <5>;
qcom,gpu-pwrlevel@3 {
reg = <3>;
qcom,gpu-freq = <27000000>;
qcom,bus-freq = <0>;
qcom,io-fraction = <0>;
Expand Down
66 changes: 0 additions & 66 deletions arch/arm/boot/dts/msm8974-v2.dtsi

This file was deleted.

File renamed without changes.
13 changes: 4 additions & 9 deletions arch/arm/mach-msm/board-8064-gpu.c
Expand Up @@ -93,13 +93,13 @@ static struct msm_bus_vectors grp3d_low_vectors[] = {
.src = MSM_BUS_MASTER_GRAPHICS_3D,
.dst = MSM_BUS_SLAVE_EBI_CH0,
.ab = 0,
.ib = KGSL_CONVERT_TO_MBPS(1000),
.ib = KGSL_CONVERT_TO_MBPS(1700),
},
{
.src = MSM_BUS_MASTER_GRAPHICS_3D_PORT1,
.dst = MSM_BUS_SLAVE_EBI_CH0,
.ab = 0,
.ib = KGSL_CONVERT_TO_MBPS(1000),
.ib = KGSL_CONVERT_TO_MBPS(1700),
},
};

Expand Down Expand Up @@ -182,12 +182,6 @@ static struct resource kgsl_3d0_resources[] = {
{
.name = KGSL_3D0_REG_MEMORY,
.start = 0x04300000, /* GFX3D address */
.end = 0x0430ffff,
.flags = IORESOURCE_MEM,
},
{
.name = KGSL_3D0_SHADER_MEMORY,
.start = 0x04310000, /* Shader Mem Address */
.end = 0x0431ffff,
.flags = IORESOURCE_MEM,
},
Expand Down Expand Up @@ -255,7 +249,8 @@ static struct kgsl_device_platform_data kgsl_3d0_pdata = {
.num_levels = 5,
.set_grp_async = NULL,
.idle_timeout = HZ/10,
.strtstp_sleepwake = true,
.nap_allowed = true,
.strtstp_sleepwake = false,
.clk_map = KGSL_CLK_CORE | KGSL_CLK_IFACE | KGSL_CLK_MEM_IFACE,
#ifdef CONFIG_MSM_BUS_SCALING
.bus_scale_table = &grp3d_bus_scale_pdata,
Expand Down
6 changes: 0 additions & 6 deletions arch/arm/mach-msm/board-8930-gpu.c
Expand Up @@ -88,12 +88,6 @@ static struct resource kgsl_3d0_resources[] = {
{
.name = KGSL_3D0_REG_MEMORY,
.start = 0x04300000, /* GFX3D address */
.end = 0x0430ffff,
.flags = IORESOURCE_MEM,
},
{
.name = KGSL_3D0_SHADER_MEMORY,
.start = 0x04310000,
.end = 0x0431ffff,
.flags = IORESOURCE_MEM,
},
Expand Down
10 changes: 0 additions & 10 deletions arch/arm/mach-msm/board-8960.c
Expand Up @@ -2923,18 +2923,8 @@ static void __init msm8960_gfx_init(void)
kgsl_3d0_pdata->chipid = ADRENO_CHIPID(3, 2, 1, 0);
/* 8960PRO nominal clock rate is 320Mhz */
kgsl_3d0_pdata->pwrlevel[1].gpu_freq = 320000000;

/*
* If this an A320 GPU device (MSM8960AB), then
* switch the resource table to 8960AB, to reflect the
* separate register and shader memory mapping used in A320.
*/

msm_kgsl_3d0.num_resources = kgsl_num_resources_8960ab;
msm_kgsl_3d0.resource = kgsl_3d0_resources_8960ab;
} else {
kgsl_3d0_pdata->iommu_count = 1;

if (SOCINFO_VERSION_MAJOR(soc_platform_version) == 1) {
kgsl_3d0_pdata->pwrlevel[0].gpu_freq = 320000000;
kgsl_3d0_pdata->pwrlevel[1].gpu_freq = 266667000;
Expand Down
32 changes: 6 additions & 26 deletions arch/arm/mach-msm/devices-8960.c
Expand Up @@ -3243,30 +3243,7 @@ struct msm_bus_scale_pdata grp2d1_bus_scale_pdata = {
};
#endif

struct resource kgsl_3d0_resources_8960ab[] = {
{
.name = KGSL_3D0_REG_MEMORY,
.start = 0x04300000, /* GFX3D address */
.end = 0x0430ffff,
.flags = IORESOURCE_MEM,
},
{
.name = KGSL_3D0_SHADER_MEMORY,
.start = 0x04310000, /* Shader Mem Address (8960AB) */
.end = 0x0431ffff,
.flags = IORESOURCE_MEM,
},
{
.name = KGSL_3D0_IRQ,
.start = GFX3D_IRQ,
.end = GFX3D_IRQ,
.flags = IORESOURCE_IRQ,
},
};

int kgsl_num_resources_8960ab = ARRAY_SIZE(kgsl_3d0_resources_8960ab);

static struct resource kgsl_3d0_resources_8960[] = {
static struct resource kgsl_3d0_resources[] = {
{
.name = KGSL_3D0_REG_MEMORY,
.start = 0x04300000, /* GFX3D address */
Expand Down Expand Up @@ -3337,6 +3314,7 @@ static struct kgsl_device_platform_data kgsl_3d0_pdata = {
.num_levels = ARRAY_SIZE(grp3d_freq) + 1,
.set_grp_async = NULL,
.idle_timeout = HZ/12,
.nap_allowed = true,
.clk_map = KGSL_CLK_CORE | KGSL_CLK_IFACE | KGSL_CLK_MEM_IFACE,
#ifdef CONFIG_MSM_BUS_SCALING
.bus_scale_table = &grp3d_bus_scale_pdata,
Expand All @@ -3349,8 +3327,8 @@ static struct kgsl_device_platform_data kgsl_3d0_pdata = {
struct platform_device msm_kgsl_3d0 = {
.name = "kgsl-3d0",
.id = 0,
.num_resources = ARRAY_SIZE(kgsl_3d0_resources_8960),
.resource = kgsl_3d0_resources_8960,
.num_resources = ARRAY_SIZE(kgsl_3d0_resources),
.resource = kgsl_3d0_resources,
.dev = {
.platform_data = &kgsl_3d0_pdata,
},
Expand Down Expand Up @@ -3403,6 +3381,7 @@ static struct kgsl_device_platform_data kgsl_2d0_pdata = {
.num_levels = ARRAY_SIZE(grp2d_freq) + 1,
.set_grp_async = NULL,
.idle_timeout = HZ/5,
.nap_allowed = true,
.clk_map = KGSL_CLK_CORE | KGSL_CLK_IFACE,
#ifdef CONFIG_MSM_BUS_SCALING
.bus_scale_table = &grp2d0_bus_scale_pdata,
Expand Down Expand Up @@ -3469,6 +3448,7 @@ static struct kgsl_device_platform_data kgsl_2d1_pdata = {
.num_levels = ARRAY_SIZE(grp2d_freq) + 1,
.set_grp_async = NULL,
.idle_timeout = HZ/5,
.nap_allowed = true,
.clk_map = KGSL_CLK_CORE | KGSL_CLK_IFACE,
#ifdef CONFIG_MSM_BUS_SCALING
.bus_scale_table = &grp2d1_bus_scale_pdata,
Expand Down
3 changes: 0 additions & 3 deletions arch/arm/mach-msm/devices.h
Expand Up @@ -330,9 +330,6 @@ extern struct platform_device msm_kgsl_3d0;
extern struct platform_device msm_kgsl_2d0;
extern struct platform_device msm_kgsl_2d1;

extern struct resource kgsl_3d0_resources_8960ab[];
extern int kgsl_num_resources_8960ab;

extern struct platform_device msm_mipi_dsi1_device;
extern struct platform_device mipi_dsi_device;
extern struct platform_device msm_lvds_device;
Expand Down
20 changes: 3 additions & 17 deletions arch/arm/mach-msm/include/mach/kgsl.h
@@ -1,4 +1,4 @@
/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved.
/* Copyright (c) 2012, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
Expand All @@ -20,15 +20,13 @@
#define KGSL_CLK_MEM 0x00000008
#define KGSL_CLK_MEM_IFACE 0x00000010
#define KGSL_CLK_AXI 0x00000020
#define KGSL_CLK_ALT_MEM_IFACE 0x00000040

#define KGSL_MAX_PWRLEVELS 10
#define KGSL_MAX_PWRLEVELS 5

#define KGSL_CONVERT_TO_MBPS(val) \
(val*1000*1000U)

#define KGSL_3D0_REG_MEMORY "kgsl_3d0_reg_memory"
#define KGSL_3D0_SHADER_MEMORY "kgsl_3d0_shader_memory"
#define KGSL_3D0_IRQ "kgsl_3d0_irq"
#define KGSL_2D0_REG_MEMORY "kgsl_2d0_reg_memory"
#define KGSL_2D0_IRQ "kgsl_2d0_irq"
Expand All @@ -51,19 +49,9 @@ struct kgsl_iommu_ctx {
enum kgsl_iommu_context_id ctx_id;
};

/*
* struct kgsl_device_iommu_data - Struct holding iommu context data obtained
* from dtsi file
* @iommu_ctxs: Pointer to array of struct hoding context name and id
* @iommu_ctx_count: Number of contexts defined in the dtsi file
* @iommu_halt_enable: Indicated if smmu halt h/w feature is supported
* @physstart: Start of iommu registers physical address
* @physend: End of iommu registers physical address
*/
struct kgsl_device_iommu_data {
const struct kgsl_iommu_ctx *iommu_ctxs;
int iommu_ctx_count;
int iommu_halt_enable;
unsigned int physstart;
unsigned int physend;
};
Expand All @@ -81,15 +69,13 @@ struct kgsl_device_platform_data {
int (*set_grp_async)(void);
unsigned int idle_timeout;
bool strtstp_sleepwake;
unsigned int nap_allowed;
unsigned int clk_map;
unsigned int idle_needed;
unsigned int step_mul;
struct msm_bus_scale_pdata *bus_scale_table;
struct kgsl_device_iommu_data *iommu_data;
int iommu_count;
struct msm_dcvs_core_info *core_info;
struct coresight_device *csdev;
struct coresight_platform_data *coresight_pdata;
unsigned int chipid;
};

Expand Down

0 comments on commit 068449a

Please sign in to comment.