[U-Boot-Users] [PATCH] Extend ATI Radeon driver to support more video modes

Anatolij Gustschin agust at denx.de
Thu Feb 14 00:51:19 CET 2008


Hello,

Rodolfo Giometti wrote:
> On Mon, Feb 11, 2008 at 08:42:08PM +0100, Anatolij Gustschin wrote:
>> Adds ATI Radeon 9200 support for 1280x1024, 1024x768,
>> 800x600, 640x480 at 24, 16 and 8 bpp. Hope this patch
>> won't screw up X300 and X700 support.
> 
> Can someone test/check this issue? :)
> 
>> Signed-off-by: Anatolij Gustschin <agust at denx.de>
>> ---
>>  drivers/video/ati_radeon_fb.c |  401 +++++++++++++++++++++++++++++++++++++++--
>>  1 files changed, 386 insertions(+), 15 deletions(-)
<snip>
>> @@ -90,12 +93,115 @@ static u16 ati_radeon_id_family_table[][2] = {
>>  	{PCI_CHIP_RV280_5961, CHIP_FAMILY_RV280},
>>  	{PCI_CHIP_RV280_5962, CHIP_FAMILY_RV280},
>>  	{PCI_CHIP_RV280_5964, CHIP_FAMILY_RV280},
>> +	{PCI_CHIP_RV280_5C63, CHIP_FAMILY_RV280},
>>  	{PCI_CHIP_RV370_5B60, CHIP_FAMILY_RV380},
>>  	{PCI_CHIP_RV380_5657, CHIP_FAMILY_RV380},
>>  	{PCI_CHIP_R420_554d,  CHIP_FAMILY_R420},
>>  	{0, 0}
>>  };
> 
> Are you adding a new board here? If so, please provide a separate
> patch.

Yes. This is a Radeon Mobility 9200 board, which is RV280 based.
Ok.

<snip>
>> +#if 1 /* @ 60 Hz */
>> +		mode->crtc_h_total_disp = 0x009f00d2;
>> +		mode->crtc_h_sync_strt_wid = 0x000e0528;
>> +		mode->crtc_v_total_disp = 0x03ff0429;
>> +		mode->crtc_v_sync_strt_wid = 0x00030400;
>> +		mode->crtc_pitch = 0x00a000a0;
>> +		mode->ppll_div_3 = 0x00010060;
>> +#else /* @ 75 Hz */
>> +		mode->crtc_h_total_disp = 0x009f00d2;
>> +		mode->crtc_h_sync_strt_wid = 0x00120508;
>> +		mode->crtc_v_total_disp = 0x03ff0429;
>> +		mode->crtc_v_sync_strt_wid = 0x00030400;
>> +		mode->crtc_pitch = 0x00a000a0;
>> +		mode->ppll_div_3 = 0x00010078;
>> +#endif
> 
> Mmm... better adding a configuration define here or just remove the
> unused code.

Ok, I'm going to drop the unused code then.

<snip>
>> -	radeon_setmode();
>> +	if (rinfo->family == CHIP_FAMILY_RV280)
>> +		radeon_setmode_9200(vesa_idx, bits_per_pixel);
>> +	else
>> +		radeon_setmode();
>>  
>>  	return ((void *) pGD);
>>  }
>> -- 
>> 1.5.3.3
>
> Suggestion: your patch is filled by several magic numbers, maybe
> adding some defines can improve its readability. :)

Ok, I will try it and resubmit separated patches.

Best regards,

Anatolij

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80  Email: office at denx.de




More information about the U-Boot mailing list