From 53838915d085653683e107343117db19a64a54c0 Mon Sep 17 00:00:00 2001 From: Enric Balletbo i Serra Date: Wed, 25 May 2011 13:50:44 +0200 Subject: [PATCH] OMAP3: Move get_sys_clkin_sel() function to not duplicate code The get_sys_clkin_sel() function is implemented by various boards, this patch moves this function to a common place to not duplicate code. board/omap3530beagle/omap3530beagle.c :398:void get_sys_clkin_sel(u32 osc_clk, u32 *sys_clkin_sel) board/igep00x0/igep00x0.c :142:void get_sys_clkin_sel(u32 osc_clk, u32 *sys_clkin_sel) board/omap3430sdp/omap3430sdp.c :194:void get_sys_clkin_sel(u32 osc_clk, u32 *sys_clkin_sel) board/omap3evm/omap3evm.c :246:void get_sys_clkin_sel(u32 osc_clk, u32 *sys_clkin_sel) board/omap3430labrador/omap3430sdp.c :191:void get_sys_clkin_sel(u32 osc_clk, u32 *sys_clkin_sel) board/overo/overo.c :349:void get_sys_clkin_sel(u32 osc_clk, u32 *sys_clkin_sel) Signed-off-by: Enric Balletbo i Serra Signed-off-by: Anand Gadiyar --- board/igep00x0/igep00x0.c | 19 ------------------- board/omap3430labrador/omap3430sdp.c | 19 ------------------- board/omap3430sdp/omap3430sdp.c | 19 ------------------- board/omap3530beagle/omap3530beagle.c | 19 ------------------- board/omap3evm/omap3evm.c | 19 ------------------- board/overo/overo.c | 19 ------------------- cpu/omap3/sys_info.c | 19 +++++++++++++++++++ include/asm/arch-omap3/sys_proto.h | 2 ++ 8 files changed, 21 insertions(+), 114 deletions(-) diff --git a/board/igep00x0/igep00x0.c b/board/igep00x0/igep00x0.c index 0b2ce5e..a9c02dd 100644 --- a/board/igep00x0/igep00x0.c +++ b/board/igep00x0/igep00x0.c @@ -134,25 +134,6 @@ u32 get_osc_clk_speed(void) return S12M; } -/****************************************************************************** - * get_sys_clkin_sel() - returns the sys_clkin_sel field value based on - * -- input oscillator clock frequency. - * - *****************************************************************************/ -void get_sys_clkin_sel(u32 osc_clk, u32 *sys_clkin_sel) -{ - if (osc_clk == S38_4M) - *sys_clkin_sel = 4; - else if (osc_clk == S26M) - *sys_clkin_sel = 3; - else if (osc_clk == S19_2M) - *sys_clkin_sel = 2; - else if (osc_clk == S13M) - *sys_clkin_sel = 1; - else if (osc_clk == S12M) - *sys_clkin_sel = 0; -} - /****************************************************************************** * prcm_init() - inits clocks for PRCM as defined in clocks.h * -- called from SRAM, or Flash (using temp SRAM stack). diff --git a/board/omap3430labrador/omap3430sdp.c b/board/omap3430labrador/omap3430sdp.c index 79d0dce..991a34f 100644 --- a/board/omap3430labrador/omap3430sdp.c +++ b/board/omap3430labrador/omap3430sdp.c @@ -183,25 +183,6 @@ u32 get_osc_clk_speed(void) return (S12M); } -/****************************************************************************** - * get_sys_clkin_sel() - returns the sys_clkin_sel field value based on - * -- input oscillator clock frequency. - * - *****************************************************************************/ -void get_sys_clkin_sel(u32 osc_clk, u32 *sys_clkin_sel) -{ - if(osc_clk == S38_4M) - *sys_clkin_sel= 4; - else if(osc_clk == S26M) - *sys_clkin_sel = 3; - else if(osc_clk == S19_2M) - *sys_clkin_sel = 2; - else if(osc_clk == S13M) - *sys_clkin_sel = 1; - else if(osc_clk == S12M) - *sys_clkin_sel = 0; -} - /****************************************************************************** * prcm_init() - inits clocks for PRCM as defined in clocks.h * -- called from SRAM, or Flash (using temp SRAM stack). diff --git a/board/omap3430sdp/omap3430sdp.c b/board/omap3430sdp/omap3430sdp.c index bb6070e..859ce1e 100644 --- a/board/omap3430sdp/omap3430sdp.c +++ b/board/omap3430sdp/omap3430sdp.c @@ -186,25 +186,6 @@ u32 get_osc_clk_speed(void) return (S12M); } -/****************************************************************************** - * get_sys_clkin_sel() - returns the sys_clkin_sel field value based on - * -- input oscillator clock frequency. - * - *****************************************************************************/ -void get_sys_clkin_sel(u32 osc_clk, u32 *sys_clkin_sel) -{ - if(osc_clk == S38_4M) - *sys_clkin_sel= 4; - else if(osc_clk == S26M) - *sys_clkin_sel = 3; - else if(osc_clk == S19_2M) - *sys_clkin_sel = 2; - else if(osc_clk == S13M) - *sys_clkin_sel = 1; - else if(osc_clk == S12M) - *sys_clkin_sel = 0; -} - /****************************************************************************** * prcm_init() - inits clocks for PRCM as defined in clocks.h * -- called from SRAM, or Flash (using temp SRAM stack). diff --git a/board/omap3530beagle/omap3530beagle.c b/board/omap3530beagle/omap3530beagle.c index 5a97d96..e3105bd 100644 --- a/board/omap3530beagle/omap3530beagle.c +++ b/board/omap3530beagle/omap3530beagle.c @@ -390,25 +390,6 @@ u32 get_osc_clk_speed(void) return S12M; } -/****************************************************************************** - * get_sys_clkin_sel() - returns the sys_clkin_sel field value based on - * -- input oscillator clock frequency. - * - *****************************************************************************/ -void get_sys_clkin_sel(u32 osc_clk, u32 *sys_clkin_sel) -{ - if (osc_clk == S38_4M) - *sys_clkin_sel = 4; - else if (osc_clk == S26M) - *sys_clkin_sel = 3; - else if (osc_clk == S19_2M) - *sys_clkin_sel = 2; - else if (osc_clk == S13M) - *sys_clkin_sel = 1; - else if (osc_clk == S12M) - *sys_clkin_sel = 0; -} - /****************************************************************************** * prcm_init() - inits clocks for PRCM as defined in clocks.h * -- called from SRAM, or Flash (using temp SRAM stack). diff --git a/board/omap3evm/omap3evm.c b/board/omap3evm/omap3evm.c index 5071046..2180594 100644 --- a/board/omap3evm/omap3evm.c +++ b/board/omap3evm/omap3evm.c @@ -238,25 +238,6 @@ u32 get_osc_clk_speed(void) return (S12M); } -/****************************************************************************** - * get_sys_clkin_sel() - returns the sys_clkin_sel field value based on - * -- input oscillator clock frequency. - * - *****************************************************************************/ -void get_sys_clkin_sel(u32 osc_clk, u32 *sys_clkin_sel) -{ - if(osc_clk == S38_4M) - *sys_clkin_sel= 4; - else if(osc_clk == S26M) - *sys_clkin_sel = 3; - else if(osc_clk == S19_2M) - *sys_clkin_sel = 2; - else if(osc_clk == S13M) - *sys_clkin_sel = 1; - else if(osc_clk == S12M) - *sys_clkin_sel = 0; -} - /****************************************************************************** * prcm_init() - inits clocks for PRCM as defined in clocks.h * -- called from SRAM, or Flash (using temp SRAM stack). diff --git a/board/overo/overo.c b/board/overo/overo.c index e7ac7a6..d852986 100644 --- a/board/overo/overo.c +++ b/board/overo/overo.c @@ -341,25 +341,6 @@ u32 get_osc_clk_speed(void) return S12M; } -/****************************************************************************** - * get_sys_clkin_sel() - returns the sys_clkin_sel field value based on - * -- input oscillator clock frequency. - * - *****************************************************************************/ -void get_sys_clkin_sel(u32 osc_clk, u32 *sys_clkin_sel) -{ - if (osc_clk == S38_4M) - *sys_clkin_sel = 4; - else if (osc_clk == S26M) - *sys_clkin_sel = 3; - else if (osc_clk == S19_2M) - *sys_clkin_sel = 2; - else if (osc_clk == S13M) - *sys_clkin_sel = 1; - else if (osc_clk == S12M) - *sys_clkin_sel = 0; -} - /****************************************************************************** * prcm_init() - inits clocks for PRCM as defined in clocks.h * -- called from SRAM, or Flash (using temp SRAM stack). diff --git a/cpu/omap3/sys_info.c b/cpu/omap3/sys_info.c index d6568a9..77b25a5 100644 --- a/cpu/omap3/sys_info.c +++ b/cpu/omap3/sys_info.c @@ -21,6 +21,7 @@ #include #include #include +#include #include #include @@ -238,3 +239,21 @@ u32 get_sysboot_value(void) mode = __raw_readl(CONTROL_STATUS) & (SYSBOOT_MASK); return mode; } + +/* + * get_sys_clkin_sel(): returns the sys_clkin_sel field value based on + * input oscillator clock frequency. + */ +void get_sys_clkin_sel(u32 osc_clk, u32 *sys_clkin_sel) +{ + if (osc_clk == S38_4M) + *sys_clkin_sel = 4; + else if (osc_clk == S26M) + *sys_clkin_sel = 3; + else if (osc_clk == S19_2M) + *sys_clkin_sel = 2; + else if (osc_clk == S13M) + *sys_clkin_sel = 1; + else if (osc_clk == S12M) + *sys_clkin_sel = 0; +} diff --git a/include/asm/arch-omap3/sys_proto.h b/include/asm/arch-omap3/sys_proto.h index 7ac53a2..8b40822 100644 --- a/include/asm/arch-omap3/sys_proto.h +++ b/include/asm/arch-omap3/sys_proto.h @@ -52,6 +52,8 @@ u32 running_in_flash(void); u32 running_from_internal_boot(void); u32 get_device_type(void); +void get_sys_clkin_sel(u32 osc_clk, u32 *sys_clkin_sel); + void sr32(u32 addr, u32 start_bit, u32 num_bits, u32 value); u32 wait_on_value(u32 read_bit_mask, u32 match_value, u32 read_addr, u32 bound); void sdelay(unsigned long loops); -- 2.39.5