[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140430222839.GE26756@n2100.arm.linux.org.uk>
Date: Wed, 30 Apr 2014 23:28:39 +0100
From: Russell King - ARM Linux <linux@....linux.org.uk>
To: Andrzej Hajda <andrzej.hajda@...pl>
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Andrzej Hajda <a.hajda@...sung.com>,
open list <linux-kernel@...r.kernel.org>,
Marek Szyprowski <m.szyprowski@...sung.com>,
Arnd Bergmann <arnd@...db.de>,
Thierry Reding <thierry.reding@...il.com>,
David Airlie <airlied@...ux.ie>,
Inki Dae <inki.dae@...sung.com>,
Kyungmin Park <kyungmin.park@...sung.com>,
Tomasz Figa <t.figa@...sung.com>,
Tomasz Stansislawski <t.stanislaws@...sung.com>,
"moderated list:ARM/S5P EXYNOS AR..."
<linux-samsung-soc@...r.kernel.org>,
"moderated list:ARM/S5P EXYNOS AR..."
<linux-arm-kernel@...ts.infradead.org>,
dri-devel@...ts.freedesktop.org, linux-media@...r.kernel.org,
Laurent Pinchart <laurent.pinchart@...asonboard.com>
Subject: Re: [RFC PATCH 0/4] drivers/base: Generic framework for tracking
internal interfaces
On Wed, Apr 30, 2014 at 11:42:09PM +0200, Andrzej Hajda wrote:
> The main problem with component framework is that componentization
> significantly changes every driver and changes it in a way which is not
> compatible with traditional drivers, so devices which are intended to
> work with different DRM masters are hard to componentize if some of DRMs
> are componentized and some not.
Many of the problems which the component helpers are designed to solve
are those where you need the drm_device structure (or snd_card, or whatever
subsystem specific card/device representation structure) pre-created in
order to initialise the components.
In the case of DRM, you can't initialise encoders or connectors without
their drm_device structure pre-existing - because these components are
attached to the drm_device.
Your solution to that is to delay those calls, but the DRM subsystem is
not designed to cope like that - it's designed such that when the
connector or encoder initialisation functions are called, it is assumed
that the driver is initialising its state. (I've raised this point before
but you've just fobbed it off in the past.)
Another issue here is that the order of initialisation matters greatly.
Take CRTCs for example. In DRM, the order of attachment of CRTCs defines
their identity, changing the order changes their identity, and changes
how they are bound to their respective connectors.
--
FTTC broadband for 0.8mile line: now at 9.7Mbps down 460kbps up... slowly
improving, and getting towards what was expected from it.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists