* [PATCH 0/6] drm/msm: Work only with DT supported kernels
@ 2015-11-18 11:19 Archit Taneja
2015-11-18 11:19 ` [PATCH 1/6] drm/msm: Remove non-DT code in msm_drv Archit Taneja
` (5 more replies)
0 siblings, 6 replies; 11+ messages in thread
From: Archit Taneja @ 2015-11-18 11:19 UTC (permalink / raw)
To: dri-devel, robdclark; +Cc: linux-arm-msm
The drm/msm driver supports non-DT kernels. This was used mainly for
getting the driver to run on older downstream kernels (v3.4 and before).
This isn't needed anymore. So remove the CONFIG_OF code.
Also, provide a cleaner set of DT compatible strings for the MDP driver.
The last patch which removes CONFIG_OF checks for adreno is something I'm
not sure about. It can be discarded if it isn't right.
Archit Taneja (6):
drm/msm: Remove non-DT code in msm_drv
drm/msm: Update compatible strings for mdp
dt-bindings: drm/msm: Update MDP bindings
drm/msm/mdp: Remove CONFIG_OF checks from MDP drivers
drm/msm/hdmi: remove CONFIG_OF checks
drm/msm/adreno: Remove CONFIG_OF checks
.../devicetree/bindings/display/msm/mdp.txt | 26 +++++--
drivers/gpu/drm/msm/adreno/adreno_device.c | 52 -------------
drivers/gpu/drm/msm/hdmi/hdmi.c | 87 ++++------------------
drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c | 20 +----
drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c | 4 +-
drivers/gpu/drm/msm/msm_drv.c | 76 ++++---------------
drivers/gpu/drm/msm/msm_drv.h | 7 +-
7 files changed, 55 insertions(+), 217 deletions(-)
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 1/6] drm/msm: Remove non-DT code in msm_drv
2015-11-18 11:19 [PATCH 0/6] drm/msm: Work only with DT supported kernels Archit Taneja
@ 2015-11-18 11:19 ` Archit Taneja
2015-11-18 11:19 ` [PATCH 2/6] drm/msm: Update compatible strings for mdp Archit Taneja
` (4 subsequent siblings)
5 siblings, 0 replies; 11+ messages in thread
From: Archit Taneja @ 2015-11-18 11:19 UTC (permalink / raw)
To: dri-devel, robdclark; +Cc: linux-arm-msm, Archit Taneja
Support for non-DT kernels was mainly to use v3.4 downstream kernels.
This is no longer a priority now as we have reasonable support upstream.
Remove CONFIG_OF from the top level msm_drv.c file. While we're at it,
clean up the data matching process using of_device_get_match_data.
Signed-off-by: Archit Taneja <architt@codeaurora.org>
---
drivers/gpu/drm/msm/msm_drv.c | 74 ++++++++-----------------------------------
drivers/gpu/drm/msm/msm_drv.h | 7 +---
2 files changed, 15 insertions(+), 66 deletions(-)
diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
index b88ce51..06df8aa 100644
--- a/drivers/gpu/drm/msm/msm_drv.c
+++ b/drivers/gpu/drm/msm/msm_drv.c
@@ -237,20 +237,9 @@ static int msm_unload(struct drm_device *dev)
static int get_mdp_ver(struct platform_device *pdev)
{
-#ifdef CONFIG_OF
- static const struct of_device_id match_types[] = { {
- .compatible = "qcom,mdss_mdp",
- .data = (void *)5,
- }, {
- /* end node */
- } };
struct device *dev = &pdev->dev;
- const struct of_device_id *match;
- match = of_match_node(match_types, dev->of_node);
- if (match)
- return (int)(unsigned long)match->data;
-#endif
- return 4;
+
+ return (int) (unsigned long) of_device_get_match_data(dev);
}
#include <linux/of_address.h>
@@ -258,10 +247,10 @@ static int get_mdp_ver(struct platform_device *pdev)
static int msm_init_vram(struct drm_device *dev)
{
struct msm_drm_private *priv = dev->dev_private;
+ struct device_node *node;
unsigned long size = 0;
int ret = 0;
-#ifdef CONFIG_OF
/* In the device-tree world, we could have a 'memory-region'
* phandle, which gives us a link to our "vram". Allocating
* is all nicely abstracted behind the dma api, but we need
@@ -278,7 +267,6 @@ static int msm_init_vram(struct drm_device *dev)
* as corruption on screen before we have a chance to
* load and do initial modeset)
*/
- struct device_node *node;
node = of_parse_phandle(dev->dev->of_node, "memory-region", 0);
if (node) {
@@ -288,14 +276,12 @@ static int msm_init_vram(struct drm_device *dev)
return ret;
size = r.end - r.start;
DRM_INFO("using VRAM carveout: %lx@%pa\n", size, &r.start);
- } else
-#endif
- /* if we have no IOMMU, then we need to use carveout allocator.
- * Grab the entire CMA chunk carved out in early startup in
- * mach-msm:
- */
- if (!iommu_present(&platform_bus_type)) {
+ /* if we have no IOMMU, then we need to use carveout allocator.
+ * Grab the entire CMA chunk carved out in early startup in
+ * mach-msm:
+ */
+ } else if (!iommu_present(&platform_bus_type)) {
DRM_INFO("using %s VRAM carveout\n", vram);
size = memparse(vram, NULL);
}
@@ -1035,9 +1021,9 @@ static const struct dev_pm_ops msm_pm_ops = {
* Componentized driver support:
*/
-#ifdef CONFIG_OF
-/* NOTE: the CONFIG_OF case duplicates the same code as exynos or imx
- * (or probably any other).. so probably some room for some helpers
+/*
+ * NOTE: duplication of the same code as exynos or imx (or probably any other).
+ * so probably some room for some helpers
*/
static int compare_of(struct device *dev, void *data)
{
@@ -1062,12 +1048,6 @@ static int add_components(struct device *dev, struct component_match **matchptr,
return 0;
}
-#else
-static int compare_dev(struct device *dev, void *data)
-{
- return dev == data;
-}
-#endif
static int msm_drm_bind(struct device *dev)
{
@@ -1091,35 +1071,9 @@ static const struct component_master_ops msm_drm_ops = {
static int msm_pdev_probe(struct platform_device *pdev)
{
struct component_match *match = NULL;
-#ifdef CONFIG_OF
+
add_components(&pdev->dev, &match, "connectors");
add_components(&pdev->dev, &match, "gpus");
-#else
- /* For non-DT case, it kinda sucks. We don't actually have a way
- * to know whether or not we are waiting for certain devices (or if
- * they are simply not present). But for non-DT we only need to
- * care about apq8064/apq8060/etc (all mdp4/a3xx):
- */
- static const char *devnames[] = {
- "hdmi_msm.0", "kgsl-3d0.0",
- };
- int i;
-
- DBG("Adding components..");
-
- for (i = 0; i < ARRAY_SIZE(devnames); i++) {
- struct device *dev;
-
- dev = bus_find_device_by_name(&platform_bus_type,
- NULL, devnames[i]);
- if (!dev) {
- dev_info(&pdev->dev, "still waiting for %s\n", devnames[i]);
- return -EPROBE_DEFER;
- }
-
- component_match_add(&pdev->dev, &match, compare_dev, dev);
- }
-#endif
pdev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
return component_master_add_with_match(&pdev->dev, &msm_drm_ops, match);
@@ -1138,8 +1092,8 @@ static const struct platform_device_id msm_id[] = {
};
static const struct of_device_id dt_match[] = {
- { .compatible = "qcom,mdp" }, /* mdp4 */
- { .compatible = "qcom,mdss_mdp" }, /* mdp5 */
+ { .compatible = "qcom,mdp", .data = (void *) 4 }, /* mdp4 */
+ { .compatible = "qcom,mdss_mdp", .data = (void *) 5 }, /* mdp5 */
{}
};
MODULE_DEVICE_TABLE(of, dt_match);
diff --git a/drivers/gpu/drm/msm/msm_drv.h b/drivers/gpu/drm/msm/msm_drv.h
index 3be7a56..7e9ef30 100644
--- a/drivers/gpu/drm/msm/msm_drv.h
+++ b/drivers/gpu/drm/msm/msm_drv.h
@@ -31,14 +31,9 @@
#include <linux/iommu.h>
#include <linux/types.h>
#include <linux/of_graph.h>
+#include <linux/of_device.h>
#include <asm/sizes.h>
-#ifndef CONFIG_OF
-#include <mach/board.h>
-#include <mach/socinfo.h>
-#include <mach/iommu_domains.h>
-#endif
-
#include <drm/drmP.h>
#include <drm/drm_atomic.h>
#include <drm/drm_atomic_helper.h>
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 2/6] drm/msm: Update compatible strings for mdp
2015-11-18 11:19 [PATCH 0/6] drm/msm: Work only with DT supported kernels Archit Taneja
2015-11-18 11:19 ` [PATCH 1/6] drm/msm: Remove non-DT code in msm_drv Archit Taneja
@ 2015-11-18 11:19 ` Archit Taneja
2015-11-18 11:19 ` [PATCH 3/6] dt-bindings: drm/msm: Update MDP bindings Archit Taneja
` (3 subsequent siblings)
5 siblings, 0 replies; 11+ messages in thread
From: Archit Taneja @ 2015-11-18 11:19 UTC (permalink / raw)
To: dri-devel, robdclark; +Cc: linux-arm-msm
Create distinct compatible strings for mdp4 and mdp5. Keep "qcom,mdss_mdp"
as is to support downstream kernels.
Signed-off-by: Archit Taneja <architt@codeaurora.org>
---
drivers/gpu/drm/msm/msm_drv.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
index 06df8aa..9a30807 100644
--- a/drivers/gpu/drm/msm/msm_drv.c
+++ b/drivers/gpu/drm/msm/msm_drv.c
@@ -1092,8 +1092,10 @@ static const struct platform_device_id msm_id[] = {
};
static const struct of_device_id dt_match[] = {
- { .compatible = "qcom,mdp", .data = (void *) 4 }, /* mdp4 */
- { .compatible = "qcom,mdss_mdp", .data = (void *) 5 }, /* mdp5 */
+ { .compatible = "qcom,mdp4", .data = (void *) 4 }, /* mdp4 */
+ { .compatible = "qcom,mdp5", .data = (void *) 5 }, /* mdp5 */
+ /* to support downstream DT files */
+ { .compatible = "qcom,mdss_mdp", .data = (void *) 5 }, /* mdp5 */
{}
};
MODULE_DEVICE_TABLE(of, dt_match);
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 3/6] dt-bindings: drm/msm: Update MDP bindings
2015-11-18 11:19 [PATCH 0/6] drm/msm: Work only with DT supported kernels Archit Taneja
2015-11-18 11:19 ` [PATCH 1/6] drm/msm: Remove non-DT code in msm_drv Archit Taneja
2015-11-18 11:19 ` [PATCH 2/6] drm/msm: Update compatible strings for mdp Archit Taneja
@ 2015-11-18 11:19 ` Archit Taneja
2015-11-18 15:26 ` Archit Taneja
2015-11-18 11:19 ` [PATCH 4/6] drm/msm/mdp: Remove CONFIG_OF checks from MDP drivers Archit Taneja
` (2 subsequent siblings)
5 siblings, 1 reply; 11+ messages in thread
From: Archit Taneja @ 2015-11-18 11:19 UTC (permalink / raw)
To: dri-devel, robdclark; +Cc: linux-arm-msm
Update DT bindings for mdp. We now have a more uniform and future-proof
set of compatible strings.
MDP5 bindings were missing. Add those and update details on the
clock-names properties.
Signed-off-by: Archit Taneja <architt@codeaurora.org>
---
.../devicetree/bindings/display/msm/mdp.txt | 26 +++++++++++++++-------
1 file changed, 18 insertions(+), 8 deletions(-)
diff --git a/Documentation/devicetree/bindings/display/msm/mdp.txt b/Documentation/devicetree/bindings/display/msm/mdp.txt
index 0833eda..a214f6c 100644
--- a/Documentation/devicetree/bindings/display/msm/mdp.txt
+++ b/Documentation/devicetree/bindings/display/msm/mdp.txt
@@ -2,18 +2,28 @@ Qualcomm adreno/snapdragon display controller
Required properties:
- compatible:
- * "qcom,mdp" - mdp4
+ * "qcom,mdp4" - mdp4
+ * "qcom,mdp5" - mdp5
- reg: Physical base address and length of the controller's registers.
- interrupts: The interrupt signal from the display controller.
- connectors: array of phandles for output device(s)
- clocks: device clocks
See ../clocks/clock-bindings.txt for details.
-- clock-names: the following clocks are required:
- * "core_clk"
- * "iface_clk"
- * "src_clk"
- * "hdmi_clk"
- * "mpd_clk"
+- clock-names: the following clocks are required.
+ For MDP4:
+ * "core_clk"
+ * "iface_clk"
+ * "lut_clk"
+ * "src_clk"
+ * "hdmi_clk"
+ * "mdp_clk"
+ For MDP5:
+ * "bus_clk"
+ * "iface_clk"
+ * "core_clk_src"
+ * "core_clk"
+ * "lut_clk" (some MDP5 versions may not need this)
+ * "vsync_clk"
Optional properties:
- gpus: phandle for gpu device
@@ -26,7 +36,7 @@ Example:
...
mdp: qcom,mdp@5100000 {
- compatible = "qcom,mdp";
+ compatible = "qcom,mdp4";
reg = <0x05100000 0xf0000>;
interrupts = <GIC_SPI 75 0>;
connectors = <&hdmi>;
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 4/6] drm/msm/mdp: Remove CONFIG_OF checks from MDP drivers
2015-11-18 11:19 [PATCH 0/6] drm/msm: Work only with DT supported kernels Archit Taneja
` (2 preceding siblings ...)
2015-11-18 11:19 ` [PATCH 3/6] dt-bindings: drm/msm: Update MDP bindings Archit Taneja
@ 2015-11-18 11:19 ` Archit Taneja
2015-11-18 11:19 ` [PATCH 5/6] drm/msm/hdmi: remove CONFIG_OF checks Archit Taneja
2015-11-18 11:19 ` [PATCH 6/6] drm/msm/adreno: Remove " Archit Taneja
5 siblings, 0 replies; 11+ messages in thread
From: Archit Taneja @ 2015-11-18 11:19 UTC (permalink / raw)
To: dri-devel, robdclark; +Cc: linux-arm-msm
We don't intend to use downstream non-DT kernels anymore, so remove
CONFIG_OF checks.
Update the TODO comment so that we don't forget about max_clk setting
for non APQ8064 chips having MDP4.
Signed-off-by: Archit Taneja <architt@codeaurora.org>
---
drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c | 20 +++-----------------
drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c | 4 +---
2 files changed, 4 insertions(+), 20 deletions(-)
diff --git a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
index 077f752..76984a8 100644
--- a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
+++ b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
@@ -240,7 +240,6 @@ int mdp4_enable(struct mdp4_kms *mdp4_kms)
return 0;
}
-#ifdef CONFIG_OF
static struct drm_panel *detect_panel(struct drm_device *dev)
{
struct device_node *endpoint, *panel_node;
@@ -270,12 +269,6 @@ static struct drm_panel *detect_panel(struct drm_device *dev)
return panel;
}
-#else
-static struct drm_panel *detect_panel(struct drm_device *dev)
-{
- // ??? maybe use a module param to specify which panel is attached?
-}
-#endif
static int modeset_init(struct mdp4_kms *mdp4_kms)
{
@@ -558,17 +551,10 @@ fail:
static struct mdp4_platform_config *mdp4_get_config(struct platform_device *dev)
{
static struct mdp4_platform_config config = {};
-#ifdef CONFIG_OF
- /* TODO */
+
+ /* TODO: Chips that aren't apq8064 have a 200 Mhz max_clk */
config.max_clk = 266667000;
config.iommu = iommu_domain_alloc(&platform_bus_type);
-#else
- if (cpu_is_apq8064())
- config.max_clk = 266667000;
- else
- config.max_clk = 200000000;
-
- config.iommu = msm_get_iommu_domain(DISPLAY_READ_DOMAIN);
-#endif
+
return &config;
}
diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
index bb1225a..57f73f0 100644
--- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
+++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
@@ -553,9 +553,7 @@ fail:
static struct mdp5_cfg_platform *mdp5_get_config(struct platform_device *dev)
{
static struct mdp5_cfg_platform config = {};
-#ifdef CONFIG_OF
- /* TODO */
-#endif
+
config.iommu = iommu_domain_alloc(&platform_bus_type);
return &config;
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 5/6] drm/msm/hdmi: remove CONFIG_OF checks
2015-11-18 11:19 [PATCH 0/6] drm/msm: Work only with DT supported kernels Archit Taneja
` (3 preceding siblings ...)
2015-11-18 11:19 ` [PATCH 4/6] drm/msm/mdp: Remove CONFIG_OF checks from MDP drivers Archit Taneja
@ 2015-11-18 11:19 ` Archit Taneja
2015-11-18 11:19 ` [PATCH 6/6] drm/msm/adreno: Remove " Archit Taneja
5 siblings, 0 replies; 11+ messages in thread
From: Archit Taneja @ 2015-11-18 11:19 UTC (permalink / raw)
To: dri-devel, robdclark; +Cc: linux-arm-msm
We now only care about kernels that support DT. Remote the non-DT stuff.
While we're at it, use of_device_get_match_data to retrieve match data.
Signed-off-by: Archit Taneja <architt@codeaurora.org>
---
drivers/gpu/drm/msm/hdmi/hdmi.c | 87 ++++++++---------------------------------
1 file changed, 16 insertions(+), 71 deletions(-)
diff --git a/drivers/gpu/drm/msm/hdmi/hdmi.c b/drivers/gpu/drm/msm/hdmi/hdmi.c
index 1f4a95e..9a0989c 100644
--- a/drivers/gpu/drm/msm/hdmi/hdmi.c
+++ b/drivers/gpu/drm/msm/hdmi/hdmi.c
@@ -17,6 +17,8 @@
*/
#include <linux/of_irq.h>
+#include <linux/of_gpio.h>
+
#include "hdmi.h"
void hdmi_set_mode(struct hdmi *hdmi, bool power_on)
@@ -322,8 +324,6 @@ fail:
* The hdmi device:
*/
-#include <linux/of_gpio.h>
-
#define HDMI_CFG(item, entry) \
.item ## _names = item ##_names_ ## entry, \
.item ## _cnt = ARRAY_SIZE(item ## _names_ ## entry)
@@ -388,17 +388,6 @@ static struct hdmi_platform_config hdmi_tx_8996_config = {
.hpd_freq = hpd_clk_freq_8x74,
};
-static const struct of_device_id dt_match[] = {
- { .compatible = "qcom,hdmi-tx-8996", .data = &hdmi_tx_8996_config },
- { .compatible = "qcom,hdmi-tx-8994", .data = &hdmi_tx_8994_config },
- { .compatible = "qcom,hdmi-tx-8084", .data = &hdmi_tx_8084_config },
- { .compatible = "qcom,hdmi-tx-8974", .data = &hdmi_tx_8974_config },
- { .compatible = "qcom,hdmi-tx-8960", .data = &hdmi_tx_8960_config },
- { .compatible = "qcom,hdmi-tx-8660", .data = &hdmi_tx_8660_config },
- {}
-};
-
-#ifdef CONFIG_OF
static int get_gpio(struct device *dev, struct device_node *of_node, const char *name)
{
int gpio = of_get_named_gpio(of_node, name, 0);
@@ -413,7 +402,6 @@ static int get_gpio(struct device *dev, struct device_node *of_node, const char
}
return gpio;
}
-#endif
static int hdmi_bind(struct device *dev, struct device *master, void *data)
{
@@ -421,16 +409,12 @@ static int hdmi_bind(struct device *dev, struct device *master, void *data)
struct msm_drm_private *priv = drm->dev_private;
static struct hdmi_platform_config *hdmi_cfg;
struct hdmi *hdmi;
-#ifdef CONFIG_OF
struct device_node *of_node = dev->of_node;
- const struct of_device_id *match;
- match = of_match_node(dt_match, of_node);
- if (match && match->data) {
- hdmi_cfg = (struct hdmi_platform_config *)match->data;
- DBG("hdmi phy: %s", match->compatible);
- } else {
- dev_err(dev, "unknown phy: %s\n", of_node->name);
+ hdmi_cfg = (struct hdmi_platform_config *)
+ of_device_get_match_data(dev);
+ if (!hdmi_cfg) {
+ dev_err(dev, "unknown hdmi_cfg: %s\n", of_node->name);
return -ENXIO;
}
@@ -443,55 +427,6 @@ static int hdmi_bind(struct device *dev, struct device *master, void *data)
hdmi_cfg->mux_sel_gpio = get_gpio(dev, of_node, "qcom,hdmi-tx-mux-sel");
hdmi_cfg->mux_lpm_gpio = get_gpio(dev, of_node, "qcom,hdmi-tx-mux-lpm");
-#else
- static struct hdmi_platform_config config = {};
- static const char *hpd_clk_names[] = {
- "core_clk", "master_iface_clk", "slave_iface_clk",
- };
- if (cpu_is_apq8064()) {
- static const char *hpd_reg_names[] = {"8921_hdmi_mvs"};
- config.phy_init = hdmi_phy_8960_init;
- config.hpd_reg_names = hpd_reg_names;
- config.hpd_reg_cnt = ARRAY_SIZE(hpd_reg_names);
- config.hpd_clk_names = hpd_clk_names;
- config.hpd_clk_cnt = ARRAY_SIZE(hpd_clk_names);
- config.ddc_clk_gpio = 70;
- config.ddc_data_gpio = 71;
- config.hpd_gpio = 72;
- config.mux_en_gpio = -1;
- config.mux_sel_gpio = -1;
- } else if (cpu_is_msm8960() || cpu_is_msm8960ab()) {
- static const char *hpd_reg_names[] = {"8921_hdmi_mvs"};
- config.phy_init = hdmi_phy_8960_init;
- config.hpd_reg_names = hpd_reg_names;
- config.hpd_reg_cnt = ARRAY_SIZE(hpd_reg_names);
- config.hpd_clk_names = hpd_clk_names;
- config.hpd_clk_cnt = ARRAY_SIZE(hpd_clk_names);
- config.ddc_clk_gpio = 100;
- config.ddc_data_gpio = 101;
- config.hpd_gpio = 102;
- config.mux_en_gpio = -1;
- config.mux_sel_gpio = -1;
- } else if (cpu_is_msm8x60()) {
- static const char *hpd_reg_names[] = {
- "8901_hdmi_mvs", "8901_mpp0"
- };
- config.phy_init = hdmi_phy_8x60_init;
- config.hpd_reg_names = hpd_reg_names;
- config.hpd_reg_cnt = ARRAY_SIZE(hpd_reg_names);
- config.hpd_clk_names = hpd_clk_names;
- config.hpd_clk_cnt = ARRAY_SIZE(hpd_clk_names);
- config.ddc_clk_gpio = 170;
- config.ddc_data_gpio = 171;
- config.hpd_gpio = 172;
- config.mux_en_gpio = -1;
- config.mux_sel_gpio = -1;
- }
- config.mmio_name = "hdmi_msm_hdmi_addr";
- config.qfprom_mmio_name = "hdmi_msm_qfprom_addr";
-
- hdmi_cfg = &config;
-#endif
dev->platform_data = hdmi_cfg;
hdmi = hdmi_init(to_platform_device(dev));
@@ -529,6 +464,16 @@ static int hdmi_dev_remove(struct platform_device *pdev)
return 0;
}
+static const struct of_device_id dt_match[] = {
+ { .compatible = "qcom,hdmi-tx-8996", .data = &hdmi_tx_8996_config },
+ { .compatible = "qcom,hdmi-tx-8994", .data = &hdmi_tx_8994_config },
+ { .compatible = "qcom,hdmi-tx-8084", .data = &hdmi_tx_8084_config },
+ { .compatible = "qcom,hdmi-tx-8974", .data = &hdmi_tx_8974_config },
+ { .compatible = "qcom,hdmi-tx-8960", .data = &hdmi_tx_8960_config },
+ { .compatible = "qcom,hdmi-tx-8660", .data = &hdmi_tx_8660_config },
+ {}
+};
+
static struct platform_driver hdmi_driver = {
.probe = hdmi_dev_probe,
.remove = hdmi_dev_remove,
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 6/6] drm/msm/adreno: Remove CONFIG_OF checks
2015-11-18 11:19 [PATCH 0/6] drm/msm: Work only with DT supported kernels Archit Taneja
` (4 preceding siblings ...)
2015-11-18 11:19 ` [PATCH 5/6] drm/msm/hdmi: remove CONFIG_OF checks Archit Taneja
@ 2015-11-18 11:19 ` Archit Taneja
2015-11-18 14:45 ` Rob Clark
5 siblings, 1 reply; 11+ messages in thread
From: Archit Taneja @ 2015-11-18 11:19 UTC (permalink / raw)
To: dri-devel, robdclark; +Cc: linux-arm-msm, Archit Taneja
Remove CONFIG_OF checks in adreno_device.c. The downstream bus scaling
stuff is included only when CONFIG_OF is not set. So, remove that too.
Signed-off-by: Archit Taneja <architt@codeaurora.org>
---
drivers/gpu/drm/msm/adreno/adreno_device.c | 52 ------------------------------
1 file changed, 52 deletions(-)
diff --git a/drivers/gpu/drm/msm/adreno/adreno_device.c b/drivers/gpu/drm/msm/adreno/adreno_device.c
index 1ea2df5..950d27d 100644
--- a/drivers/gpu/drm/msm/adreno/adreno_device.c
+++ b/drivers/gpu/drm/msm/adreno/adreno_device.c
@@ -19,10 +19,6 @@
#include "adreno_gpu.h"
-#if defined(DOWNSTREAM_CONFIG_MSM_BUS_SCALING) && !defined(CONFIG_OF)
-# include <mach/kgsl.h>
-#endif
-
#define ANY_ID 0xff
bool hang_debug = false;
@@ -168,7 +164,6 @@ static void set_gpu_pdev(struct drm_device *dev,
static int adreno_bind(struct device *dev, struct device *master, void *data)
{
static struct adreno_platform_config config = {};
-#ifdef CONFIG_OF
struct device_node *child, *node = dev->of_node;
u32 val;
int ret;
@@ -205,53 +200,6 @@ static int adreno_bind(struct device *dev, struct device *master, void *data)
return -ENXIO;
}
-#else
- struct kgsl_device_platform_data *pdata = dev->platform_data;
- uint32_t version = socinfo_get_version();
- if (cpu_is_apq8064ab()) {
- config.fast_rate = 450000000;
- config.slow_rate = 27000000;
- config.bus_freq = 4;
- config.rev = ADRENO_REV(3, 2, 1, 0);
- } else if (cpu_is_apq8064()) {
- config.fast_rate = 400000000;
- config.slow_rate = 27000000;
- config.bus_freq = 4;
-
- if (SOCINFO_VERSION_MAJOR(version) == 2)
- config.rev = ADRENO_REV(3, 2, 0, 2);
- else if ((SOCINFO_VERSION_MAJOR(version) == 1) &&
- (SOCINFO_VERSION_MINOR(version) == 1))
- config.rev = ADRENO_REV(3, 2, 0, 1);
- else
- config.rev = ADRENO_REV(3, 2, 0, 0);
-
- } else if (cpu_is_msm8960ab()) {
- config.fast_rate = 400000000;
- config.slow_rate = 320000000;
- config.bus_freq = 4;
-
- if (SOCINFO_VERSION_MINOR(version) == 0)
- config.rev = ADRENO_REV(3, 2, 1, 0);
- else
- config.rev = ADRENO_REV(3, 2, 1, 1);
-
- } else if (cpu_is_msm8930()) {
- config.fast_rate = 400000000;
- config.slow_rate = 27000000;
- config.bus_freq = 3;
-
- if ((SOCINFO_VERSION_MAJOR(version) == 1) &&
- (SOCINFO_VERSION_MINOR(version) == 2))
- config.rev = ADRENO_REV(3, 0, 5, 2);
- else
- config.rev = ADRENO_REV(3, 0, 5, 0);
-
- }
-# ifdef DOWNSTREAM_CONFIG_MSM_BUS_SCALING
- config.bus_scale_table = pdata->bus_scale_table;
-# endif
-#endif
dev->platform_data = &config;
set_gpu_pdev(dev_get_drvdata(master), to_platform_device(dev));
return 0;
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
hosted by The Linux Foundation
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH 6/6] drm/msm/adreno: Remove CONFIG_OF checks
2015-11-18 11:19 ` [PATCH 6/6] drm/msm/adreno: Remove " Archit Taneja
@ 2015-11-18 14:45 ` Rob Clark
2015-11-18 16:04 ` Archit Taneja
0 siblings, 1 reply; 11+ messages in thread
From: Rob Clark @ 2015-11-18 14:45 UTC (permalink / raw)
To: Archit Taneja; +Cc: dri-devel@lists.freedesktop.org, linux-arm-msm
On Wed, Nov 18, 2015 at 6:19 AM, Archit Taneja <architt@codeaurora.org> wrote:
> Remove CONFIG_OF checks in adreno_device.c. The downstream bus scaling
> stuff is included only when CONFIG_OF is not set. So, remove that too.
>
> Signed-off-by: Archit Taneja <architt@codeaurora.org>
> ---
> drivers/gpu/drm/msm/adreno/adreno_device.c | 52 ------------------------------
> 1 file changed, 52 deletions(-)
>
> diff --git a/drivers/gpu/drm/msm/adreno/adreno_device.c b/drivers/gpu/drm/msm/adreno/adreno_device.c
> index 1ea2df5..950d27d 100644
> --- a/drivers/gpu/drm/msm/adreno/adreno_device.c
> +++ b/drivers/gpu/drm/msm/adreno/adreno_device.c
> @@ -19,10 +19,6 @@
>
> #include "adreno_gpu.h"
>
> -#if defined(DOWNSTREAM_CONFIG_MSM_BUS_SCALING) && !defined(CONFIG_OF)
> -# include <mach/kgsl.h>
> -#endif
> -
I think we do need to keep the bus-scaling for 3.10 kernel, esp. for
the display (otherwise underflow).. but the 'pdata->bus_scale_table'
stuff can be dropped since somehow that is unneeded. (I guess
downstream bus scaling gets that from DT? I didn't really look into
how it worked.)
Eventually when we have real bus scaling upstream, hopefully we can
hack up some sort of shim for downstream kernel so the same drm/msm
code can also work downstream, but we'll have to see what the upstream
bus scaling API looks like.
BR,
-R
> #define ANY_ID 0xff
>
> bool hang_debug = false;
> @@ -168,7 +164,6 @@ static void set_gpu_pdev(struct drm_device *dev,
> static int adreno_bind(struct device *dev, struct device *master, void *data)
> {
> static struct adreno_platform_config config = {};
> -#ifdef CONFIG_OF
> struct device_node *child, *node = dev->of_node;
> u32 val;
> int ret;
> @@ -205,53 +200,6 @@ static int adreno_bind(struct device *dev, struct device *master, void *data)
> return -ENXIO;
> }
>
> -#else
> - struct kgsl_device_platform_data *pdata = dev->platform_data;
> - uint32_t version = socinfo_get_version();
> - if (cpu_is_apq8064ab()) {
> - config.fast_rate = 450000000;
> - config.slow_rate = 27000000;
> - config.bus_freq = 4;
> - config.rev = ADRENO_REV(3, 2, 1, 0);
> - } else if (cpu_is_apq8064()) {
> - config.fast_rate = 400000000;
> - config.slow_rate = 27000000;
> - config.bus_freq = 4;
> -
> - if (SOCINFO_VERSION_MAJOR(version) == 2)
> - config.rev = ADRENO_REV(3, 2, 0, 2);
> - else if ((SOCINFO_VERSION_MAJOR(version) == 1) &&
> - (SOCINFO_VERSION_MINOR(version) == 1))
> - config.rev = ADRENO_REV(3, 2, 0, 1);
> - else
> - config.rev = ADRENO_REV(3, 2, 0, 0);
> -
> - } else if (cpu_is_msm8960ab()) {
> - config.fast_rate = 400000000;
> - config.slow_rate = 320000000;
> - config.bus_freq = 4;
> -
> - if (SOCINFO_VERSION_MINOR(version) == 0)
> - config.rev = ADRENO_REV(3, 2, 1, 0);
> - else
> - config.rev = ADRENO_REV(3, 2, 1, 1);
> -
> - } else if (cpu_is_msm8930()) {
> - config.fast_rate = 400000000;
> - config.slow_rate = 27000000;
> - config.bus_freq = 3;
> -
> - if ((SOCINFO_VERSION_MAJOR(version) == 1) &&
> - (SOCINFO_VERSION_MINOR(version) == 2))
> - config.rev = ADRENO_REV(3, 0, 5, 2);
> - else
> - config.rev = ADRENO_REV(3, 0, 5, 0);
> -
> - }
> -# ifdef DOWNSTREAM_CONFIG_MSM_BUS_SCALING
> - config.bus_scale_table = pdata->bus_scale_table;
> -# endif
> -#endif
> dev->platform_data = &config;
> set_gpu_pdev(dev_get_drvdata(master), to_platform_device(dev));
> return 0;
> --
> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
> hosted by The Linux Foundation
>
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 3/6] dt-bindings: drm/msm: Update MDP bindings
2015-11-18 11:19 ` [PATCH 3/6] dt-bindings: drm/msm: Update MDP bindings Archit Taneja
@ 2015-11-18 15:26 ` Archit Taneja
0 siblings, 0 replies; 11+ messages in thread
From: Archit Taneja @ 2015-11-18 15:26 UTC (permalink / raw)
To: robdclark; +Cc: linux-arm-msm, dri-devel, Rob Herring
+dt list
On 11/18/2015 4:49 PM, Archit Taneja wrote:
> Update DT bindings for mdp. We now have a more uniform and future-proof
> set of compatible strings.
>
> MDP5 bindings were missing. Add those and update details on the
> clock-names properties.
>
> Signed-off-by: Archit Taneja <architt@codeaurora.org>
> ---
> .../devicetree/bindings/display/msm/mdp.txt | 26 +++++++++++++++-------
> 1 file changed, 18 insertions(+), 8 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/display/msm/mdp.txt b/Documentation/devicetree/bindings/display/msm/mdp.txt
> index 0833eda..a214f6c 100644
> --- a/Documentation/devicetree/bindings/display/msm/mdp.txt
> +++ b/Documentation/devicetree/bindings/display/msm/mdp.txt
> @@ -2,18 +2,28 @@ Qualcomm adreno/snapdragon display controller
>
> Required properties:
> - compatible:
> - * "qcom,mdp" - mdp4
> + * "qcom,mdp4" - mdp4
> + * "qcom,mdp5" - mdp5
> - reg: Physical base address and length of the controller's registers.
> - interrupts: The interrupt signal from the display controller.
> - connectors: array of phandles for output device(s)
> - clocks: device clocks
> See ../clocks/clock-bindings.txt for details.
> -- clock-names: the following clocks are required:
> - * "core_clk"
> - * "iface_clk"
> - * "src_clk"
> - * "hdmi_clk"
> - * "mpd_clk"
> +- clock-names: the following clocks are required.
> + For MDP4:
> + * "core_clk"
> + * "iface_clk"
> + * "lut_clk"
> + * "src_clk"
> + * "hdmi_clk"
> + * "mdp_clk"
> + For MDP5:
> + * "bus_clk"
> + * "iface_clk"
> + * "core_clk_src"
> + * "core_clk"
> + * "lut_clk" (some MDP5 versions may not need this)
> + * "vsync_clk"
>
> Optional properties:
> - gpus: phandle for gpu device
> @@ -26,7 +36,7 @@ Example:
> ...
>
> mdp: qcom,mdp@5100000 {
> - compatible = "qcom,mdp";
> + compatible = "qcom,mdp4";
> reg = <0x05100000 0xf0000>;
> interrupts = <GIC_SPI 75 0>;
> connectors = <&hdmi>;
>
--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 6/6] drm/msm/adreno: Remove CONFIG_OF checks
2015-11-18 14:45 ` Rob Clark
@ 2015-11-18 16:04 ` Archit Taneja
2015-11-18 20:29 ` Rob Clark
0 siblings, 1 reply; 11+ messages in thread
From: Archit Taneja @ 2015-11-18 16:04 UTC (permalink / raw)
To: Rob Clark; +Cc: dri-devel@lists.freedesktop.org, linux-arm-msm
On 11/18/2015 8:15 PM, Rob Clark wrote:
> On Wed, Nov 18, 2015 at 6:19 AM, Archit Taneja <architt@codeaurora.org> wrote:
>> Remove CONFIG_OF checks in adreno_device.c. The downstream bus scaling
>> stuff is included only when CONFIG_OF is not set. So, remove that too.
>>
>> Signed-off-by: Archit Taneja <architt@codeaurora.org>
>> ---
>> drivers/gpu/drm/msm/adreno/adreno_device.c | 52 ------------------------------
>> 1 file changed, 52 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/msm/adreno/adreno_device.c b/drivers/gpu/drm/msm/adreno/adreno_device.c
>> index 1ea2df5..950d27d 100644
>> --- a/drivers/gpu/drm/msm/adreno/adreno_device.c
>> +++ b/drivers/gpu/drm/msm/adreno/adreno_device.c
>> @@ -19,10 +19,6 @@
>>
>> #include "adreno_gpu.h"
>>
>> -#if defined(DOWNSTREAM_CONFIG_MSM_BUS_SCALING) && !defined(CONFIG_OF)
>> -# include <mach/kgsl.h>
>> -#endif
>> -
>
> I think we do need to keep the bus-scaling for 3.10 kernel, esp. for
> the display (otherwise underflow).. but the 'pdata->bus_scale_table'
> stuff can be dropped since somehow that is unneeded. (I guess
> downstream bus scaling gets that from DT? I didn't really look into
> how it worked.)
Okay. It looks like the AHB bus scale tables are hardcoded within the
driver and the AXI ones are retrieved from the mdp/gpu DT nodes.
>
> Eventually when we have real bus scaling upstream, hopefully we can
> hack up some sort of shim for downstream kernel so the same drm/msm
> code can also work downstream, but we'll have to see what the upstream
> bus scaling API looks like.
The adreno driver isn't using the bus scale table at all when DT is
enabled. There are some downstream bus scale API helpers that let us
get the table from DT. I guess we could put that under the BUS_SCALING
macro.
Is this particular patch okay as is? The bus scale stuff affected is
needed only by the3.4 kernel stuff anyway.
Archit
>
> BR,
> -R
>
>> #define ANY_ID 0xff
>>
>> bool hang_debug = false;
>> @@ -168,7 +164,6 @@ static void set_gpu_pdev(struct drm_device *dev,
>> static int adreno_bind(struct device *dev, struct device *master, void *data)
>> {
>> static struct adreno_platform_config config = {};
>> -#ifdef CONFIG_OF
>> struct device_node *child, *node = dev->of_node;
>> u32 val;
>> int ret;
>> @@ -205,53 +200,6 @@ static int adreno_bind(struct device *dev, struct device *master, void *data)
>> return -ENXIO;
>> }
>>
>> -#else
>> - struct kgsl_device_platform_data *pdata = dev->platform_data;
>> - uint32_t version = socinfo_get_version();
>> - if (cpu_is_apq8064ab()) {
>> - config.fast_rate = 450000000;
>> - config.slow_rate = 27000000;
>> - config.bus_freq = 4;
>> - config.rev = ADRENO_REV(3, 2, 1, 0);
>> - } else if (cpu_is_apq8064()) {
>> - config.fast_rate = 400000000;
>> - config.slow_rate = 27000000;
>> - config.bus_freq = 4;
>> -
>> - if (SOCINFO_VERSION_MAJOR(version) == 2)
>> - config.rev = ADRENO_REV(3, 2, 0, 2);
>> - else if ((SOCINFO_VERSION_MAJOR(version) == 1) &&
>> - (SOCINFO_VERSION_MINOR(version) == 1))
>> - config.rev = ADRENO_REV(3, 2, 0, 1);
>> - else
>> - config.rev = ADRENO_REV(3, 2, 0, 0);
>> -
>> - } else if (cpu_is_msm8960ab()) {
>> - config.fast_rate = 400000000;
>> - config.slow_rate = 320000000;
>> - config.bus_freq = 4;
>> -
>> - if (SOCINFO_VERSION_MINOR(version) == 0)
>> - config.rev = ADRENO_REV(3, 2, 1, 0);
>> - else
>> - config.rev = ADRENO_REV(3, 2, 1, 1);
>> -
>> - } else if (cpu_is_msm8930()) {
>> - config.fast_rate = 400000000;
>> - config.slow_rate = 27000000;
>> - config.bus_freq = 3;
>> -
>> - if ((SOCINFO_VERSION_MAJOR(version) == 1) &&
>> - (SOCINFO_VERSION_MINOR(version) == 2))
>> - config.rev = ADRENO_REV(3, 0, 5, 2);
>> - else
>> - config.rev = ADRENO_REV(3, 0, 5, 0);
>> -
>> - }
>> -# ifdef DOWNSTREAM_CONFIG_MSM_BUS_SCALING
>> - config.bus_scale_table = pdata->bus_scale_table;
>> -# endif
>> -#endif
>> dev->platform_data = &config;
>> set_gpu_pdev(dev_get_drvdata(master), to_platform_device(dev));
>> return 0;
>> --
>> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
>> hosted by The Linux Foundation
>>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 6/6] drm/msm/adreno: Remove CONFIG_OF checks
2015-11-18 16:04 ` Archit Taneja
@ 2015-11-18 20:29 ` Rob Clark
0 siblings, 0 replies; 11+ messages in thread
From: Rob Clark @ 2015-11-18 20:29 UTC (permalink / raw)
To: Archit Taneja; +Cc: dri-devel@lists.freedesktop.org, linux-arm-msm
On Wed, Nov 18, 2015 at 11:04 AM, Archit Taneja <architt@codeaurora.org> wrote:
>
>
> On 11/18/2015 8:15 PM, Rob Clark wrote:
>>
>> On Wed, Nov 18, 2015 at 6:19 AM, Archit Taneja <architt@codeaurora.org>
>> wrote:
>>>
>>> Remove CONFIG_OF checks in adreno_device.c. The downstream bus scaling
>>> stuff is included only when CONFIG_OF is not set. So, remove that too.
>>>
>>> Signed-off-by: Archit Taneja <architt@codeaurora.org>
>>> ---
>>> drivers/gpu/drm/msm/adreno/adreno_device.c | 52
>>> ------------------------------
>>> 1 file changed, 52 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/msm/adreno/adreno_device.c
>>> b/drivers/gpu/drm/msm/adreno/adreno_device.c
>>> index 1ea2df5..950d27d 100644
>>> --- a/drivers/gpu/drm/msm/adreno/adreno_device.c
>>> +++ b/drivers/gpu/drm/msm/adreno/adreno_device.c
>>> @@ -19,10 +19,6 @@
>>>
>>> #include "adreno_gpu.h"
>>>
>>> -#if defined(DOWNSTREAM_CONFIG_MSM_BUS_SCALING) && !defined(CONFIG_OF)
>>> -# include <mach/kgsl.h>
>>> -#endif
>>> -
>>
>>
>> I think we do need to keep the bus-scaling for 3.10 kernel, esp. for
>> the display (otherwise underflow).. but the 'pdata->bus_scale_table'
>> stuff can be dropped since somehow that is unneeded. (I guess
>> downstream bus scaling gets that from DT? I didn't really look into
>> how it worked.)
>
>
> Okay. It looks like the AHB bus scale tables are hardcoded within the
> driver and the AXI ones are retrieved from the mdp/gpu DT nodes.
>
>>
>> Eventually when we have real bus scaling upstream, hopefully we can
>> hack up some sort of shim for downstream kernel so the same drm/msm
>> code can also work downstream, but we'll have to see what the upstream
>> bus scaling API looks like.
>
>
>
> The adreno driver isn't using the bus scale table at all when DT is
> enabled. There are some downstream bus scale API helpers that let us
> get the table from DT. I guess we could put that under the BUS_SCALING
> macro.
>
> Is this particular patch okay as is? The bus scale stuff affected is
> needed only by the3.4 kernel stuff anyway.
oh, you're right, I didn't notice that this file was only using it for pdata..
BR,
-R
> Archit
>
>>
>> BR,
>> -R
>>
>>> #define ANY_ID 0xff
>>>
>>> bool hang_debug = false;
>>> @@ -168,7 +164,6 @@ static void set_gpu_pdev(struct drm_device *dev,
>>> static int adreno_bind(struct device *dev, struct device *master, void
>>> *data)
>>> {
>>> static struct adreno_platform_config config = {};
>>> -#ifdef CONFIG_OF
>>> struct device_node *child, *node = dev->of_node;
>>> u32 val;
>>> int ret;
>>> @@ -205,53 +200,6 @@ static int adreno_bind(struct device *dev, struct
>>> device *master, void *data)
>>> return -ENXIO;
>>> }
>>>
>>> -#else
>>> - struct kgsl_device_platform_data *pdata = dev->platform_data;
>>> - uint32_t version = socinfo_get_version();
>>> - if (cpu_is_apq8064ab()) {
>>> - config.fast_rate = 450000000;
>>> - config.slow_rate = 27000000;
>>> - config.bus_freq = 4;
>>> - config.rev = ADRENO_REV(3, 2, 1, 0);
>>> - } else if (cpu_is_apq8064()) {
>>> - config.fast_rate = 400000000;
>>> - config.slow_rate = 27000000;
>>> - config.bus_freq = 4;
>>> -
>>> - if (SOCINFO_VERSION_MAJOR(version) == 2)
>>> - config.rev = ADRENO_REV(3, 2, 0, 2);
>>> - else if ((SOCINFO_VERSION_MAJOR(version) == 1) &&
>>> - (SOCINFO_VERSION_MINOR(version) == 1))
>>> - config.rev = ADRENO_REV(3, 2, 0, 1);
>>> - else
>>> - config.rev = ADRENO_REV(3, 2, 0, 0);
>>> -
>>> - } else if (cpu_is_msm8960ab()) {
>>> - config.fast_rate = 400000000;
>>> - config.slow_rate = 320000000;
>>> - config.bus_freq = 4;
>>> -
>>> - if (SOCINFO_VERSION_MINOR(version) == 0)
>>> - config.rev = ADRENO_REV(3, 2, 1, 0);
>>> - else
>>> - config.rev = ADRENO_REV(3, 2, 1, 1);
>>> -
>>> - } else if (cpu_is_msm8930()) {
>>> - config.fast_rate = 400000000;
>>> - config.slow_rate = 27000000;
>>> - config.bus_freq = 3;
>>> -
>>> - if ((SOCINFO_VERSION_MAJOR(version) == 1) &&
>>> - (SOCINFO_VERSION_MINOR(version) == 2))
>>> - config.rev = ADRENO_REV(3, 0, 5, 2);
>>> - else
>>> - config.rev = ADRENO_REV(3, 0, 5, 0);
>>> -
>>> - }
>>> -# ifdef DOWNSTREAM_CONFIG_MSM_BUS_SCALING
>>> - config.bus_scale_table = pdata->bus_scale_table;
>>> -# endif
>>> -#endif
>>> dev->platform_data = &config;
>>> set_gpu_pdev(dev_get_drvdata(master), to_platform_device(dev));
>>> return 0;
>>> --
>>> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora
>>> Forum,
>>> hosted by The Linux Foundation
>>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-arm-msm"
>> in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>>
>
> --
> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
> a Linux Foundation Collaborative Project
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2015-11-18 20:29 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-11-18 11:19 [PATCH 0/6] drm/msm: Work only with DT supported kernels Archit Taneja
2015-11-18 11:19 ` [PATCH 1/6] drm/msm: Remove non-DT code in msm_drv Archit Taneja
2015-11-18 11:19 ` [PATCH 2/6] drm/msm: Update compatible strings for mdp Archit Taneja
2015-11-18 11:19 ` [PATCH 3/6] dt-bindings: drm/msm: Update MDP bindings Archit Taneja
2015-11-18 15:26 ` Archit Taneja
2015-11-18 11:19 ` [PATCH 4/6] drm/msm/mdp: Remove CONFIG_OF checks from MDP drivers Archit Taneja
2015-11-18 11:19 ` [PATCH 5/6] drm/msm/hdmi: remove CONFIG_OF checks Archit Taneja
2015-11-18 11:19 ` [PATCH 6/6] drm/msm/adreno: Remove " Archit Taneja
2015-11-18 14:45 ` Rob Clark
2015-11-18 16:04 ` Archit Taneja
2015-11-18 20:29 ` Rob Clark
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox