1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __BRCMSTB_SOC_H
3 #define __BRCMSTB_SOC_H
4 
5 #include <linux/kconfig.h>
6 
BRCM_ID(u32 reg)7 static inline u32 BRCM_ID(u32 reg)
8 {
9 	return reg >> 28 ? reg >> 16 : reg >> 8;
10 }
11 
BRCM_REV(u32 reg)12 static inline u32 BRCM_REV(u32 reg)
13 {
14 	return reg & 0xff;
15 }
16 
17 #if IS_ENABLED(CONFIG_SOC_BRCMSTB)
18 
19 /*
20  * Helper functions for getting family or product id from the
21  * SoC driver.
22  */
23 u32 brcmstb_get_family_id(void);
24 u32 brcmstb_get_product_id(void);
25 
26 #else
brcmstb_get_family_id(void)27 static inline u32 brcmstb_get_family_id(void)
28 {
29 	return 0;
30 }
31 
brcmstb_get_product_id(void)32 static inline u32 brcmstb_get_product_id(void)
33 {
34 	return 0;
35 }
36 #endif
37 
38 #endif /* __BRCMSTB_SOC_H */
39