Linux Framebuffer Layer development
 help / color / mirror / Atom feed
* [PATCH 3/3] video: fbdev: imxfb: add some error handling
From: Uwe Kleine-König @ 2016-03-07 19:53 UTC (permalink / raw)
  To: linux-arm-kernel
In-Reply-To: <1457380425-20244-1-git-send-email-u.kleine-koenig@pengutronix.de>

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
 drivers/video/fbdev/imxfb.c | 33 ++++++++++++++++++++++++++-------
 1 file changed, 26 insertions(+), 7 deletions(-)

diff --git a/drivers/video/fbdev/imxfb.c b/drivers/video/fbdev/imxfb.c
index 3dd2824e6773..671b3719db56 100644
--- a/drivers/video/fbdev/imxfb.c
+++ b/drivers/video/fbdev/imxfb.c
@@ -473,8 +473,9 @@ static int imxfb_set_par(struct fb_info *info)
 	return 0;
 }
 
-static void imxfb_enable_controller(struct imxfb_info *fbi)
+static int imxfb_enable_controller(struct imxfb_info *fbi)
 {
+	int ret;
 
 	if (fbi->enabled)
 		return;
@@ -496,10 +497,27 @@ static void imxfb_enable_controller(struct imxfb_info *fbi)
 	 */
 	writel(RMCR_LCDC_EN_MX1, fbi->regs + LCDC_RMCR);
 
-	clk_prepare_enable(fbi->clk_ipg);
-	clk_prepare_enable(fbi->clk_ahb);
-	clk_prepare_enable(fbi->clk_per);
+	ret = clk_prepare_enable(fbi->clk_ipg);
+	if (ret)
+		goto err_enable_ipg;
+
+	ret = clk_prepare_enable(fbi->clk_ahb);
+	if (ret)
+		goto err_enable_ahb;
+
+	ret = clk_prepare_enable(fbi->clk_per);
+	if (ret) {
+		clk_disable_unprepare(fbi->clk_ahb);
+err_enable_ahb:
+		clk_disable_unprepare(fbi->clk_ipg);
+err_enable_ipg:
+		writel(0, fbi->regs + LCDC_RMCR);
+
+		return ret;
+	}
+
 	fbi->enabled = true;
+	return 0;
 }
 
 static void imxfb_disable_controller(struct imxfb_info *fbi)
@@ -510,8 +528,8 @@ static void imxfb_disable_controller(struct imxfb_info *fbi)
 	pr_debug("Disabling LCD controller\n");
 
 	clk_disable_unprepare(fbi->clk_per);
-	clk_disable_unprepare(fbi->clk_ipg);
 	clk_disable_unprepare(fbi->clk_ahb);
+	clk_disable_unprepare(fbi->clk_ipg);
 	fbi->enabled = false;
 
 	writel(0, fbi->regs + LCDC_RMCR);
@@ -520,6 +538,7 @@ static void imxfb_disable_controller(struct imxfb_info *fbi)
 static int imxfb_blank(int blank, struct fb_info *info)
 {
 	struct imxfb_info *fbi = info->par;
+	int ret = 0;;
 
 	pr_debug("imxfb_blank: blank=%d\n", blank);
 
@@ -532,10 +551,10 @@ static int imxfb_blank(int blank, struct fb_info *info)
 		break;
 
 	case FB_BLANK_UNBLANK:
-		imxfb_enable_controller(fbi);
+		ret = imxfb_enable_controller(fbi);
 		break;
 	}
-	return 0;
+	return ret;
 }
 
 static struct fb_ops imxfb_ops = {
-- 
2.7.0


^ permalink raw reply related

* Re: [PATCH 0/3] video: fbdev: imxfb: make it work again
From: Fabio Estevam @ 2016-03-07 20:03 UTC (permalink / raw)
  To: linux-arm-kernel
In-Reply-To: <1457380425-20244-1-git-send-email-u.kleine-koenig@pengutronix.de>

Hi Uwe,

On Mon, Mar 7, 2016 at 4:53 PM, Uwe Kleine-König
<u.kleine-koenig@pengutronix.de> wrote:
> Hello,
>
> it seems the imxfb driver stopped working quite some time ago. Here come

Yes, I noticed it has been broken for a long time.

After this fix I managed to get it working again:

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/video/fbdev/imxfb.c?id¸2fe6ddd782f847332aeabf8cab980852f61629

^ permalink raw reply

* Re: [PATCH 0/3] video: fbdev: imxfb: make it work again
From: Uwe Kleine-König @ 2016-03-07 20:10 UTC (permalink / raw)
  To: linux-arm-kernel
In-Reply-To: <CAOMZO5BxrVHNq8BdOqAqkaOqC905+AOSkFtsrWFHbz4cfN=Kaw@mail.gmail.com>

On Mon, Mar 07, 2016 at 05:03:53PM -0300, Fabio Estevam wrote:
> Hi Uwe,
> 
> On Mon, Mar 7, 2016 at 4:53 PM, Uwe Kleine-König
> <u.kleine-koenig@pengutronix.de> wrote:
> > Hello,
> >
> > it seems the imxfb driver stopped working quite some time ago. Here come
> 
> Yes, I noticed it has been broken for a long time.
> 
> After this fix I managed to get it working again:
> 
> https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/drivers/video/fbdev/imxfb.c?id¸2fe6ddd782f847332aeabf8cab980852f61629

I missed this one, but it works for me also without this patch (maybe
because my bootloader is aware of the display?).

My problem was that the handling for the optional regulator was
wrong/nonexistent. imx25-pdk.dts doesn't use it and so doesn't suffer
the corresponding problems.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

^ permalink raw reply

* Re: [PATCH 1/3] video: fbdev: imxfb: fix semantic of .get_power and .set_power
From: Philipp Zabel @ 2016-03-08  7:55 UTC (permalink / raw)
  To: linux-arm-kernel
In-Reply-To: <1457380425-20244-2-git-send-email-u.kleine-koenig@pengutronix.de>

Hi Uwe,

Am Montag, den 07.03.2016, 20:53 +0100 schrieb Uwe Kleine-König:
> .set_power gets passed an FB_BLANK_XXX value, not a bool. So 0 signals
> on; and >1 means off. The same applies for return values of .get_power.

I'd try to somehow work this information into the code to avoid future
confusion.

> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> ---
>  drivers/video/fbdev/imxfb.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/video/fbdev/imxfb.c b/drivers/video/fbdev/imxfb.c
> index cee88603efc9..c5fcedde2a60 100644
> --- a/drivers/video/fbdev/imxfb.c
> +++ b/drivers/video/fbdev/imxfb.c
> @@ -759,9 +759,9 @@ static int imxfb_lcd_get_power(struct lcd_device *lcddev)
>  	struct imxfb_info *fbi = dev_get_drvdata(&lcddev->dev);
>  
>  	if (!IS_ERR(fbi->lcd_pwr))
> -		return regulator_is_enabled(fbi->lcd_pwr);
> +		return !regulator_is_enabled(fbi->lcd_pwr);
>  
> -	return 1;
> +	return 0;

How about making it explicit:

	if (!IS_ERR(fbi->lcd_pwr) &&
	    !regulator_is_enabled(fbi->lcd_pwr))
		return FB_BLANK_POWERDOWN;

	return FB_BLANK_UNBLANK;

>  }
>  
>  static int imxfb_lcd_set_power(struct lcd_device *lcddev, int power)
> @@ -769,7 +769,7 @@ static int imxfb_lcd_set_power(struct lcd_device *lcddev, int power)
>  	struct imxfb_info *fbi = dev_get_drvdata(&lcddev->dev);
>  
>  	if (!IS_ERR(fbi->lcd_pwr)) {
> -		if (power)
> +		if (!power)

Same here:
		if (power = FB_BLANK_UNBLANK)

>  			return regulator_enable(fbi->lcd_pwr);
>  		else
>  			return regulator_disable(fbi->lcd_pwr);

regards
Philipp


^ permalink raw reply

* Re: [PATCH 3/3] video: fbdev: imxfb: add some error handling
From: Philipp Zabel @ 2016-03-08  8:00 UTC (permalink / raw)
  To: linux-arm-kernel
In-Reply-To: <1457380425-20244-4-git-send-email-u.kleine-koenig@pengutronix.de>

Am Montag, den 07.03.2016, 20:53 +0100 schrieb Uwe Kleine-König:
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> ---
>  drivers/video/fbdev/imxfb.c | 33 ++++++++++++++++++++++++++-------
>  1 file changed, 26 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/video/fbdev/imxfb.c b/drivers/video/fbdev/imxfb.c
> index 3dd2824e6773..671b3719db56 100644
> --- a/drivers/video/fbdev/imxfb.c
> +++ b/drivers/video/fbdev/imxfb.c
> @@ -473,8 +473,9 @@ static int imxfb_set_par(struct fb_info *info)
>  	return 0;
>  }
>  
> -static void imxfb_enable_controller(struct imxfb_info *fbi)
> +static int imxfb_enable_controller(struct imxfb_info *fbi)
>  {
> +	int ret;
>  
>  	if (fbi->enabled)
>  		return;
> @@ -496,10 +497,27 @@ static void imxfb_enable_controller(struct imxfb_info *fbi)
>  	 */
>  	writel(RMCR_LCDC_EN_MX1, fbi->regs + LCDC_RMCR);
>  
> -	clk_prepare_enable(fbi->clk_ipg);
> -	clk_prepare_enable(fbi->clk_ahb);
> -	clk_prepare_enable(fbi->clk_per);
> +	ret = clk_prepare_enable(fbi->clk_ipg);
> +	if (ret)
> +		goto err_enable_ipg;
> +
> +	ret = clk_prepare_enable(fbi->clk_ahb);
> +	if (ret)
> +		goto err_enable_ahb;
> +
> +	ret = clk_prepare_enable(fbi->clk_per);
> +	if (ret) {
> +		clk_disable_unprepare(fbi->clk_ahb);
> +err_enable_ahb:
> +		clk_disable_unprepare(fbi->clk_ipg);
> +err_enable_ipg:
> +		writel(0, fbi->regs + LCDC_RMCR);
> +
> +		return ret;
> +	}
> +
>  	fbi->enabled = true;
> +	return 0;
>  }
>  
>  static void imxfb_disable_controller(struct imxfb_info *fbi)
> @@ -510,8 +528,8 @@ static void imxfb_disable_controller(struct imxfb_info *fbi)
>  	pr_debug("Disabling LCD controller\n");
>  
>  	clk_disable_unprepare(fbi->clk_per);
> -	clk_disable_unprepare(fbi->clk_ipg);
>  	clk_disable_unprepare(fbi->clk_ahb);
> +	clk_disable_unprepare(fbi->clk_ipg);
>  	fbi->enabled = false;
>  
>  	writel(0, fbi->regs + LCDC_RMCR);
> @@ -520,6 +538,7 @@ static void imxfb_disable_controller(struct imxfb_info *fbi)
>  static int imxfb_blank(int blank, struct fb_info *info)
>  {
>  	struct imxfb_info *fbi = info->par;
> +	int ret = 0;;

s/;;/;/

>  
>  	pr_debug("imxfb_blank: blank=%d\n", blank);
>  
> @@ -532,10 +551,10 @@ static int imxfb_blank(int blank, struct fb_info *info)
>  		break;
>  
>  	case FB_BLANK_UNBLANK:
> -		imxfb_enable_controller(fbi);
> +		ret = imxfb_enable_controller(fbi);
>  		break;

or this could be simplified to:
		return imxfb_enable_controller(fbi);

>  	}
> -	return 0;
> +	return ret;
>  }
>  
>  static struct fb_ops imxfb_ops = {

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>

regards
Philipp


^ permalink raw reply

* Re: [PATCH 1/3] video: fbdev: imxfb: fix semantic of .get_power and .set_power
From: Uwe Kleine-König @ 2016-03-08  8:30 UTC (permalink / raw)
  To: linux-arm-kernel
In-Reply-To: <1457423730.4174.4.camel@pengutronix.de>

Hello,

On Tue, Mar 08, 2016 at 08:55:30AM +0100, Philipp Zabel wrote:
> Hi Uwe,
> 
> Am Montag, den 07.03.2016, 20:53 +0100 schrieb Uwe Kleine-König:
> > .set_power gets passed an FB_BLANK_XXX value, not a bool. So 0 signals
> > on; and >1 means off. The same applies for return values of .get_power.
> 
> I'd try to somehow work this information into the code to avoid future
> confusion.

I integrated your changes into my code, you're obviously right here.

Jean-Christophe, Tomi: Do you agree in principle with these changes? If
so I can resend. If you won't take the changes anyhow, I wouldn't.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

^ permalink raw reply

* [PATCH v2 1/2] video: goldfishfb: add devicetree bindings
From: Alan @ 2016-03-10 15:39 UTC (permalink / raw)
  To: devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-fbdev-u79uwXL29TY76Z2rM5mHXA, tomi.valkeinen-l0cyMroinI0,
	plagnioj-sclMFOaUSTBWk0Htik3J/w

From: Greg Hackmann <ghackmann@google.com>

Add device tree bindings to the Goldfish frame buffer interface.

Signed-off-by: Greg Hackmann <ghackmann@google.com>
Signed-off-by: Jin Qian <jinqian@android.com>
Signed-off-by: Alan Cox <alan@linux.intel.com>
---
 Documentation/devicetree/bindings/goldfish/fb.txt |   17 +++++++++++++++++
 drivers/video/fbdev/goldfishfb.c                  |    9 ++++++++-
 2 files changed, 25 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/devicetree/bindings/goldfish/fb.txt

diff --git a/Documentation/devicetree/bindings/goldfish/fb.txt b/Documentation/devicetree/bindings/goldfish/fb.txt
new file mode 100644
index 0000000..8e7a6f8
--- /dev/null
+++ b/Documentation/devicetree/bindings/goldfish/fb.txt
@@ -0,0 +1,17 @@
+Android Goldfish Framebuffer
+
+Android goldfish framebuffer device generated by android emulator.
+
+Required properties:
+
+- compatible : should contain "google,goldfish-fb" to match emulator
+- reg        : <registers mapping>
+- interrupts : <interrupt mapping>
+
+Example:
+
+	goldfish_fb@9010000 {
+		compatible = "google,goldfish-fb";
+		reg = <0x9010000 0x100>;
+		interrupts = <0x2>;
+	};
diff --git a/drivers/video/fbdev/goldfishfb.c b/drivers/video/fbdev/goldfishfb.c
index 7f6c9e6..f0e651b 100644
--- a/drivers/video/fbdev/goldfishfb.c
+++ b/drivers/video/fbdev/goldfishfb.c
@@ -304,12 +304,19 @@ static int goldfish_fb_remove(struct platform_device *pdev)
 	return 0;
 }
 
+static const struct of_device_id goldfish_fb_of_match[] = {
+	{ .compatible = "google,goldfish-fb", },
+	{},
+};
+MODULE_DEVICE_TABLE(of, goldfish_fb_of_match);
 
 static struct platform_driver goldfish_fb_driver = {
 	.probe		= goldfish_fb_probe,
 	.remove		= goldfish_fb_remove,
 	.driver = {
-		.name = "goldfish_fb"
+		.name = "goldfish_fb",
+		.owner = THIS_MODULE,
+		.of_match_table = goldfish_fb_of_match,
 	}
 };
 


^ permalink raw reply related

* [PATCH v2 2/2] goldfish: Enable ACPI-based enumeration for goldfish framebuffer
From: Alan @ 2016-03-10 15:39 UTC (permalink / raw)
  To: devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-fbdev-u79uwXL29TY76Z2rM5mHXA, tomi.valkeinen-l0cyMroinI0,
	plagnioj-sclMFOaUSTBWk0Htik3J/w
In-Reply-To: <20160310153845.8996.17736.stgit-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>

From: Yu Ning <yu.ning@intel.com>

Enable ACPI bindings for the Goldfish framebuffer device.

Signed-off-by: Yu Ning <yu.ning@intel.com>
Signed-off-by: Jin Qian <jinqian@android.com>
Signed-off-by: Alan <alan@linux.intel.com>
---
 drivers/video/fbdev/goldfishfb.c |    8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/drivers/video/fbdev/goldfishfb.c b/drivers/video/fbdev/goldfishfb.c
index f0e651b..58b33e4 100644
--- a/drivers/video/fbdev/goldfishfb.c
+++ b/drivers/video/fbdev/goldfishfb.c
@@ -26,6 +26,7 @@
 #include <linux/interrupt.h>
 #include <linux/ioport.h>
 #include <linux/platform_device.h>
+#include <linux/acpi.h>
 
 enum {
 	FB_GET_WIDTH        = 0x00,
@@ -310,6 +311,12 @@ static const struct of_device_id goldfish_fb_of_match[] = {
 };
 MODULE_DEVICE_TABLE(of, goldfish_fb_of_match);
 
+static const struct acpi_device_id goldfish_fb_acpi_match[] = {
+	{ "GFSH0004", 0 },
+	{ },
+};
+MODULE_DEVICE_TABLE(acpi, goldfish_fb_acpi_match);
+
 static struct platform_driver goldfish_fb_driver = {
 	.probe		= goldfish_fb_probe,
 	.remove		= goldfish_fb_remove,
@@ -317,6 +324,7 @@ static struct platform_driver goldfish_fb_driver = {
 		.name = "goldfish_fb",
 		.owner = THIS_MODULE,
 		.of_match_table = goldfish_fb_of_match,
+		.acpi_match_table = ACPI_PTR(goldfish_fb_acpi_match),
 	}
 };
 


^ permalink raw reply related

* Re: [PATCH v3 00/12] pwm: add support for atomic update
From: Thierry Reding @ 2016-03-10 17:54 UTC (permalink / raw)
  To: linux-arm-kernel
In-Reply-To: <CAD=FV=W3KPf8tyMviVNB9=HjefMdP+FBbN01Zhh7RKH+gkj2WQ@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 1195 bytes --]

On Mon, Mar 07, 2016 at 08:34:19AM -0800, Doug Anderson wrote:
> Thierry,
> 
> On Thu, Feb 25, 2016 at 3:14 PM, Doug Anderson <dianders@google.com> wrote:
> > So just to summarize:
> >
> > * Add pwm_get_state(), pwm_apply_state(), pwm_get_args().
> > pwm_get_state() initially returns 0 for duty cycle if driver doesn't
> > support readout.
> >
> > * Re-implement pwm_get_period() (and maybe other similar functions)
> > atop pwm_get_state() as you describe earlier in the thread.
> >
> > * Document pwm_get_period() (and maybe other similar functions) as deprecated.
> >
> > * Fix drivers for all current 2 users of PWM regulator to support
> > hardware readout.
> >
> > * Update PWM regulator as you described earlier in the thread (Feb 23).
> >
> > * If PWM regulator is ever used on a new board whose PWM doesn't
> > support hardware readout, the voltage will change at probe time.
> >
> >
> > Did I get all that right?  Thanks!
> 
> Can you provide a "yes, you got that right" or a "no, you didn't
> understand"?  That will unblock Boris, I think.

Sounds about right. Hopefully this will eliminate any objections that
others had about the series.

Thierry

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply

* [PATCH 0/2] fbdev: sh_mobile_meram: use ARCH_RENESAS
From: Simon Horman @ 2016-03-11  2:28 UTC (permalink / raw)
  To: linux-fbdev

Use ARCH_RENESAS in place of ARCH_SHMOBILE.

This is part of an ongoing process to migrate from ARCH_SHMOBILE to
ARCH_RENESAS the motivation for which being that RENESAS seems to be a more
appropriate name than SHMOBILE for the majority of Renesas ARM based SoCs.

As a follow-up also depend on COMPILE_TEST to provided for increased
compile testing.

Based on v4.5-rc1

Simon Horman (2):
  fbdev: sh_mobile_meram: use ARCH_RENESAS
  fbdev: sh_mobile_meram: depend on COMPILE_TEST

 drivers/video/fbdev/Kconfig | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

-- 
2.7.0.rc3.207.g0ac5344


^ permalink raw reply

* [PATCH 1/2] fbdev: sh_mobile_meram: use ARCH_RENESAS
From: Simon Horman @ 2016-03-11  2:28 UTC (permalink / raw)
  To: linux-fbdev

Use ARCH_RENESAS in place of ARCH_SHMOBILE.
Also remove spurious ().

This is part of an ongoing process to migrate from ARCH_SHMOBILE to
ARCH_RENESAS the motivation for which being that RENESAS seems to be a more
appropriate name than SHMOBILE for the majority of Renesas ARM based SoCs.

Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
 drivers/video/fbdev/Kconfig | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 8ea45a5cd806..71294f595f61 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -1985,7 +1985,7 @@ config FB_W100
 
 config FB_SH_MOBILE_LCDC
 	tristate "SuperH Mobile LCDC framebuffer support"
-	depends on FB && (SUPERH || ARCH_SHMOBILE) && HAVE_CLK
+	depends on FB && (SUPERH || ARCH_RENESAS) && HAVE_CLK
 	depends on FB_SH_MOBILE_MERAM || !FB_SH_MOBILE_MERAM
 	select FB_SYS_FILLRECT
 	select FB_SYS_COPYAREA
@@ -2450,7 +2450,7 @@ source "drivers/video/fbdev/mmp/Kconfig"
 
 config FB_SH_MOBILE_MERAM
 	tristate "SuperH Mobile MERAM read ahead support"
-	depends on (SUPERH || ARCH_SHMOBILE)
+	depends on SUPERH || ARCH_RENESAS
 	select GENERIC_ALLOCATOR
 	---help---
 	  Enable MERAM support for the SuperH controller.
-- 
2.7.0.rc3.207.g0ac5344


^ permalink raw reply related

* [PATCH 2/2] fbdev: sh_mobile_meram: depend on COMPILE_TEST
From: Simon Horman @ 2016-03-11  2:28 UTC (permalink / raw)
  To: linux-fbdev

Increase compilation coverage by allowing it to be selected if
COMPILE_TEST is selected.

Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
---
 drivers/video/fbdev/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
index 71294f595f61..99da988b39be 100644
--- a/drivers/video/fbdev/Kconfig
+++ b/drivers/video/fbdev/Kconfig
@@ -2450,7 +2450,7 @@ source "drivers/video/fbdev/mmp/Kconfig"
 
 config FB_SH_MOBILE_MERAM
 	tristate "SuperH Mobile MERAM read ahead support"
-	depends on SUPERH || ARCH_RENESAS
+	depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
 	select GENERIC_ALLOCATOR
 	---help---
 	  Enable MERAM support for the SuperH controller.
-- 
2.7.0.rc3.207.g0ac5344


^ permalink raw reply related

* Re: [PATCH 1/2] fbdev: sh_mobile_meram: use ARCH_RENESAS
From: Laurent Pinchart @ 2016-03-11  7:14 UTC (permalink / raw)
  To: linux-fbdev
In-Reply-To: <1457663298-31973-2-git-send-email-horms+renesas@verge.net.au>

Hi Simon,

Thank you for the patch.

On Friday 11 March 2016 11:28:17 Simon Horman wrote:
> Use ARCH_RENESAS in place of ARCH_SHMOBILE.
> Also remove spurious ().
> 
> This is part of an ongoing process to migrate from ARCH_SHMOBILE to
> ARCH_RENESAS the motivation for which being that RENESAS seems to be a more
> appropriate name than SHMOBILE for the majority of Renesas ARM based SoCs.
> 
> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
> ---
>  drivers/video/fbdev/Kconfig | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
> index 8ea45a5cd806..71294f595f61 100644
> --- a/drivers/video/fbdev/Kconfig
> +++ b/drivers/video/fbdev/Kconfig
> @@ -1985,7 +1985,7 @@ config FB_W100
> 
>  config FB_SH_MOBILE_LCDC
>  	tristate "SuperH Mobile LCDC framebuffer support"
> -	depends on FB && (SUPERH || ARCH_SHMOBILE) && HAVE_CLK
> +	depends on FB && (SUPERH || ARCH_RENESAS) && HAVE_CLK
>  	depends on FB_SH_MOBILE_MERAM || !FB_SH_MOBILE_MERAM
>  	select FB_SYS_FILLRECT
>  	select FB_SYS_COPYAREA
> @@ -2450,7 +2450,7 @@ source "drivers/video/fbdev/mmp/Kconfig"
> 
>  config FB_SH_MOBILE_MERAM
>  	tristate "SuperH Mobile MERAM read ahead support"
> -	depends on (SUPERH || ARCH_SHMOBILE)
> +	depends on SUPERH || ARCH_RENESAS

The MERAM driver isn't used by any ARM platform, you can just drop 
ARCH_SHMOBILE completely.

>  	select GENERIC_ALLOCATOR
>  	---help---
>  	  Enable MERAM support for the SuperH controller.

-- 
Regards,

Laurent Pinchart


^ permalink raw reply

* Re: [PATCH 1/2] fbdev: sh_mobile_meram: use ARCH_RENESAS
From: Laurent Pinchart @ 2016-03-11  7:22 UTC (permalink / raw)
  To: linux-fbdev
In-Reply-To: <1457663298-31973-2-git-send-email-horms+renesas@verge.net.au>

Hi Simon,

On Friday 11 March 2016 09:14:46 Laurent Pinchart wrote:
> On Friday 11 March 2016 11:28:17 Simon Horman wrote:
> > Use ARCH_RENESAS in place of ARCH_SHMOBILE.
> > Also remove spurious ().
> > 
> > This is part of an ongoing process to migrate from ARCH_SHMOBILE to
> > ARCH_RENESAS the motivation for which being that RENESAS seems to be a
> > more appropriate name than SHMOBILE for the majority of Renesas ARM based
> > SoCs.
> > 
> > Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
> > ---
> > 
> >  drivers/video/fbdev/Kconfig | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
> > index 8ea45a5cd806..71294f595f61 100644
> > --- a/drivers/video/fbdev/Kconfig
> > +++ b/drivers/video/fbdev/Kconfig
> > @@ -1985,7 +1985,7 @@ config FB_W100
> > 
> >  config FB_SH_MOBILE_LCDC
> >  	tristate "SuperH Mobile LCDC framebuffer support"
> > -	depends on FB && (SUPERH || ARCH_SHMOBILE) && HAVE_CLK
> > +	depends on FB && (SUPERH || ARCH_RENESAS) && HAVE_CLK
> >  	depends on FB_SH_MOBILE_MERAM || !FB_SH_MOBILE_MERAM
> >  	select FB_SYS_FILLRECT
> >  	select FB_SYS_COPYAREA
> > @@ -2450,7 +2450,7 @@ source "drivers/video/fbdev/mmp/Kconfig"
> > 
> >  config FB_SH_MOBILE_MERAM
> >  	tristate "SuperH Mobile MERAM read ahead support"
> > -	depends on (SUPERH || ARCH_SHMOBILE)
> > +	depends on SUPERH || ARCH_RENESAS
> 
> The MERAM driver isn't used by any ARM platform, you can just drop
> ARCH_SHMOBILE completely.

Actually, upon closer inspection, the MERAM driver isn't used by any platform.

> >  	select GENERIC_ALLOCATOR
> >  	---help---
> >  	  Enable MERAM support for the SuperH controller.

-- 
Regards,

Laurent Pinchart


^ permalink raw reply

* Re: [PATCH 1/2] fbdev: sh_mobile_meram: use ARCH_RENESAS
From: Geert Uytterhoeven @ 2016-03-11  7:55 UTC (permalink / raw)
  To: linux-fbdev
In-Reply-To: <1457663298-31973-2-git-send-email-horms+renesas@verge.net.au>

Hi Simon,

On Fri, Mar 11, 2016 at 3:28 AM, Simon Horman
<horms+renesas@verge.net.au> wrote:
> Use ARCH_RENESAS in place of ARCH_SHMOBILE.
> Also remove spurious ().
>
> This is part of an ongoing process to migrate from ARCH_SHMOBILE to
> ARCH_RENESAS the motivation for which being that RENESAS seems to be a more
> appropriate name than SHMOBILE for the majority of Renesas ARM based SoCs.
>
> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
> ---
>  drivers/video/fbdev/Kconfig | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
> index 8ea45a5cd806..71294f595f61 100644
> --- a/drivers/video/fbdev/Kconfig
> +++ b/drivers/video/fbdev/Kconfig
> @@ -1985,7 +1985,7 @@ config FB_W100
>
>  config FB_SH_MOBILE_LCDC
>         tristate "SuperH Mobile LCDC framebuffer support"
> -       depends on FB && (SUPERH || ARCH_SHMOBILE) && HAVE_CLK
> +       depends on FB && (SUPERH || ARCH_RENESAS) && HAVE_CLK

I would replace SUPERH by ARCH_RENESAS, and thus keep ARCH_SHMOBILE.

"sh_mobile_lcdc_fb" is used on SH_AP325RXA, SH_ECOVEC, SH_KFR2R09, SH_MIGOR,
and SH_7724_SOLUTION_ENGINE, which depend on either CPU_SUBTYPE_SH7722,
CPU_SUBTYPE_SH7723, or CPU_SUBTYPE_SH7724, and all three select ARCH_SHMOBILE.

In addition, it's used on r8a7740/armadillo800eva, which is covered by
ARCH_RENESAS.

>         depends on FB_SH_MOBILE_MERAM || !FB_SH_MOBILE_MERAM
>         select FB_SYS_FILLRECT
>         select FB_SYS_COPYAREA
> @@ -2450,7 +2450,7 @@ source "drivers/video/fbdev/mmp/Kconfig"
>
>  config FB_SH_MOBILE_MERAM
>         tristate "SuperH Mobile MERAM read ahead support"
> -       depends on (SUPERH || ARCH_SHMOBILE)
> +       depends on SUPERH || ARCH_RENESAS
>         select GENERIC_ALLOCATOR
>         ---help---
>           Enable MERAM support for the SuperH controller.

As Laurent already pointed out, that one is currently unused.

It could be used on sh73a0, r8a7740, and some SuperH SH-Mobile SoCs, though.

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply

* Re: [PATCH 2/2] fbdev: sh_mobile_meram: depend on COMPILE_TEST
From: Geert Uytterhoeven @ 2016-03-11  8:22 UTC (permalink / raw)
  To: linux-fbdev
In-Reply-To: <1457663298-31973-3-git-send-email-horms+renesas@verge.net.au>

On Fri, Mar 11, 2016 at 3:28 AM, Simon Horman
<horms+renesas@verge.net.au> wrote:
> Increase compilation coverage by allowing it to be selected if
> COMPILE_TEST is selected.
>
> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>

Acked-by: Geert Uytterhoeven <geert+renesas@glider.be>

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply

* Re: [PATCH v3 00/12] pwm: add support for atomic update
From: Boris Brezillon @ 2016-03-11  9:51 UTC (permalink / raw)
  To: linux-arm-kernel
In-Reply-To: <20160310175438.GA5648@ulmo.nvidia.com>

Hi Thierry,

On Thu, 10 Mar 2016 18:54:38 +0100
Thierry Reding <thierry.reding@gmail.com> wrote:

> On Mon, Mar 07, 2016 at 08:34:19AM -0800, Doug Anderson wrote:
> > Thierry,
> > 
> > On Thu, Feb 25, 2016 at 3:14 PM, Doug Anderson <dianders@google.com> wrote:
> > > So just to summarize:
> > >
> > > * Add pwm_get_state(), pwm_apply_state(), pwm_get_args().
> > > pwm_get_state() initially returns 0 for duty cycle if driver doesn't
> > > support readout.
> > >
> > > * Re-implement pwm_get_period() (and maybe other similar functions)
> > > atop pwm_get_state() as you describe earlier in the thread.
> > >
> > > * Document pwm_get_period() (and maybe other similar functions) as deprecated.
> > >
> > > * Fix drivers for all current 2 users of PWM regulator to support
> > > hardware readout.
> > >
> > > * Update PWM regulator as you described earlier in the thread (Feb 23).
> > >
> > > * If PWM regulator is ever used on a new board whose PWM doesn't
> > > support hardware readout, the voltage will change at probe time.
> > >
> > >
> > > Did I get all that right?  Thanks!
> > 
> > Can you provide a "yes, you got that right" or a "no, you didn't
> > understand"?  That will unblock Boris, I think.
> 
> Sounds about right. Hopefully this will eliminate any objections that
> others had about the series.

Okay, I'll rework the series accordingly and send a new version soon.

Thanks,

Boris

-- 
Boris Brezillon, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply

* Re: [PATCH 2/3] video: fbdev: imxfb: enable lcd regulator in .probe
From: Tomi Valkeinen @ 2016-03-11 11:22 UTC (permalink / raw)
  To: linux-arm-kernel
In-Reply-To: <1457380425-20244-3-git-send-email-u.kleine-koenig@pengutronix.de>


[-- Attachment #1.1: Type: text/plain, Size: 1818 bytes --]


On 07/03/16 21:53, Uwe Kleine-König wrote:
> This asserts that the display is on after the driver is initialized.
> Otherwise, depending on how the boot loader handled the display, it is
> either disabled as the regulator doesn't seem in use, or it stays off.
> 
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> ---
>  drivers/video/fbdev/imxfb.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/drivers/video/fbdev/imxfb.c b/drivers/video/fbdev/imxfb.c
> index c5fcedde2a60..3dd2824e6773 100644
> --- a/drivers/video/fbdev/imxfb.c
> +++ b/drivers/video/fbdev/imxfb.c
> @@ -979,8 +979,17 @@ static int imxfb_probe(struct platform_device *pdev)
>  	imxfb_enable_controller(fbi);
>  	fbi->pdev = pdev;
>  
> +	if (!IS_ERR(fbi->lcd_pwr)) {
> +		ret = regulator_enable(fbi->lcd_pwr);
> +		if (ret)
> +			goto failed_regulator;
> +	}
> +
>  	return 0;
>  
> +failed_regulator:
> +	imxfb_disable_controller(fbi);
> +
>  failed_lcd:
>  	unregister_framebuffer(info);

So I didn't go through the code in detail, but this doesn't look correct
to me.

Where is the regulator disabled which now gets enabled in probe?

imxfb_lcd_set_power() handles the regulator enable/disable, so doesn't
this mean the regulator would always be enabled? You first enable it in
probe, then imxfb_lcd_set_power() enables it at some point (?), so the
enable-count is two then.

To be honest, I've never used 'struct lcd_ops', but I think the enabling
of the regulator should happen somehow via that. If the regulator needs
to be enabled at probe time, then the probe should somehow cause
lcd_ops->set_power to get called.

Why does the regulator need to be enabled at probe? Or are you saying
imxfb_lcd_set_power() is never called in your case?

 Tomi


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply

* Re: [PATCH 3/3] video: fbdev: imxfb: add some error handling
From: Tomi Valkeinen @ 2016-03-11 11:26 UTC (permalink / raw)
  To: linux-arm-kernel
In-Reply-To: <1457380425-20244-4-git-send-email-u.kleine-koenig@pengutronix.de>


[-- Attachment #1.1: Type: text/plain, Size: 2904 bytes --]


On 07/03/16 21:53, Uwe Kleine-König wrote:
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>

Always have a description in a patch. In trivial cases it can be more or
less the same as the subject.

> ---
>  drivers/video/fbdev/imxfb.c | 33 ++++++++++++++++++++++++++-------
>  1 file changed, 26 insertions(+), 7 deletions(-)
> 
> diff --git a/drivers/video/fbdev/imxfb.c b/drivers/video/fbdev/imxfb.c
> index 3dd2824e6773..671b3719db56 100644
> --- a/drivers/video/fbdev/imxfb.c
> +++ b/drivers/video/fbdev/imxfb.c
> @@ -473,8 +473,9 @@ static int imxfb_set_par(struct fb_info *info)
>  	return 0;
>  }
>  
> -static void imxfb_enable_controller(struct imxfb_info *fbi)
> +static int imxfb_enable_controller(struct imxfb_info *fbi)
>  {
> +	int ret;
>  
>  	if (fbi->enabled)
>  		return;
> @@ -496,10 +497,27 @@ static void imxfb_enable_controller(struct imxfb_info *fbi)
>  	 */
>  	writel(RMCR_LCDC_EN_MX1, fbi->regs + LCDC_RMCR);
>  
> -	clk_prepare_enable(fbi->clk_ipg);
> -	clk_prepare_enable(fbi->clk_ahb);
> -	clk_prepare_enable(fbi->clk_per);
> +	ret = clk_prepare_enable(fbi->clk_ipg);
> +	if (ret)
> +		goto err_enable_ipg;
> +
> +	ret = clk_prepare_enable(fbi->clk_ahb);
> +	if (ret)
> +		goto err_enable_ahb;
> +
> +	ret = clk_prepare_enable(fbi->clk_per);
> +	if (ret) {
> +		clk_disable_unprepare(fbi->clk_ahb);
> +err_enable_ahb:
> +		clk_disable_unprepare(fbi->clk_ipg);
> +err_enable_ipg:
> +		writel(0, fbi->regs + LCDC_RMCR);

Please don't do that =). If you use goto, have the labels at the end of
the function, not in the middle inside a if() block...

> +
> +		return ret;
> +	}
> +
>  	fbi->enabled = true;
> +	return 0;
>  }
>  
>  static void imxfb_disable_controller(struct imxfb_info *fbi)
> @@ -510,8 +528,8 @@ static void imxfb_disable_controller(struct imxfb_info *fbi)
>  	pr_debug("Disabling LCD controller\n");
>  
>  	clk_disable_unprepare(fbi->clk_per);
> -	clk_disable_unprepare(fbi->clk_ipg);
>  	clk_disable_unprepare(fbi->clk_ahb);
> +	clk_disable_unprepare(fbi->clk_ipg);

This is not error handling. I don't mind it being in the same patch, but
this change is something to mention in the description.

>  	fbi->enabled = false;
>  
>  	writel(0, fbi->regs + LCDC_RMCR);
> @@ -520,6 +538,7 @@ static void imxfb_disable_controller(struct imxfb_info *fbi)
>  static int imxfb_blank(int blank, struct fb_info *info)
>  {
>  	struct imxfb_info *fbi = info->par;
> +	int ret = 0;;

Extra ;.

>  
>  	pr_debug("imxfb_blank: blank=%d\n", blank);
>  
> @@ -532,10 +551,10 @@ static int imxfb_blank(int blank, struct fb_info *info)
>  		break;
>  
>  	case FB_BLANK_UNBLANK:
> -		imxfb_enable_controller(fbi);
> +		ret = imxfb_enable_controller(fbi);
>  		break;
>  	}
> -	return 0;
> +	return ret;
>  }
>  
>  static struct fb_ops imxfb_ops = {
> 


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply

* Re: [PATCH] video: AMBA CLCD: Remove duplicated include in amba-clcd.c
From: Tomi Valkeinen @ 2016-03-11 11:33 UTC (permalink / raw)
  To: Wang Hongcheng, Russell King, Jean-Christophe Plagniol-Villard,
	linux-fbdev, linux-kernel, Borislav Petkov, SPG_Linux_Kernel
In-Reply-To: <1457057406-4069-1-git-send-email-annie.wang@amd.com>


[-- Attachment #1.1: Type: text/plain, Size: 254 bytes --]

On 04/03/16 04:10, Wang Hongcheng wrote:
> The header file asm/sizes.h is unnecessary.
> And it can also be compiled under X86 arch after the removal.

The subject says the include is duplicate, but the description says it's
not needed.

 Tomi


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply

* Re: [PATCH v2] xen kconfig: don't "select INPUT_XEN_KBDDEV_FRONTEND"
From: Tomi Valkeinen @ 2016-03-11 11:37 UTC (permalink / raw)
  To: linux-arm-kernel
In-Reply-To: <2479546.WgivMO2bp2@wuerfel>


[-- Attachment #1.1: Type: text/plain, Size: 1704 bytes --]

On 16/02/16 17:03, Arnd Bergmann wrote:
> The Xen framebuffer driver selects the xen keyboard driver, so the latter
> will be built-in if XEN_FBDEV_FRONTEND=y. However, when CONFIG_INPUT
> is a loadable module, this configuration cannot work. On mainline kernels,
> the symbol will be enabled but not used, while in combination with
> a patch I have to detect such useless configurations, we get the
> expected link failure:
> 
> drivers/input/built-in.o: In function `xenkbd_remove':
> xen-kbdfront.c:(.text+0x2f0): undefined reference to `input_unregister_device'
> xen-kbdfront.c:(.text+0x30e): undefined reference to `input_unregister_device'
> 
> This removes the extra "select", as it just causes more trouble than
> it helps. In theory, some defconfig file might break if it has
> XEN_FBDEV_FRONTEND in it but not INPUT_XEN_KBDDEV_FRONTEND. The Kconfig
> fragment we ship in the kernel (kernel/configs/xen.config) however
> already enables both, and anyone using an old .config file would
> keep having both enabled.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> Suggested-by: David Vrabel <david.vrabel@citrix.com>
> Fixes: 36c1132e34bd ("xen kconfig: fix select INPUT_XEN_KBDDEV_FRONTEND")
> 
> diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
> index 8ea45a5cd806..d889ef2048df 100644
> --- a/drivers/video/fbdev/Kconfig
> +++ b/drivers/video/fbdev/Kconfig
> @@ -2246,7 +2246,6 @@ config XEN_FBDEV_FRONTEND
>  	select FB_SYS_IMAGEBLIT
>  	select FB_SYS_FOPS
>  	select FB_DEFERRED_IO
> -	select INPUT_XEN_KBDDEV_FRONTEND if INPUT_MISC
>  	select XEN_XENBUS_FRONTEND
>  	default y
>  	help
> 

Thanks, queued for 4.6.

 Tomi


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply

* Re: [PATCH 1/2] fbdev: sh_mobile_meram: use ARCH_RENESAS
From: Simon Horman @ 2016-03-14  0:13 UTC (permalink / raw)
  To: linux-fbdev
In-Reply-To: <1457663298-31973-2-git-send-email-horms+renesas@verge.net.au>

On Fri, Mar 11, 2016 at 08:55:36AM +0100, Geert Uytterhoeven wrote:
> Hi Simon,
> 
> On Fri, Mar 11, 2016 at 3:28 AM, Simon Horman
> <horms+renesas@verge.net.au> wrote:
> > Use ARCH_RENESAS in place of ARCH_SHMOBILE.
> > Also remove spurious ().
> >
> > This is part of an ongoing process to migrate from ARCH_SHMOBILE to
> > ARCH_RENESAS the motivation for which being that RENESAS seems to be a more
> > appropriate name than SHMOBILE for the majority of Renesas ARM based SoCs.
> >
> > Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
> > ---
> >  drivers/video/fbdev/Kconfig | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
> > index 8ea45a5cd806..71294f595f61 100644
> > --- a/drivers/video/fbdev/Kconfig
> > +++ b/drivers/video/fbdev/Kconfig
> > @@ -1985,7 +1985,7 @@ config FB_W100
> >
> >  config FB_SH_MOBILE_LCDC
> >         tristate "SuperH Mobile LCDC framebuffer support"
> > -       depends on FB && (SUPERH || ARCH_SHMOBILE) && HAVE_CLK
> > +       depends on FB && (SUPERH || ARCH_RENESAS) && HAVE_CLK
> 
> I would replace SUPERH by ARCH_RENESAS, and thus keep ARCH_SHMOBILE.
> 
> "sh_mobile_lcdc_fb" is used on SH_AP325RXA, SH_ECOVEC, SH_KFR2R09, SH_MIGOR,
> and SH_7724_SOLUTION_ENGINE, which depend on either CPU_SUBTYPE_SH7722,
> CPU_SUBTYPE_SH7723, or CPU_SUBTYPE_SH7724, and all three select ARCH_SHMOBILE.
> 
> In addition, it's used on r8a7740/armadillo800eva, which is covered by
> ARCH_RENESAS.
> 
> >         depends on FB_SH_MOBILE_MERAM || !FB_SH_MOBILE_MERAM
> >         select FB_SYS_FILLRECT
> >         select FB_SYS_COPYAREA
> > @@ -2450,7 +2450,7 @@ source "drivers/video/fbdev/mmp/Kconfig"
> >
> >  config FB_SH_MOBILE_MERAM
> >         tristate "SuperH Mobile MERAM read ahead support"
> > -       depends on (SUPERH || ARCH_SHMOBILE)
> > +       depends on SUPERH || ARCH_RENESAS
> >         select GENERIC_ALLOCATOR
> >         ---help---
> >           Enable MERAM support for the SuperH controller.
> 
> As Laurent already pointed out, that one is currently unused.
> 
> It could be used on sh73a0, r8a7740, and some SuperH SH-Mobile SoCs, though.

I'm inclined to remove the driver if its unused (I assume that has
been the case for quite some time).

^ permalink raw reply

* [PATCH v2] video: AMBA CLCD: Remove unncessary include in amba-clcd.c
From: Wang Hongcheng @ 2016-03-14  2:29 UTC (permalink / raw)
  To: Russell King, Jean-Christophe Plagniol-Villard, Tomi Valkeinen,
	linux-fbdev, linux-kernel, Borislav Petkov, SPG_Linux_Kernel
  Cc: Wang Hongcheng

The header file asm/sizes.h is unnecessary.
And it can also be compiled under X86 arch after the removal.

Signed-off-by: Wang Hongcheng <annie.wang@amd.com>
---
 drivers/video/fbdev/amba-clcd.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/video/fbdev/amba-clcd.c b/drivers/video/fbdev/amba-clcd.c
index 9362424..1a1ed80 100644
--- a/drivers/video/fbdev/amba-clcd.c
+++ b/drivers/video/fbdev/amba-clcd.c
@@ -34,8 +34,6 @@
 #include <video/of_display_timing.h>
 #include <video/videomode.h>
 
-#include <asm/sizes.h>
-
 #define to_clcd(info)	container_of(info, struct clcd_fb, fb)
 
 /* This is limited to 16 characters when displayed by X startup */
-- 
1.9.1


^ permalink raw reply related

* Re: [PATCH 1/2] fbdev: sh_mobile_meram: use ARCH_RENESAS
From: Simon Horman @ 2016-03-15  1:25 UTC (permalink / raw)
  To: linux-fbdev
In-Reply-To: <1457663298-31973-2-git-send-email-horms+renesas@verge.net.au>

On Fri, Mar 11, 2016 at 09:22:08AM +0200, Laurent Pinchart wrote:
> Hi Simon,
> 
> On Friday 11 March 2016 09:14:46 Laurent Pinchart wrote:
> > On Friday 11 March 2016 11:28:17 Simon Horman wrote:
> > > Use ARCH_RENESAS in place of ARCH_SHMOBILE.
> > > Also remove spurious ().
> > > 
> > > This is part of an ongoing process to migrate from ARCH_SHMOBILE to
> > > ARCH_RENESAS the motivation for which being that RENESAS seems to be a
> > > more appropriate name than SHMOBILE for the majority of Renesas ARM based
> > > SoCs.
> > > 
> > > Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
> > > ---
> > > 
> > >  drivers/video/fbdev/Kconfig | 4 ++--
> > >  1 file changed, 2 insertions(+), 2 deletions(-)
> > > 
> > > diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig
> > > index 8ea45a5cd806..71294f595f61 100644
> > > --- a/drivers/video/fbdev/Kconfig
> > > +++ b/drivers/video/fbdev/Kconfig
> > > @@ -1985,7 +1985,7 @@ config FB_W100
> > > 
> > >  config FB_SH_MOBILE_LCDC
> > >  	tristate "SuperH Mobile LCDC framebuffer support"
> > > -	depends on FB && (SUPERH || ARCH_SHMOBILE) && HAVE_CLK
> > > +	depends on FB && (SUPERH || ARCH_RENESAS) && HAVE_CLK
> > >  	depends on FB_SH_MOBILE_MERAM || !FB_SH_MOBILE_MERAM
> > >  	select FB_SYS_FILLRECT
> > >  	select FB_SYS_COPYAREA
> > > @@ -2450,7 +2450,7 @@ source "drivers/video/fbdev/mmp/Kconfig"
> > > 
> > >  config FB_SH_MOBILE_MERAM
> > >  	tristate "SuperH Mobile MERAM read ahead support"
> > > -	depends on (SUPERH || ARCH_SHMOBILE)
> > > +	depends on SUPERH || ARCH_RENESAS
> > 
> > The MERAM driver isn't used by any ARM platform, you can just drop
> > ARCH_SHMOBILE completely.
> 
> Actually, upon closer inspection, the MERAM driver isn't used by any platform.

If its not used then I think we should consider removing it.

However, it seems to me that its used in the following:

drivers/gpu/drm/shmobile/shmob_drm_crtc.c
drivers/gpu/drm/shmobile/shmob_drm_kms.c
drivers/gpu/drm/shmobile/shmob_drm_plane.c
drivers/video/fbdev/sh_mobile_lcdcfb.c

It seems to me that we would need to either remove usage in the above
files or remove the above files before removing the MERAM driver.

^ permalink raw reply

* [GIT PULL] fbdev changes for 4.6
From: Tomi Valkeinen @ 2016-03-15 12:50 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-fbdev, linux-kernel@vger.kernel.org


[-- Attachment #1.1: Type: text/plain, Size: 3472 bytes --]

Hi Linus,

The following changes since commit 18558cae0272f8fd9647e69d3fec1565a7949865:

  Linux 4.5-rc4 (2016-02-14 13:05:20 -0800)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux.git tags/fbdev-4.6

for you to fetch changes up to 13aa38e291bdd4e4018f40dd2f75e464814dcbf3:

  xen kconfig: don't "select INPUT_XEN_KBDDEV_FRONTEND" (2016-03-11 13:37:02 +0200)

----------------------------------------------------------------
fbdev changes for 4.6

* Miscallaneous small fixes to various fbdev drivers
* Remove fb_rotate, which was never used
* pmag fb improvements

----------------------------------------------------------------
Andrzej Hajda (1):
      fbdev: exynos: fix IS_ERR_VALUE usage

Arnd Bergmann (2):
      video: exynos: fix modular build
      xen kconfig: don't "select INPUT_XEN_KBDDEV_FRONTEND"

Dan Carpenter (1):
      video: fbdev: metronomefb: two harmless off by one bugs

Daniel Wagner (1):
      video: Use bool instead int pointer for get_opt_bool() argument

Maciej W. Rozycki (8):
      video: fbdev: pmag-ba-fb: Fix the lower margin size
      video: fbdev: pmag-aa-fb: Adapt to current APIs
      video: fbdev: pmag-aa-fb: Enable building as a module
      video: fbdev: pmag-aa-fb: Report video timings
      video: fbdev: bt455: Remove unneeded colormap helpers for cursor support
      video: fbdev: pmag-ba-fb: Fix and rework Bt455 colormap handling
      video: fbdev: pmag-ba-fb: Optimize Bt455 colormap addressing
      video: fbdev: bt431: Correct cursor format control macro

Paul Gortmaker (3):
      drivers/video: make fbdev/sunxvr500.c explicitly non-modular
      drivers/video: make fbdev/sunxvr1000.c explicitly non-modular
      drivers/video: make fbdev/sunxvr2500.c explicitly non-modular

Rasmus Villemoes (1):
      fbdev: kill fb_rotate

Simon Horman (1):
      fbdev: sh_mobile_lcdc: Use ARCH_RENESAS

Sudip Mukherjee (2):
      fbdev: n411: check return value
      video: fbdev: sis: remove unused variable

Sushaanth Srirangapathi (1):
      fbdev: da8xx-fb: fix videomodes of lcd panels

 drivers/video/fbdev/Kconfig                  |   7 +-
 drivers/video/fbdev/atafb.c                  |   3 -
 drivers/video/fbdev/au1100fb.c               |  22 -
 drivers/video/fbdev/bf537-lq035.c            |  23 -
 drivers/video/fbdev/bt431.h                  |  43 +-
 drivers/video/fbdev/bt455.h                  |  68 ++-
 drivers/video/fbdev/da8xx-fb.c               |   7 +-
 drivers/video/fbdev/exynos/Kconfig           |   6 +-
 drivers/video/fbdev/exynos/Makefile          |   6 +-
 drivers/video/fbdev/exynos/exynos_mipi_dsi.c |   7 +-
 drivers/video/fbdev/intelfb/intelfbdrv.c     |   2 +-
 drivers/video/fbdev/metronomefb.c            |   6 +-
 drivers/video/fbdev/n411.c                   |  12 +-
 drivers/video/fbdev/omap/omapfb_main.c       |  22 -
 drivers/video/fbdev/pmag-aa-fb.c             | 602 +++++++++------------------
 drivers/video/fbdev/pmag-ba-fb.c             |   2 +-
 drivers/video/fbdev/sis/init301.c            |  10 +-
 drivers/video/fbdev/skeletonfb.c             |  17 -
 drivers/video/fbdev/sunxvr1000.c             |  42 +-
 drivers/video/fbdev/sunxvr2500.c             |  39 +-
 drivers/video/fbdev/sunxvr500.c              |  42 +-
 include/linux/fb.h                           |   3 -
 22 files changed, 310 insertions(+), 681 deletions(-)


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox