RE: [PATCH] Fixed OMAP3 version check

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Here is a fix that works on top of your patch. Tested with ES2.1 and
ES3.0 chips. I left out the caching for CPU type.

-Tero 

>-----Original Message-----
>From: ext Tony Lindgren [mailto:tony@xxxxxxxxxxx] 
>Sent: 25 September, 2008 13:18
>To: Kristo Tero (Nokia-D/Tampere)
>Cc: linux-omap@xxxxxxxxxxxxxxx
>Subject: Re: [PATCH] Fixed OMAP3 version check
>
>Hi,
>
>* Tero Kristo <tero.kristo@xxxxxxxxx> [080916 14:59]:
>> CPU version was reported incorrectly (e.g. ES3.0 instead of ES2.1.) 
>> Also added a piece of optimization for CPU type check (omap_type()).
>> 
>> Signed-off-by: Tero Kristo <tero.kristo@xxxxxxxxx>
>> ---
>>  arch/arm/mach-omap2/id.c |    7 +++++--
>>  1 files changed, 5 insertions(+), 2 deletions(-)
>> 
>> diff --git a/arch/arm/mach-omap2/id.c 
>b/arch/arm/mach-omap2/id.c index 
>> ab7a6e9..4e2b449 100644
>> --- a/arch/arm/mach-omap2/id.c
>> +++ b/arch/arm/mach-omap2/id.c
>> @@ -37,7 +37,10 @@ EXPORT_SYMBOL(omap_chip_is);
>>  
>>  int omap_type(void)
>>  {
>> -	u32 val = 0;
>> +	static u32 val;
>> +
>> +	if (val != 0)
>> +		return val;
>
>Hmm I guess this would return a random val? :)
>
>
>>  	if (cpu_is_omap24xx()) {
>>  		val = omap_ctrl_readl(OMAP24XX_CONTROL_STATUS);
>> @@ -169,7 +172,7 @@ void __init omap34xx_check_revision(void)
>>  	rev = (idcode >> 28) & 0xff;
>>  
>>  	if (hawkeye == 0xb7ae)
>> -		system_rev = 0x34300034 | ((1 + rev) << 12);
>> +		system_rev = 0x34300034 | (rev << 12);
>>  
>>  out:
>>  	switch (system_rev) {
>
>Well AFAIK here are the numbers for rev:
>
>ES1.0	   0	/* Cannot read idcode register */
>ES2.0	   0
>ES2.1	   1
>ES3.0	   2
>
>While ES3.0 TRM claims:
>
>ES1.0 	   0
>ES2.0	   1
>ES2.1	   2
>ES3.0	   3
>
>Which I think is incorrect at least for ES2.0 and ES2.1.
>
>Can you please try the attached patch and see if it detects 
>your ES3.0 correctly?
>
>Tony
>

Attachment: 0001-OMAP3-Fixed-version-check.patch
Description: 0001-OMAP3-Fixed-version-check.patch


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux