Commit 06c2d368 authored by Keerthy's avatar Keerthy Committed by Tony Lindgren

ARM: OMAP: DRA7: Make use of omap_revision information for soc_is* calls

Currently of_machine_is_compatible is used to detect the soc which
employs string comparison operations. We already have all the required
information in the omap_revision. Hence make use of the same like
the previous OMAPs and avoid costly string comparisons.
Signed-off-by: default avatarKeerthy <j-keerthy@ti.com>
Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
parent 92e963f5
...@@ -181,6 +181,14 @@ static inline int is_ti ##class (void) \ ...@@ -181,6 +181,14 @@ static inline int is_ti ##class (void) \
return (GET_TI_CLASS == (id)) ? 1 : 0; \ return (GET_TI_CLASS == (id)) ? 1 : 0; \
} }
#define GET_DRA_CLASS ((omap_rev() >> 24) & 0xff)
#define IS_DRA_CLASS(class, id) \
static inline int is_dra ##class (void) \
{ \
return (GET_DRA_CLASS == (id)) ? 1 : 0; \
}
#define GET_OMAP_SUBCLASS ((omap_rev() >> 20) & 0x0fff) #define GET_OMAP_SUBCLASS ((omap_rev() >> 20) & 0x0fff)
#define IS_OMAP_SUBCLASS(subclass, id) \ #define IS_OMAP_SUBCLASS(subclass, id) \
...@@ -201,6 +209,12 @@ static inline int is_am ##subclass (void) \ ...@@ -201,6 +209,12 @@ static inline int is_am ##subclass (void) \
return (GET_OMAP_SUBCLASS == (id)) ? 1 : 0; \ return (GET_OMAP_SUBCLASS == (id)) ? 1 : 0; \
} }
#define IS_DRA_SUBCLASS(subclass, id) \
static inline int is_dra ##subclass (void) \
{ \
return (GET_OMAP_SUBCLASS == (id)) ? 1 : 0; \
}
IS_OMAP_CLASS(24xx, 0x24) IS_OMAP_CLASS(24xx, 0x24)
IS_OMAP_CLASS(34xx, 0x34) IS_OMAP_CLASS(34xx, 0x34)
IS_OMAP_CLASS(44xx, 0x44) IS_OMAP_CLASS(44xx, 0x44)
...@@ -210,6 +224,7 @@ IS_AM_CLASS(33xx, 0x33) ...@@ -210,6 +224,7 @@ IS_AM_CLASS(33xx, 0x33)
IS_AM_CLASS(43xx, 0x43) IS_AM_CLASS(43xx, 0x43)
IS_TI_CLASS(81xx, 0x81) IS_TI_CLASS(81xx, 0x81)
IS_DRA_CLASS(7xx, 0x7)
IS_OMAP_SUBCLASS(242x, 0x242) IS_OMAP_SUBCLASS(242x, 0x242)
IS_OMAP_SUBCLASS(243x, 0x243) IS_OMAP_SUBCLASS(243x, 0x243)
...@@ -224,6 +239,8 @@ IS_TI_SUBCLASS(816x, 0x816) ...@@ -224,6 +239,8 @@ IS_TI_SUBCLASS(816x, 0x816)
IS_TI_SUBCLASS(814x, 0x814) IS_TI_SUBCLASS(814x, 0x814)
IS_AM_SUBCLASS(335x, 0x335) IS_AM_SUBCLASS(335x, 0x335)
IS_AM_SUBCLASS(437x, 0x437) IS_AM_SUBCLASS(437x, 0x437)
IS_DRA_SUBCLASS(75x, 0x75)
IS_DRA_SUBCLASS(72x, 0x72)
#define soc_is_omap24xx() 0 #define soc_is_omap24xx() 0
#define soc_is_omap242x() 0 #define soc_is_omap242x() 0
...@@ -397,9 +414,9 @@ IS_OMAP_TYPE(3430, 0x3430) ...@@ -397,9 +414,9 @@ IS_OMAP_TYPE(3430, 0x3430)
#undef soc_is_dra7xx #undef soc_is_dra7xx
#undef soc_is_dra74x #undef soc_is_dra74x
#undef soc_is_dra72x #undef soc_is_dra72x
#define soc_is_dra7xx() (of_machine_is_compatible("ti,dra7")) #define soc_is_dra7xx() is_dra7xx()
#define soc_is_dra74x() (of_machine_is_compatible("ti,dra74")) #define soc_is_dra74x() is_dra75x()
#define soc_is_dra72x() (of_machine_is_compatible("ti,dra72")) #define soc_is_dra72x() is_dra72x()
#endif #endif
/* Various silicon revisions for omap2 */ /* Various silicon revisions for omap2 */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment