* [TRIVIAL PATCH next 12/15] video: Convert vmalloc/memset to vzalloc
From: Joe Perches @ 2011-05-28 17:36 UTC (permalink / raw)
To: Jaya Kumar, Paul Mundt, Jeremy Fitzhardinge,
Konrad Rzeszutek Wilk, Jiri Kosina
Cc: linux-fbdev, linux-kernel, xen-devel, virtualization
In-Reply-To: <cover.1306603968.git.joe@perches.com>
Signed-off-by: Joe Perches <joe@perches.com>
---
drivers/video/arcfb.c | 5 ++---
drivers/video/broadsheetfb.c | 4 +---
drivers/video/hecubafb.c | 5 ++---
drivers/video/metronomefb.c | 4 +---
drivers/video/xen-fbfront.c | 3 +--
5 files changed, 7 insertions(+), 14 deletions(-)
diff --git a/drivers/video/arcfb.c b/drivers/video/arcfb.c
index 3ec4923..86573e2 100644
--- a/drivers/video/arcfb.c
+++ b/drivers/video/arcfb.c
@@ -515,11 +515,10 @@ static int __devinit arcfb_probe(struct platform_device *dev)
/* We need a flat backing store for the Arc's
less-flat actual paged framebuffer */
- if (!(videomemory = vmalloc(videomemorysize)))
+ videomemory = vmalloc(videomemorysize);
+ if (!videomemory)
return retval;
- memset(videomemory, 0, videomemorysize);
-
info = framebuffer_alloc(sizeof(struct arcfb_par), &dev->dev);
if (!info)
goto err;
diff --git a/drivers/video/broadsheetfb.c b/drivers/video/broadsheetfb.c
index ebda687..377dde3 100644
--- a/drivers/video/broadsheetfb.c
+++ b/drivers/video/broadsheetfb.c
@@ -1101,12 +1101,10 @@ static int __devinit broadsheetfb_probe(struct platform_device *dev)
videomemorysize = roundup((dpyw*dpyh), PAGE_SIZE);
- videomemory = vmalloc(videomemorysize);
+ videomemory = vzalloc(videomemorysize);
if (!videomemory)
goto err_fb_rel;
- memset(videomemory, 0, videomemorysize);
-
info->screen_base = (char *)videomemory;
info->fbops = &broadsheetfb_ops;
diff --git a/drivers/video/hecubafb.c b/drivers/video/hecubafb.c
index 1b94643..fbef15f 100644
--- a/drivers/video/hecubafb.c
+++ b/drivers/video/hecubafb.c
@@ -231,11 +231,10 @@ static int __devinit hecubafb_probe(struct platform_device *dev)
videomemorysize = (DPY_W*DPY_H)/8;
- if (!(videomemory = vmalloc(videomemorysize)))
+ videomemory = vzalloc(videomemorysize);
+ if (!videomemory)
return retval;
- memset(videomemory, 0, videomemorysize);
-
info = framebuffer_alloc(sizeof(struct hecubafb_par), &dev->dev);
if (!info)
goto err_fballoc;
diff --git a/drivers/video/metronomefb.c b/drivers/video/metronomefb.c
index ed64edf..97d45e5 100644
--- a/drivers/video/metronomefb.c
+++ b/drivers/video/metronomefb.c
@@ -628,12 +628,10 @@ static int __devinit metronomefb_probe(struct platform_device *dev)
/* we need to add a spare page because our csum caching scheme walks
* to the end of the page */
videomemorysize = PAGE_SIZE + (fw * fh);
- videomemory = vmalloc(videomemorysize);
+ videomemory = vzalloc(videomemorysize);
if (!videomemory)
goto err_fb_rel;
- memset(videomemory, 0, videomemorysize);
-
info->screen_base = (char __force __iomem *)videomemory;
info->fbops = &metronomefb_ops;
diff --git a/drivers/video/xen-fbfront.c b/drivers/video/xen-fbfront.c
index a20218c..beac52f 100644
--- a/drivers/video/xen-fbfront.c
+++ b/drivers/video/xen-fbfront.c
@@ -395,10 +395,9 @@ static int __devinit xenfb_probe(struct xenbus_device *dev,
spin_lock_init(&info->dirty_lock);
spin_lock_init(&info->resize_lock);
- info->fb = vmalloc(fb_size);
+ info->fb = vzalloc(fb_size);
if (info->fb = NULL)
goto error_nomem;
- memset(info->fb, 0, fb_size);
info->nr_pages = (fb_size + PAGE_SIZE - 1) >> PAGE_SHIFT;
--
1.7.5.rc3.dirty
^ permalink raw reply related
* [TRIVIAL PATCH next 00/15] treewide: Convert vmalloc/memset to vzalloc
From: Joe Perches @ 2011-05-28 17:36 UTC (permalink / raw)
To: linux-atm-general, netdev, drbd-user, dm-devel, linux-raid,
linux-mtd
Cc: linux-s390, linux-kernel, linux-media, devel, xfs
Resubmittal of patches from November 2010 and a few new ones.
Joe Perches (15):
s390: Convert vmalloc/memset to vzalloc
x86: Convert vmalloc/memset to vzalloc
atm: Convert vmalloc/memset to vzalloc
drbd: Convert vmalloc/memset to vzalloc
char: Convert vmalloc/memset to vzalloc
isdn: Convert vmalloc/memset to vzalloc
md: Convert vmalloc/memset to vzalloc
media: Convert vmalloc/memset to vzalloc
mtd: Convert vmalloc/memset to vzalloc
scsi: Convert vmalloc/memset to vzalloc
staging: Convert vmalloc/memset to vzalloc
video: Convert vmalloc/memset to vzalloc
fs: Convert vmalloc/memset to vzalloc
mm: Convert vmalloc/memset to vzalloc
net: Convert vmalloc/memset to vzalloc
arch/s390/hypfs/hypfs_diag.c | 3 +--
arch/x86/mm/pageattr-test.c | 3 +--
drivers/atm/idt77252.c | 11 ++++++-----
drivers/atm/lanai.c | 3 +--
drivers/block/drbd/drbd_bitmap.c | 5 ++---
drivers/char/agp/backend.c | 3 +--
drivers/char/raw.c | 3 +--
drivers/isdn/i4l/isdn_common.c | 4 ++--
drivers/isdn/mISDN/dsp_core.c | 3 +--
drivers/isdn/mISDN/l1oip_codec.c | 6 ++----
drivers/md/dm-log.c | 3 +--
drivers/md/dm-snap-persistent.c | 3 +--
drivers/md/dm-table.c | 4 +---
drivers/media/video/videobuf2-dma-sg.c | 8 ++------
drivers/mtd/mtdswap.c | 3 +--
drivers/s390/cio/blacklist.c | 3 +--
drivers/scsi/bfa/bfad.c | 3 +--
drivers/scsi/bfa/bfad_debugfs.c | 8 ++------
drivers/scsi/cxgbi/libcxgbi.h | 6 ++----
drivers/scsi/qla2xxx/qla_attr.c | 6 ++----
drivers/scsi/qla2xxx/qla_bsg.c | 3 +--
drivers/scsi/scsi_debug.c | 7 ++-----
drivers/staging/rts_pstor/ms.c | 3 +--
drivers/staging/rts_pstor/rtsx_chip.c | 6 ++----
drivers/video/arcfb.c | 5 ++---
drivers/video/broadsheetfb.c | 4 +---
drivers/video/hecubafb.c | 5 ++---
drivers/video/metronomefb.c | 4 +---
drivers/video/xen-fbfront.c | 3 +--
fs/coda/coda_linux.h | 5 ++---
fs/reiserfs/journal.c | 9 +++------
fs/reiserfs/resize.c | 4 +---
fs/xfs/linux-2.6/kmem.h | 7 +------
mm/page_cgroup.c | 3 +--
net/netfilter/x_tables.c | 5 ++---
net/rds/ib_cm.c | 6 ++----
36 files changed, 57 insertions(+), 113 deletions(-)
--
1.7.5.rc3.dirty
^ permalink raw reply
* [PATCH] savagefb: Use panel CVT mode as default
From: Tormod Volden @ 2011-05-28 15:06 UTC (permalink / raw)
To: linux-fbdev
From: Tormod Volden <debian.tormod@gmail.com>
If there is no EDID but an LCD panel is detected, generate a CVT
mode from the panel resolution (at 60 Hz), and use this as a
default mode instead of the hardcoded 800x600x8 mode.
Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
---
This is maybe tight for 2.6.40, however this is long-standing
issue on savage-equipped laptops: The framebuffer would
default to an antiquated resolution of 800x600 instead of
using the LCD panel native mode (if there is no EDID).
The logic was inspired by the xorg DDX, which also feeds the
panel resolution (and 60 Hz) to a CVT function to get a mode
in this case.
I had to export fb_find_mode_cvt() from modedb.c for this. The
alternative would be to build up a string similar to the
mode_option given by the user and pass this to fb_find_mode
but that seems awkward.
Any suggestions or comments on this?
I searched a number of other drivers to see if they do something
similar, but I could not find any good match.
Regards,
Tormod
drivers/video/modedb.c | 1 +
drivers/video/savage/savagefb_driver.c | 16 ++++++++++++++++
2 files changed, 17 insertions(+), 0 deletions(-)
diff --git a/drivers/video/modedb.c b/drivers/video/modedb.c
index 48c3ea8..cb175fe 100644
--- a/drivers/video/modedb.c
+++ b/drivers/video/modedb.c
@@ -1128,3 +1128,4 @@ EXPORT_SYMBOL(fb_find_best_mode);
EXPORT_SYMBOL(fb_find_nearest_mode);
EXPORT_SYMBOL(fb_videomode_to_modelist);
EXPORT_SYMBOL(fb_find_mode);
+EXPORT_SYMBOL(fb_find_mode_cvt);
diff --git a/drivers/video/savage/savagefb_driver.c b/drivers/video/savage/savagefb_driver.c
index 9f172fa..eddca61 100644
--- a/drivers/video/savage/savagefb_driver.c
+++ b/drivers/video/savage/savagefb_driver.c
@@ -2243,6 +2243,22 @@ static int __devinit savagefb_probe(struct pci_dev* dev,
&info->modelist);
#endif
info->var = savagefb_var800x600x8;
+ /* if a panel was detected, default to a CVT mode instead */
+ if (par->SavagePanelWidth) {
+ struct fb_videomode cvt_mode;
+
+ memset(&cvt_mode, 0, sizeof(cvt_mode));
+ cvt_mode.xres = par->SavagePanelWidth;
+ cvt_mode.yres = par->SavagePanelHeight;
+ cvt_mode.refresh = 60;
+ /* FIXME: if we know there is only the panel
+ * we can enable reduced blanking as well */
+ if (fb_find_mode_cvt(&cvt_mode, 0, 0))
+ printk(KERN_WARNING "No CVT mode found for panel\n");
+ else if (fb_find_mode(&info->var, info, NULL, NULL, 0,
+ &cvt_mode, 0) != 3)
+ info->var = savagefb_var800x600x8;
+ }
if (mode_option) {
fb_find_mode(&info->var, info, mode_option,
--
1.7.0.4
^ permalink raw reply related
* Re: [PATCH] fbdev: sh_mobile_lcdcfb: Change BGR24 to RGB24
From: Magnus Damm @ 2011-05-27 8:14 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <1306400942-26956-1-git-send-email-dhobsong@igel.co.jp>
Hi Damian,
On Thu, May 26, 2011 at 6:09 PM, Damian Hobson-Garcia
<dhobsong@igel.co.jp> wrote:
> The ordering of the bytes in the 24 bpp RGB colour mode was
> being set to BGR.
>
> This now matches the values returned in the
> struct fb_var_screeninfo .red, .green, and .blue offsets as well as
> the output format of other blocs, such as the VEU
>
> Signed-off-by: Damian Hobson-Garcia <dhobsong@igel.co.jp>
> ---
Thanks for your patch. With this change in place, is the fbdev console
still working as expected?
Also, the byte swap settings in _LDDDSR are ok as-is?
Thanks,
/ magnus
^ permalink raw reply
* Re: [PATCH 20/29] s3c-fb: use display information in info not in var
From: JinGoo Han @ 2011-05-27 1:04 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <1306364301-8195-21-git-send-email-laurent.pinchart@ideasonboard.com>
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="windows-1254", Size: 1000 bytes --]
> ------- Original Message -------
> Sender : Laurent Pinchart<laurent.pinchart@ideasonboard.com>
> Date : May 26, 2011 07:58 (GMT+09:00)
> Title : [PATCH 20/29] s3c-fb: use display information in info not in var for
> panning
>
> We must not use any information in the passed var besides xoffset,
> yoffset and vmode as otherwise applications might abuse it.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> Cc: Ondrej Zary <linux@rainbow-software.org>
> ---
> drivers/video/s3fb.c | 7 ++++---
> 1 files changed, 4 insertions(+), 3 deletions(-)
The patch title is misleading; this is not the s3c-fb driver but the s3fb driver.
Jingoo Han
--
To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
ÿôèº{.nÇ+·®+%Ëÿ±éݶ\x17¥wÿº{.nÇ+·¥{±ýöÝzÿâØ^nr¡ö¦zË\x1aëh¨èÚ&£ûàz¿äz¹Þú+Ê+zf£¢·h§~Ûiÿÿïêÿêçz_è®\x0fæj:+v¨þ)ߣøm
^ permalink raw reply
* Re: [PATCH 19/29] s3c-fb: use display information in info not in var
From: 한진구 @ 2011-05-27 0:45 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <1306364301-8195-20-git-send-email-laurent.pinchart@ideasonboard.com>
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="windows-1254", Size: 1378 bytes --]
Acked-by: Jingoo Han <jg1.han@samsung.com>
> ------- Original Message -------
> Sender : Laurent Pinchart<laurent.pinchart@ideasonboard.com>
> Date : 2011-05-26 07:58 (GMT+09:00)
> Title : [PATCH 19/29] s3c-fb: use display information in info not in var for
> panning
>
> We must not use any information in the passed var besides xoffset,
> yoffset and vmode as otherwise applications might abuse it.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> Cc: Ben Dooks <ben@simtec.co.uk>
> Cc: InKi Dae <inki.dae@samsung.com>
> ---
> drivers/video/s3c-fb.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/video/s3c-fb.c b/drivers/video/s3c-fb.c
> index 3b6cdca..4fce307 100644
> --- a/drivers/video/s3c-fb.c
> +++ b/drivers/video/s3c-fb.c
> @@ -882,7 +882,7 @@ static int s3c_fb_pan_display(struct fb_var_screeninfo *var,
> }
> }
> /* Offset in bytes to the end of the displayed area */
> - end_boff = start_boff + var->yres * info->fix.line_length;
> + end_boff = start_boff + info->var.yres * info->fix.line_length;
>
> /* Temporarily turn off per-vsync update from shadow registers until
> * both start and end addresses are updated to prevent corruption */
> --
ÿôèº{.nÇ+·®+%Ëÿ±éݶ\x17¥wÿº{.nÇ+·¥{±ýöÝzÿâØ^nr¡ö¦zË\x1aëh¨èÚ&£ûàz¿äz¹Þú+Ê+zf£¢·h§~Ûiÿÿïêÿêçz_è®\x0fæj:+v¨þ)ߣøm
^ permalink raw reply
* Re: [PATCH 21/29] s3fb: use display information in info not in var for panning
From: Laurent Pinchart @ 2011-05-26 16:31 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <1306364301-8195-22-git-send-email-laurent.pinchart@ideasonboard.com>
Hi Tormod,
On Thursday 26 May 2011 16:12:21 Tormod Volden wrote:
> On Thu, May 26, 2011 at 12:58 AM, Laurent Pinchart wrote:
> > We must not use any information in the passed var besides xoffset,
> > yoffset and vmode as otherwise applications might abuse it. Also use the
> > aligned fix.line_length and not the (possible) unaligned xres_virtual.
> >
> > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> > Cc: Antonino Daplas <adaplas@gmail.com>
> > ---
> > drivers/video/savage/savagefb_driver.c | 16 +++++++---------
> > 1 files changed, 7 insertions(+), 9 deletions(-)
>
> The patch title is misleading, this is not the s3fb driver but the
> savagefb driver.
Yes, sorry about that. I've fixed the patch title, as well as the next patch.
--
Regards,
Laurent Pinchart
^ permalink raw reply
* Re: [PATCH 3/4] efifb: Fix an integer-to-pointer size warning
From: Andrew Lutomirski @ 2011-05-26 14:55 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <0c405ceeca72c92d25cb6ee4bc92c35d2cb15019.1306418703.git.luto@mit.edu>
On Thu, May 26, 2011 at 10:34 AM, Peter Jones <pjones@redhat.com> wrote:
> On 05/26/2011 10:13 AM, Andy Lutomirski wrote:
>> Signed-off-by: Andy Lutomirski <luto@mit.edu>
>
> Signed-off-by: Peter Jones <pjones@redhat.com>
I got beaten to the punch:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;hÜ3e5b6a6e842116ec2436161adf31877f09b6b9
Feel free to drop this patch. The others should still be fine.
--Andy
^ permalink raw reply
* Re: [PATCH 4/4] efifb: Disallow manual bind and unbind
From: Peter Jones @ 2011-05-26 14:35 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <7c160d075ca68ffd4eef4d0a64ef5fa49fa2c40e.1306418703.git.luto@mit.edu>
On 05/26/2011 10:13 AM, Andy Lutomirski wrote:
> Both were buggy: bind would happily scribble over a real graphics
> device and unbind wouldn't destroy the framebuffer. Hotplugging
> efifb makes no sense anyway, so just disable it.
>
> As an added benefit, we save some runtime memory.
>
> Signed-off-by: Andy Lutomirski <luto@mit.edu>
Signed-off-by: Peter Jones <pjones@redhat.com>
> ---
> drivers/video/efifb.c | 21 ++++++++++++++-------
> 1 files changed, 14 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/video/efifb.c b/drivers/video/efifb.c
> index 39bbfa9..f67717e 100644
> --- a/drivers/video/efifb.c
> +++ b/drivers/video/efifb.c
> @@ -331,7 +331,7 @@ static int __init efifb_setup(char *options)
> return 0;
> }
>
> -static int __devinit efifb_probe(struct platform_device *dev)
> +static int __init efifb_probe(struct platform_device *dev)
> {
> struct fb_info *info;
> int err;
> @@ -501,7 +501,6 @@ err_release_mem:
> }
>
> static struct platform_driver efifb_driver = {
> - .probe = efifb_probe,
> .driver = {
> .name = "efifb",
> },
> @@ -532,13 +531,21 @@ static int __init efifb_init(void)
> if (!screen_info.lfb_linelength)
> return -ENODEV;
>
> - ret = platform_driver_register(&efifb_driver);
> + ret = platform_device_register(&efifb_device);
> + if (ret)
> + return ret;
>
> - if (!ret) {
> - ret = platform_device_register(&efifb_device);
> - if (ret)
> - platform_driver_unregister(&efifb_driver);
> + /*
> + * This is not just an optimization. We will interfere
> + * with a real driver if we get reprobed, so don't allow
> + * it.
> + */
> + ret = platform_driver_probe(&efifb_driver, efifb_probe);
> + if (ret) {
> + platform_device_unregister(&efifb_driver);
> + return ret;
> }
> +
> return ret;
> }
> module_init(efifb_init);
--
Peter
If you're not part of the solution, then you're part of the precipitate.
01234567890123456789012345678901234567890123456789012345678901234567890123456789
^ permalink raw reply
* Re: [PATCH 3/4] efifb: Fix an integer-to-pointer size warning
From: Peter Jones @ 2011-05-26 14:34 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <0c405ceeca72c92d25cb6ee4bc92c35d2cb15019.1306418703.git.luto@mit.edu>
On 05/26/2011 10:13 AM, Andy Lutomirski wrote:
> Signed-off-by: Andy Lutomirski <luto@mit.edu>
Signed-off-by: Peter Jones <pjones@redhat.com>
> ---
> drivers/video/efifb.c | 5 +++--
> 1 files changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/video/efifb.c b/drivers/video/efifb.c
> index 43af770..39bbfa9 100644
> --- a/drivers/video/efifb.c
> +++ b/drivers/video/efifb.c
> @@ -246,8 +246,9 @@ static int set_system(const struct dmi_system_id *id)
>
> printk(KERN_INFO "efifb: dmi detected %s - framebuffer at %p "
> "(%dx%d, stride %d)\n", id->ident,
> - (void *)screen_info.lfb_base, screen_info.lfb_width,
> - screen_info.lfb_height, screen_info.lfb_linelength);
> + (void *)(unsigned long)screen_info.lfb_base,
> + screen_info.lfb_width, screen_info.lfb_height,
> + screen_info.lfb_linelength);
>
>
> return 1;
--
Peter
If you're not part of the solution, then you're part of the precipitate.
01234567890123456789012345678901234567890123456789012345678901234567890123456789
^ permalink raw reply
* Re: [PATCH 2/4] efifb: Fix mismatched request/release_mem_region
From: Peter Jones @ 2011-05-26 14:34 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <66cbd008789c83ed102f94adf5f3a58392a3519d.1306418703.git.luto@mit.edu>
On 05/26/2011 10:13 AM, Andy Lutomirski wrote:
> Signed-off-by: Andy Lutomirski <luto@mit.edu>
Thanks for spotting this.
Signed-off-by: Peter Jones <pjones@redhat.com>
> ---
> drivers/video/efifb.c | 11 +++++++----
> 1 files changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/video/efifb.c b/drivers/video/efifb.c
> index a81c944..43af770 100644
> --- a/drivers/video/efifb.c
> +++ b/drivers/video/efifb.c
> @@ -16,6 +16,8 @@
> #include <linux/pci.h>
> #include <video/vga.h>
>
> +static bool request_mem_succeeded = false;
> +
> static struct fb_var_screeninfo efifb_defined __devinitdata = {
> .activate = FB_ACTIVATE_NOW,
> .height = -1,
> @@ -281,7 +283,9 @@ static void efifb_destroy(struct fb_info *info)
> {
> if (info->screen_base)
> iounmap(info->screen_base);
> - release_mem_region(info->apertures->ranges[0].base, info->apertures->ranges[0].size);
> + if (request_mem_succeeded)
> + release_mem_region(info->apertures->ranges[0].base,
> + info->apertures->ranges[0].size);
> framebuffer_release(info);
> }
>
> @@ -333,7 +337,6 @@ static int __devinit efifb_probe(struct platform_device *dev)
> unsigned int size_vmode;
> unsigned int size_remap;
> unsigned int size_total;
> - int request_succeeded = 0;
>
> if (!screen_info.lfb_depth)
> screen_info.lfb_depth = 32;
> @@ -387,7 +390,7 @@ static int __devinit efifb_probe(struct platform_device *dev)
> efifb_fix.smem_len = size_remap;
>
> if (request_mem_region(efifb_fix.smem_start, size_remap, "efifb")) {
> - request_succeeded = 1;
> + request_mem_succeeded = true;
> } else {
> /* We cannot make this fatal. Sometimes this comes from magic
> spaces our resource handlers simply don't know about */
> @@ -491,7 +494,7 @@ err_unmap:
> err_release_fb:
> framebuffer_release(info);
> err_release_mem:
> - if (request_succeeded)
> + if (request_mem_succeeded)
> release_mem_region(efifb_fix.smem_start, size_total);
> return err;
> }
--
Peter
If you're not part of the solution, then you're part of the precipitate.
01234567890123456789012345678901234567890123456789012345678901234567890123456789
^ permalink raw reply
* Re: [PATCH 1/4] efifb: Enable write-combining
From: Peter Jones @ 2011-05-26 14:32 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <3647a3cc4157f8c50ab719f1a7500e695cf66a05.1306418703.git.luto@mit.edu>
On 05/26/2011 10:13 AM, Andy Lutomirski wrote:
> Running fbcon on an uncached framebuffer is remarkably slow. So try
> to enable write combining in efifb.
>
> Without this patch, it takes 5.8 seconds from efifb probe to i915
> probe (default options; no plymouth or quiet mode). With this patch,
> it only takes 1.7 seconds. That means we wasted over 4 seconds just
> writing to UC memory.
>
> Signed-off-by: Andy Lutomirski <luto@mit.edu>
Looks good:
Signed-off-by: Peter Jones <pjones@redhat.com>
> ---
> drivers/video/efifb.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/video/efifb.c b/drivers/video/efifb.c
> index 4eb38db..a81c944 100644
> --- a/drivers/video/efifb.c
> +++ b/drivers/video/efifb.c
> @@ -413,7 +413,7 @@ static int __devinit efifb_probe(struct platform_device *dev)
> info->apertures->ranges[0].base = efifb_fix.smem_start;
> info->apertures->ranges[0].size = size_remap;
>
> - info->screen_base = ioremap(efifb_fix.smem_start, efifb_fix.smem_len);
> + info->screen_base = ioremap_wc(efifb_fix.smem_start, efifb_fix.smem_len);
> if (!info->screen_base) {
> printk(KERN_ERR "efifb: abort, cannot ioremap video memory "
> "0x%x @ 0x%lx\n",
--
Peter
If you're not part of the solution, then you're part of the precipitate.
01234567890123456789012345678901234567890123456789012345678901234567890123456789
^ permalink raw reply
* [PATCH 4/4] efifb: Disallow manual bind and unbind
From: Andy Lutomirski @ 2011-05-26 14:13 UTC (permalink / raw)
To: linux-fbdev
Both were buggy: bind would happily scribble over a real graphics
device and unbind wouldn't destroy the framebuffer. Hotplugging
efifb makes no sense anyway, so just disable it.
As an added benefit, we save some runtime memory.
Signed-off-by: Andy Lutomirski <luto@mit.edu>
---
drivers/video/efifb.c | 21 ++++++++++++++-------
1 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/drivers/video/efifb.c b/drivers/video/efifb.c
index 39bbfa9..f67717e 100644
--- a/drivers/video/efifb.c
+++ b/drivers/video/efifb.c
@@ -331,7 +331,7 @@ static int __init efifb_setup(char *options)
return 0;
}
-static int __devinit efifb_probe(struct platform_device *dev)
+static int __init efifb_probe(struct platform_device *dev)
{
struct fb_info *info;
int err;
@@ -501,7 +501,6 @@ err_release_mem:
}
static struct platform_driver efifb_driver = {
- .probe = efifb_probe,
.driver = {
.name = "efifb",
},
@@ -532,13 +531,21 @@ static int __init efifb_init(void)
if (!screen_info.lfb_linelength)
return -ENODEV;
- ret = platform_driver_register(&efifb_driver);
+ ret = platform_device_register(&efifb_device);
+ if (ret)
+ return ret;
- if (!ret) {
- ret = platform_device_register(&efifb_device);
- if (ret)
- platform_driver_unregister(&efifb_driver);
+ /*
+ * This is not just an optimization. We will interfere
+ * with a real driver if we get reprobed, so don't allow
+ * it.
+ */
+ ret = platform_driver_probe(&efifb_driver, efifb_probe);
+ if (ret) {
+ platform_device_unregister(&efifb_driver);
+ return ret;
}
+
return ret;
}
module_init(efifb_init);
--
1.7.5.1
^ permalink raw reply related
* [PATCH 3/4] efifb: Fix an integer-to-pointer size warning
From: Andy Lutomirski @ 2011-05-26 14:13 UTC (permalink / raw)
To: linux-fbdev
Signed-off-by: Andy Lutomirski <luto@mit.edu>
---
drivers/video/efifb.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/video/efifb.c b/drivers/video/efifb.c
index 43af770..39bbfa9 100644
--- a/drivers/video/efifb.c
+++ b/drivers/video/efifb.c
@@ -246,8 +246,9 @@ static int set_system(const struct dmi_system_id *id)
printk(KERN_INFO "efifb: dmi detected %s - framebuffer at %p "
"(%dx%d, stride %d)\n", id->ident,
- (void *)screen_info.lfb_base, screen_info.lfb_width,
- screen_info.lfb_height, screen_info.lfb_linelength);
+ (void *)(unsigned long)screen_info.lfb_base,
+ screen_info.lfb_width, screen_info.lfb_height,
+ screen_info.lfb_linelength);
return 1;
--
1.7.5.1
^ permalink raw reply related
* [PATCH 2/4] efifb: Fix mismatched request/release_mem_region
From: Andy Lutomirski @ 2011-05-26 14:13 UTC (permalink / raw)
To: linux-fbdev
Signed-off-by: Andy Lutomirski <luto@mit.edu>
---
drivers/video/efifb.c | 11 +++++++----
1 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/drivers/video/efifb.c b/drivers/video/efifb.c
index a81c944..43af770 100644
--- a/drivers/video/efifb.c
+++ b/drivers/video/efifb.c
@@ -16,6 +16,8 @@
#include <linux/pci.h>
#include <video/vga.h>
+static bool request_mem_succeeded = false;
+
static struct fb_var_screeninfo efifb_defined __devinitdata = {
.activate = FB_ACTIVATE_NOW,
.height = -1,
@@ -281,7 +283,9 @@ static void efifb_destroy(struct fb_info *info)
{
if (info->screen_base)
iounmap(info->screen_base);
- release_mem_region(info->apertures->ranges[0].base, info->apertures->ranges[0].size);
+ if (request_mem_succeeded)
+ release_mem_region(info->apertures->ranges[0].base,
+ info->apertures->ranges[0].size);
framebuffer_release(info);
}
@@ -333,7 +337,6 @@ static int __devinit efifb_probe(struct platform_device *dev)
unsigned int size_vmode;
unsigned int size_remap;
unsigned int size_total;
- int request_succeeded = 0;
if (!screen_info.lfb_depth)
screen_info.lfb_depth = 32;
@@ -387,7 +390,7 @@ static int __devinit efifb_probe(struct platform_device *dev)
efifb_fix.smem_len = size_remap;
if (request_mem_region(efifb_fix.smem_start, size_remap, "efifb")) {
- request_succeeded = 1;
+ request_mem_succeeded = true;
} else {
/* We cannot make this fatal. Sometimes this comes from magic
spaces our resource handlers simply don't know about */
@@ -491,7 +494,7 @@ err_unmap:
err_release_fb:
framebuffer_release(info);
err_release_mem:
- if (request_succeeded)
+ if (request_mem_succeeded)
release_mem_region(efifb_fix.smem_start, size_total);
return err;
}
--
1.7.5.1
^ permalink raw reply related
* [PATCH 1/4] efifb: Enable write-combining
From: Andy Lutomirski @ 2011-05-26 14:13 UTC (permalink / raw)
To: linux-fbdev
Running fbcon on an uncached framebuffer is remarkably slow. So try
to enable write combining in efifb.
Without this patch, it takes 5.8 seconds from efifb probe to i915
probe (default options; no plymouth or quiet mode). With this patch,
it only takes 1.7 seconds. That means we wasted over 4 seconds just
writing to UC memory.
Signed-off-by: Andy Lutomirski <luto@mit.edu>
---
drivers/video/efifb.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/video/efifb.c b/drivers/video/efifb.c
index 4eb38db..a81c944 100644
--- a/drivers/video/efifb.c
+++ b/drivers/video/efifb.c
@@ -413,7 +413,7 @@ static int __devinit efifb_probe(struct platform_device *dev)
info->apertures->ranges[0].base = efifb_fix.smem_start;
info->apertures->ranges[0].size = size_remap;
- info->screen_base = ioremap(efifb_fix.smem_start, efifb_fix.smem_len);
+ info->screen_base = ioremap_wc(efifb_fix.smem_start, efifb_fix.smem_len);
if (!info->screen_base) {
printk(KERN_ERR "efifb: abort, cannot ioremap video memory "
"0x%x @ 0x%lx\n",
--
1.7.5.1
^ permalink raw reply related
* [PATCH 0/4] efifb speedup and fixes
From: Andy Lutomirski @ 2011-05-26 14:13 UTC (permalink / raw)
To: linux-fbdev
Fbcon over efifb is so slow that I thought I needed a faster modem.
It turns out that scrolling boot messages at 1024x768 pixels with
uncached accesses can take longer than every other step of kernel
bootup *combined*.
Fixing it is a one-liner, but I found some bugs while I was digging
around. One is a mismatched resource release (although not on my
box), one is a harmless compiler warning, and one fixes all manner of
badness that happens if you manually bind or unbind the efifb driver.
The speedup may or may not be 2.6.40 material, but the other fixes
should probably go in. (2/4 and 4/4 are possibly -stable candidates.)
Andy Lutomirski (4):
efifb: Enable write-combining
efifb: Fix mismatched request/release_mem_region
efifb: Fix an integer-to-pointer size warning
efifb: Disallow manual bind and unbind
Andy Lutomirski (4):
efifb: Enable write-combining
efifb: Fix mismatched request/release_mem_region
efifb: Fix an integer-to-pointer size warning
efifb: Disallow manual bind and unbind
drivers/video/efifb.c | 39 +++++++++++++++++++++++++--------------
1 files changed, 25 insertions(+), 14 deletions(-)
--
1.7.5.1
^ permalink raw reply
* Re: efifb not detected on Intel DQ67SW
From: Andrew Lutomirski @ 2011-05-26 14:12 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <BANLkTikxX577VKmPRVGcp_Chj-udCf-KaQ@mail.gmail.com>
On Thu, May 26, 2011 at 9:56 AM, Peter Jones <pjones@redhat.com> wrote:
> On 05/26/2011 12:09 AM, Andrew Lutomirski wrote:
>> On Wed, May 25, 2011 at 2:54 PM, Andrew Lutomirski <luto@mit.edu> wrote:
>>> On Wed, May 25, 2011 at 2:32 PM, Matthew Garrett <mjg@redhat.com> wrote:
>>>> On Wed, May 25, 2011 at 02:21:17PM -0400, Andrew Lutomirski wrote:
>>>>
>>>>> Looking at the code, I'm a little confused how it's supposed to work.
>>>>> AFAICT, unless there's a DMI match, then the driver will only load
>>>>> ifthe boot code sets VIDEO_TYPE_EFI, but nothing sets that.
>>>>
>>>> grub should be setting that.
>>>
>>> It looks like grub-fedora (the git version, anyway) has a function
>>> set_kernel_params that tries to do this. Peter, the git tree claims
>>> that you maintain it. Are there any experiments you'd like me to do?
>>> (Dumping boot_params, perhaps?)
>>
>> It's a bug in grub. If I have a splashimage then efifb works. If I
>> don't, then efifb doesn't. If I don't hear anything back soon, I'll
>> file a bug against Fedora.
>
> That's expected, though I admit it's not the best thing ever. We're currently
> working on not needing that bootloader at all any more, in favor of grub2,
> which doesn't have this limitation.
>
>> FWIW, efifb seems really slow.
>
> It's a non-accelerated console. Of course it's slow.
Yes, but it's really really amazingly slow. It's so slow that merely
enabling it doubles the time it takes to get i915 loaded. A one-liner
to fix it is coming right now...
--Andy
^ permalink raw reply
* Re: [PATCH 21/29] s3fb: use display information in info not in var
From: Tormod Volden @ 2011-05-26 14:12 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <1306364301-8195-22-git-send-email-laurent.pinchart@ideasonboard.com>
On Thu, May 26, 2011 at 12:58 AM, Laurent Pinchart wrote:
> We must not use any information in the passed var besides xoffset,
> yoffset and vmode as otherwise applications might abuse it. Also use the
> aligned fix.line_length and not the (possible) unaligned xres_virtual.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> Cc: Antonino Daplas <adaplas@gmail.com>
> ---
> drivers/video/savage/savagefb_driver.c | 16 +++++++---------
> 1 files changed, 7 insertions(+), 9 deletions(-)
The patch title is misleading, this is not the s3fb driver but the
savagefb driver.
Tormod
^ permalink raw reply
* Re: efifb not detected on Intel DQ67SW
From: Peter Jones @ 2011-05-26 13:56 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <BANLkTikxX577VKmPRVGcp_Chj-udCf-KaQ@mail.gmail.com>
On 05/26/2011 12:09 AM, Andrew Lutomirski wrote:
> On Wed, May 25, 2011 at 2:54 PM, Andrew Lutomirski <luto@mit.edu> wrote:
>> On Wed, May 25, 2011 at 2:32 PM, Matthew Garrett <mjg@redhat.com> wrote:
>>> On Wed, May 25, 2011 at 02:21:17PM -0400, Andrew Lutomirski wrote:
>>>
>>>> Looking at the code, I'm a little confused how it's supposed to work.
>>>> AFAICT, unless there's a DMI match, then the driver will only load
>>>> ifthe boot code sets VIDEO_TYPE_EFI, but nothing sets that.
>>>
>>> grub should be setting that.
>>
>> It looks like grub-fedora (the git version, anyway) has a function
>> set_kernel_params that tries to do this. Peter, the git tree claims
>> that you maintain it. Are there any experiments you'd like me to do?
>> (Dumping boot_params, perhaps?)
>
> It's a bug in grub. If I have a splashimage then efifb works. If I
> don't, then efifb doesn't. If I don't hear anything back soon, I'll
> file a bug against Fedora.
That's expected, though I admit it's not the best thing ever. We're currently
working on not needing that bootloader at all any more, in favor of grub2,
which doesn't have this limitation.
> FWIW, efifb seems really slow.
It's a non-accelerated console. Of course it's slow.
--
Peter
^ permalink raw reply
* Re: [PATCH] fbdev: sh_mobile_lcdcfb: Reduce scope and rename result
From: Damian Hobson-Garcia @ 2011-05-26 9:36 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <1306392790-17462-1-git-send-email-dhobsong@igel.co.jp>
Hi Laurent,
On 2011/05/26 18:32, Laurent Pinchart wrote:
> Hi Damian,
>
> On Thursday 26 May 2011 08:53:10 Damian Hobson-Garcia wrote:
>> Commit 69843ba7f24950f8ef5dadacfbfbd08f53e3455b
>> reduces the scope of the variable that was used to get the
>> return value of ops->meram_register() in sh_mobile_lcdc_start.
>>
>> In order to avoid conflicts with that patch, the variable has been renamed
>> and scoped within the local if-clause.
>
> Is there a need for this patch after
> http://git.kernel.org/?p=linux/kernel/git/lethal/fbdev-2.6.git;a=commitdiff;hÀ46a54e7e98577d3f04ce9d7ef1ec43a41c9061;hpw32eeb425419599de15096ce92d7eb6a51d749a
> ?
Nope, with this patch there is no need for mine at all.
Thanks,
Damian
>
>> ---
>> drivers/video/sh_mobile_lcdcfb.c | 5 +++--
>> 1 files changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/video/sh_mobile_lcdcfb.c
>> b/drivers/video/sh_mobile_lcdcfb.c index 404c03b..596b662 100644
>> --- a/drivers/video/sh_mobile_lcdcfb.c
>> +++ b/drivers/video/sh_mobile_lcdcfb.c
>> @@ -617,6 +617,7 @@ static int sh_mobile_lcdc_start(struct
>> sh_mobile_lcdc_priv *priv) unsigned long icb_addr_y, icb_addr_c;
>> int icb_pitch;
>> int pf;
>> + int retval;
>>
>> cfg = ch->cfg.meram_cfg;
>> mdev = priv->meram_dev;
>> @@ -637,7 +638,7 @@ static int sh_mobile_lcdc_start(struct
>> sh_mobile_lcdc_priv *priv) pf = SH_MOBILE_MERAM_PF_RGB;
>> }
>>
>> - ret = mdev->ops->meram_register(mdev, cfg, pitch,
>> + retval = mdev->ops->meram_register(mdev, cfg, pitch,
>> ch->info->var.yres,
>> pf,
>> base_addr_y,
>> @@ -645,7 +646,7 @@ static int sh_mobile_lcdc_start(struct
>> sh_mobile_lcdc_priv *priv) &icb_addr_y,
>> &icb_addr_c,
>> &icb_pitch);
>> - if (!ret) {
>> + if (!retval) {
>> /* set LDSA1R value */
>> base_addr_y = icb_addr_y;
>> pitch = icb_pitch;
^ permalink raw reply
* Re: [PATCH] fbdev: sh_mobile_lcdcfb: Reduce scope and rename result variable
From: Laurent Pinchart @ 2011-05-26 9:32 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <1306392790-17462-1-git-send-email-dhobsong@igel.co.jp>
Hi Damian,
On Thursday 26 May 2011 08:53:10 Damian Hobson-Garcia wrote:
> Commit 69843ba7f24950f8ef5dadacfbfbd08f53e3455b
> reduces the scope of the variable that was used to get the
> return value of ops->meram_register() in sh_mobile_lcdc_start.
>
> In order to avoid conflicts with that patch, the variable has been renamed
> and scoped within the local if-clause.
Is there a need for this patch after
http://git.kernel.org/?p=linux/kernel/git/lethal/fbdev-2.6.git;a=commitdiff;hÀ46a54e7e98577d3f04ce9d7ef1ec43a41c9061;hpw32eeb425419599de15096ce92d7eb6a51d749a
?
> ---
> drivers/video/sh_mobile_lcdcfb.c | 5 +++--
> 1 files changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/video/sh_mobile_lcdcfb.c
> b/drivers/video/sh_mobile_lcdcfb.c index 404c03b..596b662 100644
> --- a/drivers/video/sh_mobile_lcdcfb.c
> +++ b/drivers/video/sh_mobile_lcdcfb.c
> @@ -617,6 +617,7 @@ static int sh_mobile_lcdc_start(struct
> sh_mobile_lcdc_priv *priv) unsigned long icb_addr_y, icb_addr_c;
> int icb_pitch;
> int pf;
> + int retval;
>
> cfg = ch->cfg.meram_cfg;
> mdev = priv->meram_dev;
> @@ -637,7 +638,7 @@ static int sh_mobile_lcdc_start(struct
> sh_mobile_lcdc_priv *priv) pf = SH_MOBILE_MERAM_PF_RGB;
> }
>
> - ret = mdev->ops->meram_register(mdev, cfg, pitch,
> + retval = mdev->ops->meram_register(mdev, cfg, pitch,
> ch->info->var.yres,
> pf,
> base_addr_y,
> @@ -645,7 +646,7 @@ static int sh_mobile_lcdc_start(struct
> sh_mobile_lcdc_priv *priv) &icb_addr_y,
> &icb_addr_c,
> &icb_pitch);
> - if (!ret) {
> + if (!retval) {
> /* set LDSA1R value */
> base_addr_y = icb_addr_y;
> pitch = icb_pitch;
--
Regards,
Laurent Pinchart
^ permalink raw reply
* [PATCH] fbdev: sh_mobile_lcdcfb: Change BGR24 to RGB24
From: Damian Hobson-Garcia @ 2011-05-26 9:09 UTC (permalink / raw)
To: linux-fbdev
The ordering of the bytes in the 24 bpp RGB colour mode was
being set to BGR.
This now matches the values returned in the
struct fb_var_screeninfo .red, .green, and .blue offsets as well as
the output format of other blocs, such as the VEU
Signed-off-by: Damian Hobson-Garcia <dhobsong@igel.co.jp>
---
drivers/video/sh_mobile_lcdcfb.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/video/sh_mobile_lcdcfb.c b/drivers/video/sh_mobile_lcdcfb.c
index 04f2260..a442471 100644
--- a/drivers/video/sh_mobile_lcdcfb.c
+++ b/drivers/video/sh_mobile_lcdcfb.c
@@ -590,7 +590,7 @@ static int sh_mobile_lcdc_start(struct sh_mobile_lcdc_priv *priv)
tmp |= 0x03;
break;
case 24:
- tmp |= 0x0b;
+ tmp |= 0x02;
break;
case 32:
break;
@@ -1178,7 +1178,7 @@ static int sh_mobile_lcdc_set_bpp(struct fb_var_screeninfo *var, int bpp,
var->transp.length = 0;
break;
- case 24: /* PKF[4:0] = 01011 - RGB 888 */
+ case 24: /* PKF[4:0] = 00010 - RGB 888 */
var->red.offset = 16;
var->red.length = 8;
var->green.offset = 8;
--
1.7.1
^ permalink raw reply related
* Re: [PATCH 00/29] Use display information in info not in var for panning
From: Laurent Pinchart @ 2011-05-26 8:17 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <1306364301-8195-1-git-send-email-laurent.pinchart@ideasonboard.com>
Hi Geert,
On Thursday 26 May 2011 07:23:36 Geert Uytterhoeven wrote:
> On Thu, May 26, 2011 at 00:57, Laurent Pinchart wrote:
> > While playing with the FBIOPAN_DISPLAY ioctl I noticed that many drivers
> > use information from the ioctl argument such as the display resolution
> > when they should use the current settings from the fb_info structure.
>
> Haven't gone through all patches, but the above is correct.
>
> Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Thanks.
I will wait a couple of days for individual drievr maintainers to reply. I
don't expect to get an ack for every driver, so we will have to decide whether
to apply some of the patches without testing them.
--
Regards,
Laurent Pinchart
^ permalink raw reply
* [PATCH] fbdev: sh_mobile_lcdcfb: Reduce scope and rename result variable
From: Damian Hobson-Garcia @ 2011-05-26 6:53 UTC (permalink / raw)
To: linux-fbdev
Commit 69843ba7f24950f8ef5dadacfbfbd08f53e3455b
reduces the scope of the variable that was used to get the
return value of ops->meram_register() in sh_mobile_lcdc_start.
In order to avoid conflicts with that patch, the variable has been renamed
and scoped within the local if-clause.
---
drivers/video/sh_mobile_lcdcfb.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/video/sh_mobile_lcdcfb.c b/drivers/video/sh_mobile_lcdcfb.c
index 404c03b..596b662 100644
--- a/drivers/video/sh_mobile_lcdcfb.c
+++ b/drivers/video/sh_mobile_lcdcfb.c
@@ -617,6 +617,7 @@ static int sh_mobile_lcdc_start(struct sh_mobile_lcdc_priv *priv)
unsigned long icb_addr_y, icb_addr_c;
int icb_pitch;
int pf;
+ int retval;
cfg = ch->cfg.meram_cfg;
mdev = priv->meram_dev;
@@ -637,7 +638,7 @@ static int sh_mobile_lcdc_start(struct sh_mobile_lcdc_priv *priv)
pf = SH_MOBILE_MERAM_PF_RGB;
}
- ret = mdev->ops->meram_register(mdev, cfg, pitch,
+ retval = mdev->ops->meram_register(mdev, cfg, pitch,
ch->info->var.yres,
pf,
base_addr_y,
@@ -645,7 +646,7 @@ static int sh_mobile_lcdc_start(struct sh_mobile_lcdc_priv *priv)
&icb_addr_y,
&icb_addr_c,
&icb_pitch);
- if (!ret) {
+ if (!retval) {
/* set LDSA1R value */
base_addr_y = icb_addr_y;
pitch = icb_pitch;
--
1.7.1
^ permalink raw reply related
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox