From: Arnd Bergmann <arnd@arndb.de>
To: linux-arm-kernel@lists.infradead.org
Cc: Jimmy Rubin <jimmy.rubin@stericsson.com>,
linux-fbdev@vger.kernel.org, linux-media@vger.kernel.org,
Dan Johansson <dan.johansson@stericsson.com>,
Linus Walleij <linus.walleij@stericsson.com>
Subject: Re: [PATCH 09/10] MCDE: Add build files and bus
Date: Fri, 12 Nov 2010 17:23:25 +0100 [thread overview]
Message-ID: <201011121723.25978.arnd@arndb.de> (raw)
In-Reply-To: <1289390653-6111-10-git-send-email-jimmy.rubin@stericsson.com>
On Wednesday 10 November 2010, Jimmy Rubin wrote:
> This patch adds support for the MCDE, Memory-to-display controller,
> found in the ST-Ericsson ux500 products.
>
> This patch adds the necessary build files for MCDE and the bus that
> all displays are connected to.
>
Can you explain why you need a bus for this?
With the code you currently have, there is only a single driver associated
with this bus type, and also just a single device that gets registered here!
>+static int __init mcde_subsystem_init(void)
>+{
>+ int ret;
>+ pr_info("MCDE subsystem init begin\n");
>+
>+ /* MCDE module init sequence */
>+ ret = mcde_init();
>+ if (ret)
>+ return ret;
>+ ret = mcde_display_init();
>+ if (ret)
>+ goto mcde_display_failed;
>+ ret = mcde_dss_init();
>+ if (ret)
>+ goto mcde_dss_failed;
>+ ret = mcde_fb_init();
>+ if (ret)
>+ goto mcde_fb_failed;
>+ pr_info("MCDE subsystem init done\n");
>+
>+ return 0;
>+mcde_fb_failed:
>+ mcde_dss_exit();
>+mcde_dss_failed:
>+ mcde_display_exit();
>+mcde_display_failed:
>+ mcde_exit();
>+ return ret;
>+}
Splitting up the module into four sub-modules and then initializing
everything from one place indicates that something is done wrong
on a global scale.
If you indeed need a bus, that should be a separate module that gets
loaded first and then has the other modules build on top of.
I'm not sure how the other parts layer on top of one another, can you
provide some more insight?
>From what I understood so far, you have a single multi-channel display
controller (mcde_hw.c) that drives the hardware.
Each controller can have multiple frame buffers attached to it, which
in turn can have multiple displays attached to each of them, but your
current configuration only has one of each, right?
Right now you have a single top-level bus device for the displays,
maybe that can be integrated into the controller so the displays are
properly rooted below the hardware that drives them.
The frame buffer device also looks weird. Right now you only seem
to have a single frame buffer registered to a driver in the same
module. Is that frame buffer not dependent on a controller?
>+#ifdef MODULE
>+module_init(mcde_subsystem_init);
>+#else
>+fs_initcall(mcde_subsystem_init);
>+#endif
This is not a file system ;-)
Arnd
next prev parent reply other threads:[~2010-11-12 16:22 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-10 12:04 [PATCH 00/10] MCDE: Add frame buffer device driver Jimmy Rubin
2010-11-10 12:04 ` [PATCH 01/10] MCDE: Add hardware abstraction layer Jimmy Rubin
2010-11-10 12:04 ` [PATCH 02/10] MCDE: Add configuration registers Jimmy Rubin
2010-11-10 12:04 ` [PATCH 03/10] MCDE: Add pixel processing registers Jimmy Rubin
2010-11-10 12:04 ` [PATCH 04/10] MCDE: Add formatter registers Jimmy Rubin
2010-11-10 12:04 ` [PATCH 05/10] MCDE: Add dsi link registers Jimmy Rubin
2010-11-10 12:04 ` [PATCH 06/10] MCDE: Add generic display Jimmy Rubin
2010-11-10 12:04 ` [PATCH 07/10] MCDE: Add display subsystem framework Jimmy Rubin
2010-11-10 12:04 ` [PATCH 08/10] MCDE: Add frame buffer device Jimmy Rubin
2010-11-10 12:04 ` [PATCH 09/10] MCDE: Add build files and bus Jimmy Rubin
2010-11-10 12:04 ` [PATCH 10/10] ux500: MCDE: Add platform specific data Jimmy Rubin
2010-11-12 16:03 ` Arnd Bergmann
2010-11-12 16:23 ` Arnd Bergmann [this message]
2010-11-12 16:29 ` [PATCH 08/10] MCDE: Add frame buffer device Arnd Bergmann
2010-11-12 16:38 ` [PATCH 07/10] MCDE: Add display subsystem framework Arnd Bergmann
2010-11-12 15:46 ` [PATCH 03/10] MCDE: Add pixel processing registers Arnd Bergmann
2010-11-12 15:14 ` [PATCH 02/10] MCDE: Add configuration registers Arnd Bergmann
2010-11-12 15:34 ` Russell King - ARM Linux
2010-11-15 14:25 ` Arnd Bergmann
2010-11-15 14:59 ` Russell King - ARM Linux
2010-11-15 18:24 ` Geert Uytterhoeven
2010-11-10 17:14 ` [PATCH 01/10] MCDE: Add hardware abstraction layer Joe Perches
2010-11-15 9:52 ` Jimmy RUBIN
2010-11-15 16:30 ` Joe Perches
2010-11-12 15:43 ` Arnd Bergmann
2010-11-16 15:29 ` Jimmy RUBIN
2010-11-16 16:12 ` Arnd Bergmann
2010-11-16 16:16 ` Arnd Bergmann
2010-11-16 19:46 ` Joe Perches
2010-11-17 9:55 ` Arnd Bergmann
2010-11-17 16:01 ` Joe Perches
2010-11-10 14:42 ` [PATCH 00/10] MCDE: Add frame buffer device driver Alex Deucher
2010-11-12 13:18 ` Jimmy RUBIN
2010-11-12 15:52 ` Alex Deucher
2010-11-12 16:46 ` Marcus LORENTZON
2010-11-12 17:22 ` Alex Deucher
2010-11-15 11:05 ` Michel Dänzer
2010-11-13 11:54 ` Hans Verkuil
2010-11-13 17:26 ` Marcus LORENTZON
2010-11-13 17:57 ` Hans Verkuil
[not found] <F45880696056844FA6A73F415B568C6953604E802E@EXDCVYMBSTM006.EQ1STM.local>
[not found] ` <201011251747.48365.arnd@arndb.de>
[not found] ` <C832F8F5D375BD43BFA11E82E0FE9FE0082586F430@EXDCVYMBSTM005.EQ1STM.local>
[not found] ` <201011261224.59490.arnd@arndb.de>
2010-12-16 18:26 ` [PATCH 09/10] MCDE: Add build files and bus Marcus Lorentzon
2010-12-17 11:22 ` Arnd Bergmann
2010-12-17 12:02 ` Marcus Lorentzon
[not found] ` <AANLkTinSb-9=xzX3LfZVYcKiDt5Qkm=qV6CiFGUyq+fC@mail.gmail.com>
[not found] ` <20101205112813.GB12542@viiv.ffwll.ch>
2011-03-12 15:59 ` Rob Clark
2011-03-14 14:03 ` Marcus Lorentzon
2011-03-14 20:35 ` Rob Clark
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=201011121723.25978.arnd@arndb.de \
--to=arnd@arndb.de \
--cc=dan.johansson@stericsson.com \
--cc=jimmy.rubin@stericsson.com \
--cc=linus.walleij@stericsson.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-fbdev@vger.kernel.org \
--cc=linux-media@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