summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Gortmaker <paul.gortmaker@windriver.com>2017-06-12 13:37:22 -0400
committerPaul Gortmaker <paul.gortmaker@windriver.com>2017-06-12 13:45:16 -0400
commit945e9a2cf54f59d90c68da2052e257e154b07b53 (patch)
treea3d6fcc94a8fbdf2c16a5f65b3b40e7964f9453f
parent690d33d4fc93e8f18c737e3ec564b8fe7c820b86 (diff)
downloadlongterm-queue-4.8-945e9a2cf54f59d90c68da2052e257e154b07b53.tar.gz
drm: remove sun4i patches n/a for 4.8.x
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
-rw-r--r--queue/drm-sun4i-Add-compatible-string-for-A31-A31s-TCON-ti.patch85
-rw-r--r--queue/drm-sun4i-Add-compatible-strings-for-A31-A31s-displa.patch88
-rw-r--r--queue/drm-sun4i-tcon-Move-SoC-specific-quirks-to-a-DT-matc.patch144
-rw-r--r--queue/series3
4 files changed, 0 insertions, 320 deletions
diff --git a/queue/drm-sun4i-Add-compatible-string-for-A31-A31s-TCON-ti.patch b/queue/drm-sun4i-Add-compatible-string-for-A31-A31s-TCON-ti.patch
deleted file mode 100644
index 8b13937..0000000
--- a/queue/drm-sun4i-Add-compatible-string-for-A31-A31s-TCON-ti.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-From 93a5ec14da24a8abbac5bcb953b45cc7a5d0198a Mon Sep 17 00:00:00 2001
-From: Chen-Yu Tsai <wens@csie.org>
-Date: Thu, 20 Oct 2016 11:43:40 +0800
-Subject: [PATCH] drm/sun4i: Add compatible string for A31/A31s TCON (timing
- controller)
-
-commit 93a5ec14da24a8abbac5bcb953b45cc7a5d0198a upstream.
-
-The A31 TCON has mux controls for how TCON outputs are routed to the
-HDMI and MIPI DSI blocks.
-
-Since the A31s does not have MIPI DSI, it only has a mux for the HDMI
-controller input.
-
-This patch only adds support for the compatible strings. Actual support
-for the mux controls should be added with HDMI and MIPI DSI support.
-
-Signed-off-by: Chen-Yu Tsai <wens@csie.org>
-Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
-
-diff --git a/Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txt b/Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txt
-index 5368961cd727..15fdca8909f2 100644
---- a/Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txt
-+++ b/Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txt
-@@ -28,6 +28,8 @@ The TCON acts as a timing controller for RGB, LVDS and TV interfaces.
- Required properties:
- - compatible: value must be either:
- * allwinner,sun5i-a13-tcon
-+ * allwinner,sun6i-a31-tcon
-+ * allwinner,sun6i-a31s-tcon
- * allwinner,sun8i-a33-tcon
- - reg: base address and size of memory-mapped region
- - interrupts: interrupt associated to this IP
-@@ -50,7 +52,7 @@ Required properties:
- second the block connected to the TCON channel 1 (usually the TV
- encoder)
-
--On the A13, there is one more clock required:
-+On SoCs other than the A33, there is one more clock required:
- - 'tcon-ch1': The clock driving the TCON channel 1
-
- DRC
-diff --git a/drivers/gpu/drm/sun4i/sun4i_drv.c b/drivers/gpu/drm/sun4i/sun4i_drv.c
-index 0da9862ad8ed..a15c231fbd59 100644
---- a/drivers/gpu/drm/sun4i/sun4i_drv.c
-+++ b/drivers/gpu/drm/sun4i/sun4i_drv.c
-@@ -207,6 +207,8 @@ static bool sun4i_drv_node_is_frontend(struct device_node *node)
- static bool sun4i_drv_node_is_tcon(struct device_node *node)
- {
- return of_device_is_compatible(node, "allwinner,sun5i-a13-tcon") ||
-+ of_device_is_compatible(node, "allwinner,sun6i-a31-tcon") ||
-+ of_device_is_compatible(node, "allwinner,sun6i-a31s-tcon") ||
- of_device_is_compatible(node, "allwinner,sun8i-a33-tcon");
- }
-
-diff --git a/drivers/gpu/drm/sun4i/sun4i_tcon.c b/drivers/gpu/drm/sun4i/sun4i_tcon.c
-index 7658f0337e0b..c6afb2448655 100644
---- a/drivers/gpu/drm/sun4i/sun4i_tcon.c
-+++ b/drivers/gpu/drm/sun4i/sun4i_tcon.c
-@@ -587,12 +587,22 @@ static const struct sun4i_tcon_quirks sun5i_a13_quirks = {
- .has_channel_1 = true,
- };
-
-+static const struct sun4i_tcon_quirks sun6i_a31_quirks = {
-+ .has_channel_1 = true,
-+};
-+
-+static const struct sun4i_tcon_quirks sun6i_a31s_quirks = {
-+ .has_channel_1 = true,
-+};
-+
- static const struct sun4i_tcon_quirks sun8i_a33_quirks = {
- /* nothing is supported */
- };
-
- static const struct of_device_id sun4i_tcon_of_table[] = {
- { .compatible = "allwinner,sun5i-a13-tcon", .data = &sun5i_a13_quirks },
-+ { .compatible = "allwinner,sun6i-a31-tcon", .data = &sun6i_a31_quirks },
-+ { .compatible = "allwinner,sun6i-a31s-tcon", .data = &sun6i_a31s_quirks },
- { .compatible = "allwinner,sun8i-a33-tcon", .data = &sun8i_a33_quirks },
- { }
- };
---
-2.12.0
-
diff --git a/queue/drm-sun4i-Add-compatible-strings-for-A31-A31s-displa.patch b/queue/drm-sun4i-Add-compatible-strings-for-A31-A31s-displa.patch
deleted file mode 100644
index 798be2b..0000000
--- a/queue/drm-sun4i-Add-compatible-strings-for-A31-A31s-displa.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-From 49c440e87cd6f547f93d0dc53571ae0e11d9ec8f Mon Sep 17 00:00:00 2001
-From: Chen-Yu Tsai <wens@csie.org>
-Date: Thu, 20 Oct 2016 11:43:41 +0800
-Subject: [PATCH] drm/sun4i: Add compatible strings for A31/A31s display
- pipelines
-
-commit 49c440e87cd6f547f93d0dc53571ae0e11d9ec8f upstream.
-
-The A31's display pipeline has 2 frontends, 2 backends, and 2 TCONs. It
-also has new display enhancement blocks, such as the DRC (Dynamic Range
-Controller), the DEU (Display Enhancement Unit), and the CMU (Color
-Management Unit). It supports HDMI, MIPI DSI, and 2 LCD/LVDS channels.
-
-The A31s display pipeline is almost the same, just without MIPI DSI.
-Only the TCON seems to be different, due to the missing mux for MIPI
-DSI.
-
-Add compatible strings for both of them.
-
-Signed-off-by: Chen-Yu Tsai <wens@csie.org>
-Acked-by: Rob Herring <robh@kernel.org>
-Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
-
-diff --git a/Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txt b/Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txt
-index 15fdca8909f2..b82c00449468 100644
---- a/Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txt
-+++ b/Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txt
-@@ -91,6 +91,7 @@ system.
- Required properties:
- - compatible: value must be one of:
- * allwinner,sun5i-a13-display-backend
-+ * allwinner,sun6i-a31-display-backend
- * allwinner,sun8i-a33-display-backend
- - reg: base address and size of the memory-mapped region.
- - clocks: phandles to the clocks feeding the frontend and backend
-@@ -121,6 +122,7 @@ deinterlacing and color space conversion.
- Required properties:
- - compatible: value must be one of:
- * allwinner,sun5i-a13-display-frontend
-+ * allwinner,sun6i-a31-display-frontend
- * allwinner,sun8i-a33-display-frontend
- - reg: base address and size of the memory-mapped region.
- - interrupts: interrupt associated to this IP
-@@ -146,6 +148,8 @@ extra node.
- Required properties:
- - compatible: value must be one of:
- * allwinner,sun5i-a13-display-engine
-+ * allwinner,sun6i-a31-display-engine
-+ * allwinner,sun6i-a31s-display-engine
- * allwinner,sun8i-a33-display-engine
-
- - allwinner,pipelines: list of phandle to the display engine
-diff --git a/drivers/gpu/drm/sun4i/sun4i_backend.c b/drivers/gpu/drm/sun4i/sun4i_backend.c
-index 32c0584e3c35..6e6c59a661b6 100644
---- a/drivers/gpu/drm/sun4i/sun4i_backend.c
-+++ b/drivers/gpu/drm/sun4i/sun4i_backend.c
-@@ -408,6 +408,7 @@ static int sun4i_backend_remove(struct platform_device *pdev)
-
- static const struct of_device_id sun4i_backend_of_table[] = {
- { .compatible = "allwinner,sun5i-a13-display-backend" },
-+ { .compatible = "allwinner,sun6i-a31-display-backend" },
- { .compatible = "allwinner,sun8i-a33-display-backend" },
- { }
- };
-diff --git a/drivers/gpu/drm/sun4i/sun4i_drv.c b/drivers/gpu/drm/sun4i/sun4i_drv.c
-index a15c231fbd59..fa6568e1822a 100644
---- a/drivers/gpu/drm/sun4i/sun4i_drv.c
-+++ b/drivers/gpu/drm/sun4i/sun4i_drv.c
-@@ -201,6 +201,7 @@ static const struct component_master_ops sun4i_drv_master_ops = {
- static bool sun4i_drv_node_is_frontend(struct device_node *node)
- {
- return of_device_is_compatible(node, "allwinner,sun5i-a13-display-frontend") ||
-+ of_device_is_compatible(node, "allwinner,sun6i-a31-display-frontend") ||
- of_device_is_compatible(node, "allwinner,sun8i-a33-display-frontend");
- }
-
-@@ -324,6 +325,8 @@ static int sun4i_drv_remove(struct platform_device *pdev)
-
- static const struct of_device_id sun4i_drv_of_table[] = {
- { .compatible = "allwinner,sun5i-a13-display-engine" },
-+ { .compatible = "allwinner,sun6i-a31-display-engine" },
-+ { .compatible = "allwinner,sun6i-a31s-display-engine" },
- { .compatible = "allwinner,sun8i-a33-display-engine" },
- { }
- };
---
-2.12.0
-
diff --git a/queue/drm-sun4i-tcon-Move-SoC-specific-quirks-to-a-DT-matc.patch b/queue/drm-sun4i-tcon-Move-SoC-specific-quirks-to-a-DT-matc.patch
deleted file mode 100644
index dcbe810..0000000
--- a/queue/drm-sun4i-tcon-Move-SoC-specific-quirks-to-a-DT-matc.patch
+++ /dev/null
@@ -1,144 +0,0 @@
-From 91ea2f29cba6a7fe035ea232e4f981211a9fce5d Mon Sep 17 00:00:00 2001
-From: Chen-Yu Tsai <wens@csie.org>
-Date: Thu, 20 Oct 2016 11:43:39 +0800
-Subject: [PATCH] drm/sun4i: tcon: Move SoC specific quirks to a DT matched
- data structure
-
-commit 91ea2f29cba6a7fe035ea232e4f981211a9fce5d upstream.
-
-We already have some differences between the 2 supported SoCs.
-More will be added as we support other SoCs. To avoid bloating
-the probe function with even more conditionals, move the quirks
-to a separate data structure that's tied to the compatible string.
-
-Signed-off-by: Chen-Yu Tsai <wens@csie.org>
-Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
-
-diff --git a/drivers/gpu/drm/sun4i/sun4i_tcon.c b/drivers/gpu/drm/sun4i/sun4i_tcon.c
-index cadacb517f95..7658f0337e0b 100644
---- a/drivers/gpu/drm/sun4i/sun4i_tcon.c
-+++ b/drivers/gpu/drm/sun4i/sun4i_tcon.c
-@@ -20,6 +20,7 @@
- #include <linux/component.h>
- #include <linux/ioport.h>
- #include <linux/of_address.h>
-+#include <linux/of_device.h>
- #include <linux/of_graph.h>
- #include <linux/of_irq.h>
- #include <linux/regmap.h>
-@@ -62,7 +63,7 @@ void sun4i_tcon_channel_disable(struct sun4i_tcon *tcon, int channel)
- return;
- }
-
-- WARN_ON(!tcon->has_channel_1);
-+ WARN_ON(!tcon->quirks->has_channel_1);
- regmap_update_bits(tcon->regs, SUN4I_TCON1_CTL_REG,
- SUN4I_TCON1_CTL_TCON_ENABLE, 0);
- clk_disable_unprepare(tcon->sclk1);
-@@ -80,7 +81,7 @@ void sun4i_tcon_channel_enable(struct sun4i_tcon *tcon, int channel)
- return;
- }
-
-- WARN_ON(!tcon->has_channel_1);
-+ WARN_ON(!tcon->quirks->has_channel_1);
- regmap_update_bits(tcon->regs, SUN4I_TCON1_CTL_REG,
- SUN4I_TCON1_CTL_TCON_ENABLE,
- SUN4I_TCON1_CTL_TCON_ENABLE);
-@@ -202,7 +203,7 @@ void sun4i_tcon1_mode_set(struct sun4i_tcon *tcon,
- u8 clk_delay;
- u32 val;
-
-- WARN_ON(!tcon->has_channel_1);
-+ WARN_ON(!tcon->quirks->has_channel_1);
-
- /* Adjust clock delay */
- clk_delay = sun4i_tcon_get_clk_delay(mode, 1);
-@@ -266,7 +267,7 @@ void sun4i_tcon1_mode_set(struct sun4i_tcon *tcon,
- /*
- * FIXME: Undocumented bits
- */
-- if (tcon->has_mux)
-+ if (tcon->quirks->has_unknown_mux)
- regmap_write(tcon->regs, SUN4I_TCON_MUX_CTRL_REG, 1);
- }
- EXPORT_SYMBOL(sun4i_tcon1_mode_set);
-@@ -327,7 +328,7 @@ static int sun4i_tcon_init_clocks(struct device *dev,
- return PTR_ERR(tcon->sclk0);
- }
-
-- if (tcon->has_channel_1) {
-+ if (tcon->quirks->has_channel_1) {
- tcon->sclk1 = devm_clk_get(dev, "tcon-ch1");
- if (IS_ERR(tcon->sclk1)) {
- dev_err(dev, "Couldn't get the TCON channel 1 clock\n");
-@@ -487,14 +488,7 @@ static int sun4i_tcon_bind(struct device *dev, struct device *master,
- drv->tcon = tcon;
- tcon->drm = drm;
- tcon->dev = dev;
--
-- if (of_device_is_compatible(dev->of_node, "allwinner,sun5i-a13-tcon")) {
-- tcon->has_mux = true;
-- tcon->has_channel_1 = true;
-- } else {
-- tcon->has_mux = false;
-- tcon->has_channel_1 = false;
-- }
-+ tcon->quirks = of_device_get_match_data(dev);
-
- tcon->lcd_rst = devm_reset_control_get(dev, "lcd");
- if (IS_ERR(tcon->lcd_rst)) {
-@@ -588,9 +582,18 @@ static int sun4i_tcon_remove(struct platform_device *pdev)
- return 0;
- }
-
-+static const struct sun4i_tcon_quirks sun5i_a13_quirks = {
-+ .has_unknown_mux = true,
-+ .has_channel_1 = true,
-+};
-+
-+static const struct sun4i_tcon_quirks sun8i_a33_quirks = {
-+ /* nothing is supported */
-+};
-+
- static const struct of_device_id sun4i_tcon_of_table[] = {
-- { .compatible = "allwinner,sun5i-a13-tcon" },
-- { .compatible = "allwinner,sun8i-a33-tcon" },
-+ { .compatible = "allwinner,sun5i-a13-tcon", .data = &sun5i_a13_quirks },
-+ { .compatible = "allwinner,sun8i-a33-tcon", .data = &sun8i_a33_quirks },
- { }
- };
- MODULE_DEVICE_TABLE(of, sun4i_tcon_of_table);
-diff --git a/drivers/gpu/drm/sun4i/sun4i_tcon.h b/drivers/gpu/drm/sun4i/sun4i_tcon.h
-index 12bd48925f4d..166064bafe2e 100644
---- a/drivers/gpu/drm/sun4i/sun4i_tcon.h
-+++ b/drivers/gpu/drm/sun4i/sun4i_tcon.h
-@@ -142,6 +142,11 @@
-
- #define SUN4I_TCON_MAX_CHANNELS 2
-
-+struct sun4i_tcon_quirks {
-+ bool has_unknown_mux; /* sun5i has undocumented mux */
-+ bool has_channel_1; /* a33 does not have channel 1 */
-+};
-+
- struct sun4i_tcon {
- struct device *dev;
- struct drm_device *drm;
-@@ -160,12 +165,10 @@ struct sun4i_tcon {
- /* Reset control */
- struct reset_control *lcd_rst;
-
-- /* Platform adjustments */
-- bool has_mux;
--
- struct drm_panel *panel;
-
-- bool has_channel_1;
-+ /* Platform adjustments */
-+ const struct sun4i_tcon_quirks *quirks;
- };
-
- struct drm_bridge *sun4i_tcon_find_bridge(struct device_node *node);
---
-2.12.0
-
diff --git a/queue/series b/queue/series
index 3741908..176176e 100644
--- a/queue/series
+++ b/queue/series
@@ -48,9 +48,6 @@ MIPS-c-r4k-Fix-Loongson-3-s-vcache-scache-waysize-ca.patch
Documentation-stable-kernel-rules-fix-stable-tag-for.patch
mm-mempolicy.c-fix-error-handling-in-set_mempolicy-a.patch
random-use-chacha20-for-get_random_int-long.patch
-drm-sun4i-tcon-Move-SoC-specific-quirks-to-a-DT-matc.patch
-drm-sun4i-Add-compatible-strings-for-A31-A31s-displa.patch
-drm-sun4i-Add-compatible-string-for-A31-A31s-TCON-ti.patch
clk-lpc32xx-add-a-quirk-for-PWM-and-MS-clock-divider.patch
HID-usbhid-Add-quirks-for-Mayflash-Dragonrise-GameCu.patch
HID-i2c-hid-add-a-simple-quirk-to-fix-device-defects.patch