From: Enric Balletbo i Serra Date: Wed, 25 May 2011 11:50:44 +0000 (+0200) Subject: OMAP3: Move get_sys_clkin_sel() function to not duplicate code X-Git-Tag: v1.5.1~4 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=53838915d085653683e107343117db19a64a54c0;p=pandora-x-loader.git 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 --- 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);