From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
To: linux-fbdev@vger.kernel.org
Subject: Re: [PATCH 12/57] arm: mach-shmobile: Add LCDC tx_dev field to
Date: Mon, 19 Dec 2011 00:27:54 +0000 [thread overview]
Message-ID: <Pine.LNX.4.64.1112190124170.23431@axis700.grange> (raw)
In-Reply-To: <1323784972-24205-13-git-send-email-laurent.pinchart@ideasonboard.com>
On Fri, 16 Dec 2011, Laurent Pinchart wrote:
> Hi Guennadi,
>
> On Thursday 15 December 2011 15:01:27 Guennadi Liakhovetski wrote:
> > On Tue, 13 Dec 2011, Laurent Pinchart wrote:
> > > Make sure the transmitter devices get registered before the associated
> > > LCDC devices.
> > >
> > > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
>
> [snip]
>
> > > diff --git a/arch/arm/mach-shmobile/board-ap4evb.c
> > > b/arch/arm/mach-shmobile/board-ap4evb.c index dca4860..e0a6b3d 100644
> > > --- a/arch/arm/mach-shmobile/board-ap4evb.c
> > > +++ b/arch/arm/mach-shmobile/board-ap4evb.c
>
> [snip]
>
> > > @@ -627,6 +553,86 @@ static struct platform_device *qhd_devices[]
> > > __initdata = {
> > >
> > > };
> > > #endif /* CONFIG_AP4EVB_QHD */
> > >
> > > +/* LCDC0 */
> > > +static const struct fb_videomode ap4evb_lcdc_modes[] = {
> >
> > Hm, I must be missing something. I thought you were moving all the structs
> > around to make them available for reference _without_ forward
> > declarations. But you _do_ end up using a forward declaration anyway. Here
> > and for HDMI below too. So, what's the point? Why not just forward declare
> > that one struct, that's needed and leave the rest where it currently is
> > in the file?
>
> As we have circular dependencies forward declaration can't be avoided. I found
> it cleaner to have devices data in registration order in the board file, but I
> can remove this if you prefer.
As a _general_ guidline I find smaller patches more pleasant than
bigger;-) but if you really see an important advantage in moving these
structs around - I can live with that too:-)
> > > + {
> > > +#ifdef CONFIG_AP4EVB_QHD
> > > + .name = "R63302(QHD)",
> > > + .xres = 544,
> > > + .yres = 961,
> > > + .left_margin = 72,
> > > + .right_margin = 600,
> > > + .hsync_len = 16,
> > > + .upper_margin = 8,
> > > + .lower_margin = 8,
> > > + .vsync_len = 2,
> > > + .sync = FB_SYNC_VERT_HIGH_ACT | FB_SYNC_HOR_HIGH_ACT,
> > > +#else
> > > + .name = "WVGA Panel",
> > > + .xres = 800,
> > > + .yres = 480,
> > > + .left_margin = 220,
> > > + .right_margin = 110,
> > > + .hsync_len = 70,
> > > + .upper_margin = 20,
> > > + .lower_margin = 5,
> > > + .vsync_len = 5,
> > > + .sync = 0,
> > > +#endif
> > > + },
> > > +};
>
> [snip]
>
> > > diff --git a/arch/arm/mach-shmobile/board-mackerel.c
> > > b/arch/arm/mach-shmobile/board-mackerel.c index 4ed0138..ccdd9fc 100644
> > > --- a/arch/arm/mach-shmobile/board-mackerel.c
> > > +++ b/arch/arm/mach-shmobile/board-mackerel.c
>
> [snip]
>
> > > @@ -1313,8 +1317,8 @@ static struct platform_device *mackerel_devices[]
> > > __initdata = {
> > > &sh_mmcif_device,
> > > &ceu_device,
> > > &mackerel_camera,
> > > - &hdmi_lcdc_device,
> > > &hdmi_device,
> > > + &hdmi_lcdc_device,
> > > &meram_device,
> > > };
> >
> > Sorry, could you elaborate, why this is needed? If this is really
> > important, then I'd prefer to test this before committing. If OTOH this is
> > unimportant, and my assumption, that normally it's the platform driver
> > registration order, that's important, not device registration order, is
> > correct, then you don't have to swap the order?
>
> If both the transmitter and LCDC drivers are built-in, the device probe order
> is the device registration order. As we need the transmitter to be probed
> first, it needs to be registered first.
Even there I'm not quite sure about - I do remember having to fiddle with
the Makefiles to change the probe order, which followed the linkage order.
Could be, that this has changed since I last checked, but I'd really
double-check this.
Thanks
Guennadi
---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
http://www.open-technology.de/
prev parent reply other threads:[~2011-12-19 0:27 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-12-13 14:02 [PATCH 12/57] arm: mach-shmobile: Add LCDC tx_dev field to platform data Laurent Pinchart
2011-12-15 14:01 ` [PATCH 12/57] arm: mach-shmobile: Add LCDC tx_dev field to Guennadi Liakhovetski
2011-12-16 10:04 ` [PATCH 12/57] arm: mach-shmobile: Add LCDC tx_dev field to platform data Laurent Pinchart
2011-12-19 0:27 ` Guennadi Liakhovetski [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Pine.LNX.4.64.1112190124170.23431@axis700.grange \
--to=g.liakhovetski@gmx.de \
--cc=linux-fbdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox