Tony mostly offline for the rest of July
Subsystems (3)
Tony Lindgren
maintainerHi all,
FYI, I'll be mostly offline after Friday for several weeks.
I'll post few more patchsets for review, but will not be merging any other omap code after that for the upcoming merge window.
Cheers,
Tony
Quoted 10 lines · Tony Lindgren
Hi all,
FYI, I'll be mostly offline after Friday for several weeks.
I'll post few more patchsets for review, but will not be merging any other omap code after that for the upcoming merge window.
Cheers,
Tony
Tony,
The 3630 ES1.1 ID code patch is pending in patchworks for a while [1].
I missed pinging you on this earlier. It would be nice to queue this up for the merge window as well.
https://patchwork.kernel.org/patch/95684/
Also, we now have ES1.2 silicon as well; should I submit an updated patch now, or just a delta patch later?
- Anand
Tony Lindgren
maintainerQuoted 10 lines · Gadiyar, Anand
Quoted 9 lines · Tony Lindgren
Hi all,
FYI, I'll be mostly offline after Friday for several weeks.
I'll post few more patchsets for review, but will not be merging any other omap code after that for the upcoming merge window.
Cheers,
Quoted 8 lines
Quoted 1 line
Tony
Tony,
The 3630 ES1.1 ID code patch is pending in patchworks for a while [1].
I missed pinging you on this earlier. It would be nice to queue this up for the merge window as well.
OK, that's good to have.
Quoted 6 lines
https://patchwork.kernel.org/patch/95684/
Also, we now have ES1.2 silicon as well; should I submit an updated patch now, or just a delta patch later?
Please reply to this thread with your updated patch.
Also, we should not drop the default handling for unknown hawkeye registers.
Regards,
Tony
PATCH 1/1 OMAP3630: Add ES1.1 and ES1.2 detection
Add revision detection for ES1.1 and ES1.2. Set default revision as ES1.2.
Add CHIP_GE_OMAP3630ES1_1 to detect revisions 1.1 and later. This is needed for at least one feature that is broken in 3630ES1.0 but exists on older (3430 ES3.1) and newer revisions.
Additionally, update some of the CHIP_GE_* macros to use other macros for ease of maintenance.
---
This is based on Manju's original patch at [1] and my update [2]. The original patch failed to properly update the CHIP_GE_OMAP3630ES1 macro.
Would be nice to get this queued for the next merge window
[1] https://patchwork.kernel.org/patch/95684/
[2] https://patchwork.kernel.org/patch/99590/
arch/arm/mach-omap2/id.c | 27 +++++++++++++++++++++++---- arch/arm/plat-omap/include/plat/cpu.h | 15 +++++++++++---- 2 files changed, 34 insertions(+), 8 deletions(-)
arch/arm/mach-omap2/id.c +23 -4
@@ -269,11 +269,24 @@ void __init omap3_check_revision(void) omap_chip.oc |=CHIP_IS_OMAP3430ES3_1 ;break ;case 0xb891 : -/* FALLTHROUGH */ -default : -/* Unknown default to latest silicon rev as default*/ - omap_revision =OMAP3630_REV_ES1_0 ; +/* Handle 36xx devices */ omap_chip.oc |=CHIP_IS_OMAP3630ES1 ; + +switch (rev) { +case 0 :/* Take care of early samples */ + omap_revision =OMAP3630_REV_ES1_0 ; +break ; +case 1 : + omap_revision =OMAP3630_REV_ES1_1 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_1 ; +break ; +case 2 : +/* Fall through */ +default : +/* Use the latest known revision as default */ + omap_revision =OMAP3630_REV_ES1_2 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_2 ; + } } }
@@ -349,6 +362,12 @@ void __init omap3_cpuinfo(void)case OMAP_REVBITS_00 :strcpy (cpu_rev,"1.0" );break ; +case OMAP_REVBITS_01 : +strcpy (cpu_rev,"1.1" ); +break ; +case OMAP_REVBITS_02 : +strcpy (cpu_rev,"1.2" ); +break ;case OMAP_REVBITS_10 :strcpy (cpu_rev,"2.0" );break ;
arch/arm/plat-omap/include/plat/cpu.h +11 -4
@@ -66,6 +66,8 @@ unsigned int omap_rev(void);* family. This difference can be handled separately. */ #define OMAP_REVBITS_00 0x00 +#define OMAP_REVBITS_01 0x01 +#define OMAP_REVBITS_02 0x02#define OMAP_REVBITS_10 0x10#define OMAP_REVBITS_20 0x20#define OMAP_REVBITS_30 0x30
@@ -376,6 +378,8 @@ IS_OMAP_TYPE(3517, 0x3517)#define OMAP3430_REV_ES3_1_2 0x34305034#define OMAP3630_REV_ES1_0 0x36300034 +#define OMAP3630_REV_ES1_1 0x36300134 +#define OMAP3630_REV_ES1_2 0x36300234#define OMAP35XX_CLASS 0x35000034#define OMAP3503_REV (v) (OMAP35XX_CLASS | (0x3503 << 16) | (v << 8))
@@ -411,6 +415,8 @@ IS_OMAP_TYPE(3517, 0x3517)#define CHIP_IS_OMAP3430ES3_1 (1 << 6)#define CHIP_IS_OMAP3630ES1 (1 << 7)#define CHIP_IS_OMAP4430ES1 (1 << 8) +#define CHIP_IS_OMAP3630ES1_1 (1 << 9) +#define CHIP_IS_OMAP3630ES1_2 (1 << 10)#define CHIP_IS_OMAP24XX (CHIP_IS_OMAP2420 | CHIP_IS_OMAP2430)
@@ -424,11 +430,12 @@ IS_OMAP_TYPE(3517, 0x3517)*/ #define CHIP_GE_OMAP3430ES2 (CHIP_IS_OMAP3430ES2 | \ CHIP_IS_OMAP3430ES3_0 | \ - CHIP_IS_OMAP3430ES3_1 | \ - CHIP_IS_OMAP3630ES1) + CHIP_GE_OMAP3430ES3_1)#define CHIP_GE_OMAP3430ES3_1 (CHIP_IS_OMAP3430ES3_1 | \ - CHIP_IS_OMAP3630ES1) - + CHIP_IS_OMAP3630ES1 | \ + CHIP_GE_OMAP3630ES1_1) +#define CHIP_GE_OMAP3630ES1_1 (CHIP_IS_OMAP3630ES1_1 | \ + CHIP_IS_OMAP3630ES1_2)int omap_chip_is (struct omap_chip_id oci);void omap2_check_revision (void );
Tony Lindgren
maintainerRe: [PATCH] OMAP3630: Add ES1.1 and ES1.2 detection
Quoted 49 lines · Anand Gadiyar
Add revision detection for ES1.1 and ES1.2. Set default revision as ES1.2.
Add
CHIP_GE_OMAP3630ES1_1to detect revisions 1.1 and later. This is needed for at least one feature that is broken in 3630ES1.0 but exists on older (3430 ES3.1) and newer revisions.Additionally, update some of the CHIP_GE_* macros to use other macros for ease of maintenance.
Signed-off-by Anand Gadiyar <[email protected]>Cc Nishanth Menon <[email protected]>Cc Manjunatha GK <[email protected]>Cc Tony Lindgren <[email protected]>---
This is based on Manju's original patch at [1] and my update [2]. The original patch failed to properly update theCHIP_GE_OMAP3630ES1macro.Would be nice to get this queued for the next merge window
[1] https://patchwork.kernel.org/patch/95684/
[2] https://patchwork.kernel.org/patch/99590/arch/arm/mach-omap2/id.c | 27 +++++++++++++++++++++++---- arch/arm/plat-omap/include/plat/cpu.h | 15 +++++++++++---- 2 files changed, 34 insertions(+), 8 deletions(-)Index:
linux-omap-2.6/arch/arm/mach-omap2/id.c
===================================================================arch/arm/mach-omap2/id.c +9
-4@@ -269,11 +269,24 @@ void __init omap3_check_revision(void) omap_chip.oc |=CHIP_IS_OMAP3430ES3_1 ;break ;case 0xb891 : -/* FALLTHROUGH */ -default : -/* Unknown default to latest silicon rev as default*/ - omap_revision =OMAP3630_REV_ES1_0 ; +/* Handle 36xx devices */ omap_chip.oc |=CHIP_IS_OMAP3630ES1 ; + +switch (rev) { +case 0 :/* Take care of early samples */ + omap_revision =OMAP3630_REV_ES1_0 ; +break ; +case 1 : + omap_revision =OMAP3630_REV_ES1_1 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_1 ;
arch/arm/mach-omap2/id.c void __init omap3_check_revision(void) · line 291
Quoted 10 lines
arch/arm/mach-omap2/id.c +8
-0+break ; +case 2 : +/* Fall through */ +default : +/* Use the latest known revision as default */ + omap_revision =OMAP3630_REV_ES1_2 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_2 ; + } } }
Please don't remove the default handling for unknown hawkeye registers for omap3. Now you're only handling hawkeye 0xb891.
IMHO, setting unknown hawkeye chips to OMAP3630_REV_ES1_2 should be still best option for future chips.
Regards,
Tony
RE: [PATCH] OMAP3630: Add ES1.1 and ES1.2 detection
Quoted 64 lines · Tony Lindgren
Quoted 49 lines · Anand Gadiyar
Add revision detection for ES1.1 and ES1.2. Set default revision as ES1.2.
Add
CHIP_GE_OMAP3630ES1_1to detect revisions 1.1 and later. This is needed for at least one feature that is broken in 3630ES1.0 but exists on older (3430 ES3.1) and newer revisions.Additionally, update some of the CHIP_GE_* macros to use other macros for ease of maintenance.
Signed-off-by Anand Gadiyar <[email protected]>Cc Nishanth Menon <[email protected]>Cc Manjunatha GK <[email protected]>Cc Tony Lindgren <[email protected]>---
This is based on Manju's original patch at [1] and my update [2]. The original patch failed to properly update theCHIP_GE_OMAP3630ES1macro.Would be nice to get this queued for the next merge window
[1] https://patchwork.kernel.org/patch/95684/
[2] https://patchwork.kernel.org/patch/99590/arch/arm/mach-omap2/id.c | 27 +++++++++++++++++++++++---- arch/arm/plat-omap/include/plat/cpu.h | 15 +++++++++++---- 2 files changed, 34 insertions(+), 8 deletions(-)Index:
linux-omap-2.6/arch/arm/mach-omap2/id.c
===================================================================arch/arm/mach-omap2/id.c +9
-4@@ -269,11 +269,24 @@ void __init omap3_check_revision(void) omap_chip.oc |=CHIP_IS_OMAP3430ES3_1 ;break ;case 0xb891 : -/* FALLTHROUGH */ -default : -/* Unknown default to latest silicon rev as default*/ - omap_revision =OMAP3630_REV_ES1_0 ; +/* Handle 36xx devices */ omap_chip.oc |=CHIP_IS_OMAP3630ES1 ; + +switch (rev) { +case 0 :/* Take care of early samples */ + omap_revision =OMAP3630_REV_ES1_0 ; +break ; +case 1 : + omap_revision =OMAP3630_REV_ES1_1 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_1 ;arch/arm/mach-omap2/id.c void __init omap3_check_revision(void) · line 291
Quoted 10 lines
arch/arm/mach-omap2/id.c +8
-0+break ; +case 2 : +/* Fall through */ +default : +/* Use the latest known revision as default */ + omap_revision =OMAP3630_REV_ES1_2 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_2 ; + } } }Please don't remove the default handling for unknown hawkeye registers for omap3. Now you're only handling hawkeye
0xb891.
Quoted 6 lines
IMHO, setting unknown hawkeye chips to
OMAP3630_REV_ES1_2should be still best option for future chips.Regards,
Tony
Ouch. That was an accident. I'll repost in a bit.
- Anand
PATCH v2 1/1 OMAP3630: Add ES1.1 and ES1.2 detection
In reply to Tony LindgrenAdd revision detection for ES1.1 and ES1.2. Set default revision as ES1.2.
Add CHIP_GE_OMAP3630ES1_1 to detect revisions 1.1 and later. This is needed for at least one feature that is broken in 3630ES1.0 but exists on older (3430 ES3.1) and newer revisions.
Additionally, update some of the CHIP_GE_* macros to use other macros for ease of maintenance.
---
v2: Fixed accidental removal of default handling, and minor update of a comment.
This is based on Manju's original patch at [1] and my update [2]. The original patch failed to properly update the CHIP_GE_OMAP3630ES1 macro.
Would be nice to get this queued for the next merge window
[1] https://patchwork.kernel.org/patch/95684/
[2] https://patchwork.kernel.org/patch/99590/
arch/arm/mach-omap2/id.c | 27 +++++++++++++++++++++++++-- arch/arm/plat-omap/include/plat/cpu.h | 15 +++++++++++---- 2 files changed, 36 insertions(+), 6 deletions(-)
arch/arm/mach-omap2/id.c +25 -2
@@ -261,9 +261,26 @@ void __init omap3_check_revision(void)case 0xb891 :/* FALLTHROUGH */ default : -/* Unknown default to latest silicon rev as default*/ - omap_revision =OMAP3630_REV_ES1_0 ; +/* Unknown hawkeye defaults to latest silicon revision */ + +/* Handle 36xx devices */ omap_chip.oc |=CHIP_IS_OMAP3630ES1 ; + +switch (rev) { +case 0 :/* Take care of early samples */ + omap_revision =OMAP3630_REV_ES1_0 ; +break ; +case 1 : + omap_revision =OMAP3630_REV_ES1_1 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_1 ; +break ; +case 2 : +/* Fall through */ +default : +/* Use the latest known revision as default */ + omap_revision =OMAP3630_REV_ES1_2 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_2 ; + } } }
@@ -339,6 +356,12 @@ void __init omap3_cpuinfo(void)case OMAP_REVBITS_00 :strcpy (cpu_rev,"1.0" );break ; +case OMAP_REVBITS_01 : +strcpy (cpu_rev,"1.1" ); +break ; +case OMAP_REVBITS_02 : +strcpy (cpu_rev,"1.2" ); +break ;case OMAP_REVBITS_10 :strcpy (cpu_rev,"2.0" );break ;
arch/arm/plat-omap/include/plat/cpu.h +11 -4
@@ -66,6 +66,8 @@ unsigned int omap_rev(void);* family. This difference can be handled separately. */ #define OMAP_REVBITS_00 0x00 +#define OMAP_REVBITS_01 0x01 +#define OMAP_REVBITS_02 0x02#define OMAP_REVBITS_10 0x10#define OMAP_REVBITS_20 0x20#define OMAP_REVBITS_30 0x30
@@ -376,6 +378,8 @@ IS_OMAP_TYPE(3517, 0x3517)#define OMAP3430_REV_ES3_1_2 0x34305034#define OMAP3630_REV_ES1_0 0x36300034 +#define OMAP3630_REV_ES1_1 0x36300134 +#define OMAP3630_REV_ES1_2 0x36300234#define OMAP35XX_CLASS 0x35000034#define OMAP3503_REV (v) (OMAP35XX_CLASS | (0x3503 << 16) | (v << 8))
@@ -411,6 +415,8 @@ IS_OMAP_TYPE(3517, 0x3517)#define CHIP_IS_OMAP3430ES3_1 (1 << 6)#define CHIP_IS_OMAP3630ES1 (1 << 7)#define CHIP_IS_OMAP4430ES1 (1 << 8) +#define CHIP_IS_OMAP3630ES1_1 (1 << 9) +#define CHIP_IS_OMAP3630ES1_2 (1 << 10)#define CHIP_IS_OMAP24XX (CHIP_IS_OMAP2420 | CHIP_IS_OMAP2430)
@@ -424,11 +430,12 @@ IS_OMAP_TYPE(3517, 0x3517)*/ #define CHIP_GE_OMAP3430ES2 (CHIP_IS_OMAP3430ES2 | \ CHIP_IS_OMAP3430ES3_0 | \ - CHIP_IS_OMAP3430ES3_1 | \ - CHIP_IS_OMAP3630ES1) + CHIP_GE_OMAP3430ES3_1)#define CHIP_GE_OMAP3430ES3_1 (CHIP_IS_OMAP3430ES3_1 | \ - CHIP_IS_OMAP3630ES1) - + CHIP_IS_OMAP3630ES1 | \ + CHIP_GE_OMAP3630ES1_1) +#define CHIP_GE_OMAP3630ES1_1 (CHIP_IS_OMAP3630ES1_1 | \ + CHIP_IS_OMAP3630ES1_2)int omap_chip_is (struct omap_chip_id oci);void omap2_check_revision (void );
Tony Lindgren
maintainerRe: [PATCH v2] OMAP3630: Add ES1.1 and ES1.2 detection
Quoted 9 lines · Anand Gadiyar
Add revision detection for ES1.1 and ES1.2. Set default revision as ES1.2.
Add
CHIP_GE_OMAP3630ES1_1to detect revisions 1.1 and later. This is needed for at least one feature that is broken in 3630ES1.0 but exists on older (3430 ES3.1) and newer revisions.Additionally, update some of the CHIP_GE_* macros to use other macros for ease of maintenance.
Thanks, I've updated it a bit more for the fallthrough handling, here's the updated version.
Regards,
Tony
Quoted 1 line
From
1b7fe944881114a78d04c98188b56852140480d4Mon Sep 17 00:00:00 2001
From: Anand Gadiyar <[email protected]>
Date: Tue, 3 Aug 2010 19:59:24 +0000
Subject: [PATCH] OMAP3630: Add ES1.1 and ES1.2 detection
Add revision detection for ES1.1 and ES1.2. Set default revision as ES1.2.
Add CHIP_GE_OMAP3630ES1_1 to detect revisions 1.1 and later. This is needed for at least one feature that is broken in 3630ES1.0 but exists on older (3430 ES3.1) and newer revisions.
Additionally, update some of the CHIP_GE_* macros to use other macros for ease of maintenance.
arch/arm/mach-omap2/id.c +26 -2
@@ -269,11 +269,29 @@ static void __init omap3_check_revision(void) omap_chip.oc |=CHIP_IS_OMAP3430ES3_1 ;break ;case 0xb891 : +/* Handle 36xx devices */ + omap_chip.oc |=CHIP_IS_OMAP3630ES1 ; + +switch (rev) { +case 0 :/* Take care of early samples */ + omap_revision =OMAP3630_REV_ES1_0 ; +break ; +case 1 : + omap_revision =OMAP3630_REV_ES1_1 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_1 ; +break ; +case 2 : + omap_revision =OMAP3630_REV_ES1_2 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_2 ; +break ; +default : +/* FALLTHROUGH */ + }/* FALLTHROUGH */ default :/* Unknown default to latest silicon rev as default*/ - omap_revision =OMAP3630_REV_ES1_0 ; - omap_chip.oc |=CHIP_IS_OMAP3630ES1 ; + omap_revision =OMAP3630_REV_ES1_2 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_2 ; } }
@@ -349,6 +367,12 @@ static void __init omap3_cpuinfo(void)case OMAP_REVBITS_00 :strcpy (cpu_rev,"1.0" );break ; +case OMAP_REVBITS_01 : +strcpy (cpu_rev,"1.1" ); +break ; +case OMAP_REVBITS_02 : +strcpy (cpu_rev,"1.2" ); +break ;case OMAP_REVBITS_10 :strcpy (cpu_rev,"2.0" );break ;
arch/arm/plat-omap/include/plat/cpu.h +11 -4
@@ -66,6 +66,8 @@ unsigned int omap_rev(void);* family. This difference can be handled separately. */ #define OMAP_REVBITS_00 0x00 +#define OMAP_REVBITS_01 0x01 +#define OMAP_REVBITS_02 0x02#define OMAP_REVBITS_10 0x10#define OMAP_REVBITS_20 0x20#define OMAP_REVBITS_30 0x30
@@ -376,6 +378,8 @@ IS_OMAP_TYPE(3517, 0x3517)#define OMAP3430_REV_ES3_1_2 0x34305034#define OMAP3630_REV_ES1_0 0x36300034 +#define OMAP3630_REV_ES1_1 0x36300134 +#define OMAP3630_REV_ES1_2 0x36300234#define OMAP35XX_CLASS 0x35000034#define OMAP3503_REV (v) (OMAP35XX_CLASS | (0x3503 << 16) | (v << 8))
@@ -411,6 +415,8 @@ IS_OMAP_TYPE(3517, 0x3517)#define CHIP_IS_OMAP3430ES3_1 (1 << 6)#define CHIP_IS_OMAP3630ES1 (1 << 7)#define CHIP_IS_OMAP4430ES1 (1 << 8) +#define CHIP_IS_OMAP3630ES1_1 (1 << 9) +#define CHIP_IS_OMAP3630ES1_2 (1 << 10)#define CHIP_IS_OMAP24XX (CHIP_IS_OMAP2420 | CHIP_IS_OMAP2430)
@@ -424,11 +430,12 @@ IS_OMAP_TYPE(3517, 0x3517)*/ #define CHIP_GE_OMAP3430ES2 (CHIP_IS_OMAP3430ES2 | \ CHIP_IS_OMAP3430ES3_0 | \ - CHIP_IS_OMAP3430ES3_1 | \ - CHIP_IS_OMAP3630ES1) + CHIP_GE_OMAP3430ES3_1)#define CHIP_GE_OMAP3430ES3_1 (CHIP_IS_OMAP3430ES3_1 | \ - CHIP_IS_OMAP3630ES1) - + CHIP_IS_OMAP3630ES1 | \ + CHIP_GE_OMAP3630ES1_1) +#define CHIP_GE_OMAP3630ES1_1 (CHIP_IS_OMAP3630ES1_1 | \ + CHIP_IS_OMAP3630ES1_2)int omap_chip_is (struct omap_chip_id oci);void omap2_check_revision (void );
Tony Lindgren
maintainerRe: [PATCH v2] OMAP3630: Add ES1.1 and ES1.2 detection
Quoted 8 lines · Tony Lindgren
Quoted 7 lines · Anand Gadiyar
Add revision detection for ES1.1 and ES1.2. Set default revision as ES1.2.
Add
CHIP_GE_OMAP3630ES1_1to detect revisions 1.1 and later. This is needed for at least one feature that is broken in 3630ES1.0 but exists on older (3430 ES3.1) and newer revisions.
Quoted 5 lines
Quoted 2 lines
Additionally, update some of the CHIP_GE_* macros to use other macros for ease of maintenance.
Thanks, I've updated it a bit more for the fallthrough handling, here's the updated version.
That does not even build, here's the patch one more time.
Tony
Quoted 1 line
From
03323e6ae5e93e32aad9005b252f5b7125b39564Mon Sep 17 00:00:00 2001
From: Anand Gadiyar <[email protected]>
Date: Tue, 3 Aug 2010 19:59:24 +0000
Subject: [PATCH] OMAP3630: Add ES1.1 and ES1.2 detection
Add revision detection for ES1.1 and ES1.2. Set default revision as ES1.2.
Add CHIP_GE_OMAP3630ES1_1 to detect revisions 1.1 and later. This is needed for at least one feature that is broken in 3630ES1.0 but exists on older (3430 ES3.1) and newer revisions.
Additionally, update some of the CHIP_GE_* macros to use other macros for ease of maintenance.
arch/arm/mach-omap2/id.c +26 -2
@@ -269,11 +269,29 @@ static void __init omap3_check_revision(void) omap_chip.oc |=CHIP_IS_OMAP3430ES3_1 ;break ;case 0xb891 : +/* Handle 36xx devices */ + omap_chip.oc |=CHIP_IS_OMAP3630ES1 ; + +switch (rev) { +case 0 :/* Take care of early samples */ + omap_revision =OMAP3630_REV_ES1_0 ; +break ; +case 1 : + omap_revision =OMAP3630_REV_ES1_1 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_1 ; +break ; +case 2 : + omap_revision =OMAP3630_REV_ES1_2 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_2 ; +break ; +default : +/* FALLTHROUGH */ + }/* FALLTHROUGH */ default :/* Unknown default to latest silicon rev as default*/ - omap_revision =OMAP3630_REV_ES1_0 ; - omap_chip.oc |=CHIP_IS_OMAP3630ES1 ; + omap_revision =OMAP3630_REV_ES1_2 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_2 ; } }
@@ -349,6 +367,12 @@ static void __init omap3_cpuinfo(void)case OMAP_REVBITS_00 :strcpy (cpu_rev,"1.0" );break ; +case OMAP_REVBITS_01 : +strcpy (cpu_rev,"1.1" ); +break ; +case OMAP_REVBITS_02 : +strcpy (cpu_rev,"1.2" ); +break ;case OMAP_REVBITS_10 :strcpy (cpu_rev,"2.0" );break ;
arch/arm/plat-omap/include/plat/cpu.h +11 -4
@@ -66,6 +66,8 @@ unsigned int omap_rev(void);* family. This difference can be handled separately. */ #define OMAP_REVBITS_00 0x00 +#define OMAP_REVBITS_01 0x01 +#define OMAP_REVBITS_02 0x02#define OMAP_REVBITS_10 0x10#define OMAP_REVBITS_20 0x20#define OMAP_REVBITS_30 0x30
@@ -376,6 +378,8 @@ IS_OMAP_TYPE(3517, 0x3517)#define OMAP3430_REV_ES3_1_2 0x34305034#define OMAP3630_REV_ES1_0 0x36300034 +#define OMAP3630_REV_ES1_1 0x36300134 +#define OMAP3630_REV_ES1_2 0x36300234#define OMAP35XX_CLASS 0x35000034#define OMAP3503_REV (v) (OMAP35XX_CLASS | (0x3503 << 16) | (v << 8))
@@ -411,6 +415,8 @@ IS_OMAP_TYPE(3517, 0x3517)#define CHIP_IS_OMAP3430ES3_1 (1 << 6)#define CHIP_IS_OMAP3630ES1 (1 << 7)#define CHIP_IS_OMAP4430ES1 (1 << 8) +#define CHIP_IS_OMAP3630ES1_1 (1 << 9) +#define CHIP_IS_OMAP3630ES1_2 (1 << 10)#define CHIP_IS_OMAP24XX (CHIP_IS_OMAP2420 | CHIP_IS_OMAP2430)
@@ -424,11 +430,12 @@ IS_OMAP_TYPE(3517, 0x3517)*/ #define CHIP_GE_OMAP3430ES2 (CHIP_IS_OMAP3430ES2 | \ CHIP_IS_OMAP3430ES3_0 | \ - CHIP_IS_OMAP3430ES3_1 | \ - CHIP_IS_OMAP3630ES1) + CHIP_GE_OMAP3430ES3_1)#define CHIP_GE_OMAP3430ES3_1 (CHIP_IS_OMAP3430ES3_1 | \ - CHIP_IS_OMAP3630ES1) - + CHIP_IS_OMAP3630ES1 | \ + CHIP_GE_OMAP3630ES1_1) +#define CHIP_GE_OMAP3630ES1_1 (CHIP_IS_OMAP3630ES1_1 | \ + CHIP_IS_OMAP3630ES1_2)int omap_chip_is (struct omap_chip_id oci);void omap2_check_revision (void );
RE: [PATCH v2] OMAP3630: Add ES1.1 and ES1.2 detection
Quoted 16 lines
-----Original Message-----
From: Tony Lindgren [mailto:[email protected]]
Sent: Wednesday, August 04, 2010 4:22 PM
To: Gadiyar, Anand
Cc: [email protected]; Menon, Nishanth; G, Manjunath Kondaiah
Subject: Re: [PATCH v2] OMAP3630: Add ES1.1 and ES1.2 detectionQuoted 8 lines · Tony Lindgren
Quoted 7 lines · Anand Gadiyar
Add revision detection for ES1.1 and ES1.2. Set default revision as ES1.2.
Add
CHIP_GE_OMAP3630ES1_1to detect revisions 1.1 and later. This is needed for at least one feature that is broken in 3630ES1.0 but exists on older (3430 ES3.1) and newer revisions.
Quoted 8 lines
Quoted 5 lines
Quoted 2 lines
Additionally, update some of the CHIP_GE_* macros to use other macros for ease of maintenance.
Thanks, I've updated it a bit more for the fallthrough handling, here's the updated version.
That does not even build, here's the patch one more time.
This one doesn't seem to build either :(
The two patches you sent are identical except for the first line, so maybe you attached the wrong file?
- Anand
Re: [PATCH v2] OMAP3630: Add ES1.1 and ES1.2 detection
In reply to Tony Lindgrenhi,
Quoted 15 lines · ext Tony Lindgren
arch/arm/mach-omap2/id.c +7
-0@@ -269,11 +269,29 @@ static void __init omap3_check_revision(void) omap_chip.oc |=CHIP_IS_OMAP3430ES3_1 ;break ;case 0xb891 : +/* Handle 36xx devices */ + omap_chip.oc |=CHIP_IS_OMAP3630ES1 ; + +switch (rev) { +case 0 :/* Take care of early samples */ + omap_revision =OMAP3630_REV_ES1_0 ; +break ;
arch/arm/mach-omap2/id.c static void __init omap3_check_revision(void) · line 288
Quoted 10 lines
arch/arm/mach-omap2/id.c +10
-0+case 1 : + omap_revision =OMAP3630_REV_ES1_1 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_1 ; +break ; +case 2 : + omap_revision =OMAP3630_REV_ES1_2 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_2 ; +break ; +default : +/* FALLTHROUGH */
did you forget a break here
arch/arm/mach-omap2/id.c static void __init omap3_check_revision(void) · line 294
Quoted 8 lines
arch/arm/mach-omap2/id.c +3
-2+ }/* FALLTHROUGH */ default :/* Unknown default to latest silicon rev as default*/ - omap_revision =OMAP3630_REV_ES1_0 ; - omap_chip.oc |=CHIP_IS_OMAP3630ES1 ; + omap_revision =OMAP3630_REV_ES1_2 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_2 ;
and here ?
Signature · 3 lines
balbi DefectiveByDesign.org
Tony Lindgren
maintainerRe: [PATCH v2] OMAP3630: Add ES1.1 and ES1.2 detection
In reply to Tony LindgrenQuoted 9 lines · Tony Lindgren
Quoted 8 lines · Tony Lindgren
Quoted 7 lines · Anand Gadiyar
Add revision detection for ES1.1 and ES1.2. Set default revision as ES1.2.
Add
CHIP_GE_OMAP3630ES1_1to detect revisions 1.1 and later. This is needed for at least one feature that is broken in 3630ES1.0 but exists on older (3430 ES3.1) and newer revisions.
Quoted 7 lines
Quoted 5 lines
Quoted 2 lines
Additionally, update some of the CHIP_GE_* macros to use other macros for ease of maintenance.
Thanks, I've updated it a bit more for the fallthrough handling, here's the updated version.
That does not even build, here's the patch one more time.
Forgot to refresh, sorry. One more time below.
Tony
Quoted 1 line
From
9c6484502a8aba4b7a0f1f3ca847557d52a9350bMon Sep 17 00:00:00 2001
From: Anand Gadiyar <[email protected]>
Date: Tue, 3 Aug 2010 19:59:24 +0000
Subject: [PATCH] OMAP3630: Add ES1.1 and ES1.2 detection
Add revision detection for ES1.1 and ES1.2. Set default revision as ES1.2.
Add CHIP_GE_OMAP3630ES1_1 to detect revisions 1.1 and later. This is needed for at least one feature that is broken in 3630ES1.0 but exists on older (3430 ES3.1) and newer revisions.
Additionally, update some of the CHIP_GE_* macros to use other macros for ease of maintenance.
arch/arm/mach-omap2/id.c +25 -3
@@ -269,11 +269,27 @@ static void __init omap3_check_revision(void) omap_chip.oc |=CHIP_IS_OMAP3430ES3_1 ;break ;case 0xb891 : -/* FALLTHROUGH */ +/* Handle 36xx devices */ + omap_chip.oc |=CHIP_IS_OMAP3630ES1 ; + +switch (rev) { +case 0 :/* Take care of early samples */ + omap_revision =OMAP3630_REV_ES1_0 ; +break ; +case 1 : + omap_revision =OMAP3630_REV_ES1_1 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_1 ; +break ; +case 2 : +default : + omap_revision =OMAP3630_REV_ES1_2 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_2 ; +break ; + }default :/* Unknown default to latest silicon rev as default*/ - omap_revision =OMAP3630_REV_ES1_0 ; - omap_chip.oc |=CHIP_IS_OMAP3630ES1 ; + omap_revision =OMAP3630_REV_ES1_2 ; + omap_chip.oc |=CHIP_IS_OMAP3630ES1_2 ; } }
@@ -349,6 +365,12 @@ static void __init omap3_cpuinfo(void)case OMAP_REVBITS_00 :strcpy (cpu_rev,"1.0" );break ; +case OMAP_REVBITS_01 : +strcpy (cpu_rev,"1.1" ); +break ; +case OMAP_REVBITS_02 : +strcpy (cpu_rev,"1.2" ); +break ;case OMAP_REVBITS_10 :strcpy (cpu_rev,"2.0" );break ;
arch/arm/plat-omap/include/plat/cpu.h +11 -4
@@ -66,6 +66,8 @@ unsigned int omap_rev(void);* family. This difference can be handled separately. */ #define OMAP_REVBITS_00 0x00 +#define OMAP_REVBITS_01 0x01 +#define OMAP_REVBITS_02 0x02#define OMAP_REVBITS_10 0x10#define OMAP_REVBITS_20 0x20#define OMAP_REVBITS_30 0x30
@@ -376,6 +378,8 @@ IS_OMAP_TYPE(3517, 0x3517)#define OMAP3430_REV_ES3_1_2 0x34305034#define OMAP3630_REV_ES1_0 0x36300034 +#define OMAP3630_REV_ES1_1 0x36300134 +#define OMAP3630_REV_ES1_2 0x36300234#define OMAP35XX_CLASS 0x35000034#define OMAP3503_REV (v) (OMAP35XX_CLASS | (0x3503 << 16) | (v << 8))
@@ -411,6 +415,8 @@ IS_OMAP_TYPE(3517, 0x3517)#define CHIP_IS_OMAP3430ES3_1 (1 << 6)#define CHIP_IS_OMAP3630ES1 (1 << 7)#define CHIP_IS_OMAP4430ES1 (1 << 8) +#define CHIP_IS_OMAP3630ES1_1 (1 << 9) +#define CHIP_IS_OMAP3630ES1_2 (1 << 10)#define CHIP_IS_OMAP24XX (CHIP_IS_OMAP2420 | CHIP_IS_OMAP2430)
@@ -424,11 +430,12 @@ IS_OMAP_TYPE(3517, 0x3517)*/ #define CHIP_GE_OMAP3430ES2 (CHIP_IS_OMAP3430ES2 | \ CHIP_IS_OMAP3430ES3_0 | \ - CHIP_IS_OMAP3430ES3_1 | \ - CHIP_IS_OMAP3630ES1) + CHIP_GE_OMAP3430ES3_1)#define CHIP_GE_OMAP3430ES3_1 (CHIP_IS_OMAP3430ES3_1 | \ - CHIP_IS_OMAP3630ES1) - + CHIP_IS_OMAP3630ES1 | \ + CHIP_GE_OMAP3630ES1_1) +#define CHIP_GE_OMAP3630ES1_1 (CHIP_IS_OMAP3630ES1_1 | \ + CHIP_IS_OMAP3630ES1_2)int omap_chip_is (struct omap_chip_id oci);void omap2_check_revision (void );
Re: [PATCH v2] OMAP3630: Add ES1.1 and ES1.2 detection
Hi,
Quoted 12 lines
From
9c6484502a8aba4b7a0f1f3ca847557d52a9350bMon Sep 17 00:00:00 2001
From: Anand Gadiyar <[email protected]>
Date: Tue, 3 Aug 2010 19:59:24 +0000
Subject: [PATCH] OMAP3630: Add ES1.1 and ES1.2 detectionAdd revision detection for ES1.1 and ES1.2. Set default revision as ES1.2.
Add
CHIP_GE_OMAP3630ES1_1to detect revisions 1.1 and later. This is needed for at least one feature that is broken in 3630ES1.0 but exists on older (3430 ES3.1) and newer revisions.
Quoted 8 lines
Additionally, update some of the CHIP_GE_* macros to use other macros for ease of maintenance.
Signed-off-by Anand Gadiyar <[email protected]>Cc Nishanth Menon <[email protected]>Cc Manjunatha GK <[email protected]>[[email protected]: update fallthrough handling]Signed-off-by Tony Lindgren <[email protected]>
compile tested with omap3_defconfig. Builds cleanly.
Signature · 3 lines
balbi DefectiveByDesign.org