diff options
author | Paul Gortmaker <paul.gortmaker@windriver.com> | 2017-06-12 13:37:22 -0400 |
---|---|---|
committer | Paul Gortmaker <paul.gortmaker@windriver.com> | 2017-06-12 13:45:16 -0400 |
commit | 945e9a2cf54f59d90c68da2052e257e154b07b53 (patch) | |
tree | a3d6fcc94a8fbdf2c16a5f65b3b40e7964f9453f | |
parent | 690d33d4fc93e8f18c737e3ec564b8fe7c820b86 (diff) | |
download | longterm-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.patch | 85 | ||||
-rw-r--r-- | queue/drm-sun4i-Add-compatible-strings-for-A31-A31s-displa.patch | 88 | ||||
-rw-r--r-- | queue/drm-sun4i-tcon-Move-SoC-specific-quirks-to-a-DT-matc.patch | 144 | ||||
-rw-r--r-- | queue/series | 3 |
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 |