[PATCH RFC] drm/omap: Make omapdss API more generic, especially the IRQ handling

Tomi Valkeinen tomi.valkeinen at ti.com
Tue Nov 21 13:16:19 UTC 2017


Hi,

On 20/11/17 12:10, Jyri Sarha wrote:
> The new omapdss API is HW independent and cleans up some of the
> DSS5 specific hacks from the omapdrm side and get rid off the
> DSS2 IRQ register bits and replace them with HW independent
> struct. This new generic struct makes it more straight forward to
> implement IRQ code for the future DSS versions that do not share
> the same register structure as DSS2 to DSS5 has.
> 
> Signed-off-by: Jyri Sarha <jsarha at ti.com>
> ---
>  drivers/gpu/drm/omapdrm/dss/dispc.c   | 158 ++++++++++++++++++++++++----
>  drivers/gpu/drm/omapdrm/dss/dispc.h   |  33 ++++++
>  drivers/gpu/drm/omapdrm/dss/omapdss.h |  68 ++++++------
>  drivers/gpu/drm/omapdrm/omap_crtc.c   |  37 +++----
>  drivers/gpu/drm/omapdrm/omap_drv.h    |   5 +-
>  drivers/gpu/drm/omapdrm/omap_irq.c    | 192 ++++++++++++++++++++--------------
>  drivers/gpu/drm/omapdrm/omap_plane.c  |  18 ++--
>  7 files changed, 346 insertions(+), 165 deletions(-)

You need to split this into smaller pieces. At least the ovl/mgr name,
has_framedone, and irq handling are separate things.

Instead of the struct dss_irq, you can just use a u64 and bitshifting to
achieve the same result, and you don't need those _or _and functions.

 Tomi

-- 
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki


More information about the dri-devel mailing list