[U-Boot] [PATCH 1/5] omap3: add useful dss defines

Nikita Kiryanov nikita at compulab.co.il
Wed Jan 23 09:23:01 CET 2013


On 01/21/2013 08:38 PM, Jeroen Hofstee wrote:
> Hello Nikita,
>
> +#define GFXFORMAT_ARGB32        0xC
>>>> +#define GFXFORMAT_RGBA32        0xD
>>>> +#define GFXFORMAT_RGBx32        0xE
>>>> +
>>>> +/* GFX burst size */
>>>> +#define GFXBURSTSIZE4    0
>>>> +#define GFXBURSTSIZE8    1
>>>> +#define GFXBURSTSIZE16    2
>>>> +
>>>>   /* Panel Configuration */
>>>>   struct panel_config {
>>>>       u32 timing_h;
>>> most defines in omap dss use the location in the silicon itself.
>>> For consistency you might want to shift these values to the
>>> appropriate place. (or just use 32 mode so you can drop most
>>> if not all of them)
>>>
>>
>> These aren't offsets against a base address. These are input values
>> for the various sections of the dss registers. For example
>> the /* GFX burst size */ defines are values for
>> DISPC_GFX_ATTRIBUTES[7:6].
>>
>
> What I mean is that the defines currently in dss.h already shift the
> values to the location where the hardware expects them, e.g..
>
> /* Configure VENC DSS Params */
> #define VENC_CLK_ENABLE                (1 << 3)
> #define DAC_DEMEN                (1 << 4)
> #define DAC_POWERDN                (1 << 5)
> #define VENC_OUT_SEL                (1 << 6)
>
> The defines you add are not shifted however, so after this patch half
> of the defines need shifting, the other half does not. Thats confusing,
> so macro's like
>
> #define GFXBURSTSIZE8    (1 << 6)
>
> is a better option in my opinion.

OK now I understand. Some of these could indeed be shifted, and I'll
do that in a V2, but LCD_INTERFACE_* and *_DISPLAY cannot be shifted,
because they are passed to a function that expects them to be unshifted
(omap3_dss_panel_config).

>
> Regards,
> Jeroen
>


-- 
Regards,
Nikita.


More information about the U-Boot mailing list