mirror of
https://github.com/linux-sunxi/u-boot-sunxi.git
synced 2024-02-12 11:16:03 +08:00
ARM: OMAP: hide custom bit manipulation function sr32()
The only remaining user of the custom bit manipulation function sr32() is arch/arm/cpu/armv7/omap3/clock.c, so make it a static function in that file to prepare complete removal. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Tom Rini <trini@ti.com> Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
This commit is contained in:
@ -21,6 +21,19 @@
|
|||||||
#include <environment.h>
|
#include <environment.h>
|
||||||
#include <command.h>
|
#include <command.h>
|
||||||
|
|
||||||
|
/*
|
||||||
|
* sr32 - clear & set a value in a bit range for a 32 bit address
|
||||||
|
*/
|
||||||
|
static inline void sr32(void *addr, u32 start_bit, u32 num_bits, u32 value)
|
||||||
|
{
|
||||||
|
u32 tmp, msk = 0;
|
||||||
|
msk = 1 << num_bits;
|
||||||
|
--msk;
|
||||||
|
tmp = readl((u32)addr) & ~(msk << start_bit);
|
||||||
|
tmp |= value << start_bit;
|
||||||
|
writel(tmp, (u32)addr);
|
||||||
|
}
|
||||||
|
|
||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
* get_sys_clk_speed() - determine reference oscillator speed
|
* get_sys_clk_speed() - determine reference oscillator speed
|
||||||
* based on known 32kHz clock and gptimer.
|
* based on known 32kHz clock and gptimer.
|
||||||
|
@ -24,19 +24,6 @@ void sdelay(unsigned long loops)
|
|||||||
"bne 1b":"=r" (loops):"0"(loops));
|
"bne 1b":"=r" (loops):"0"(loops));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****************************************************************
|
|
||||||
* sr32 - clear & set a value in a bit range for a 32 bit address
|
|
||||||
*****************************************************************/
|
|
||||||
void sr32(void *addr, u32 start_bit, u32 num_bits, u32 value)
|
|
||||||
{
|
|
||||||
u32 tmp, msk = 0;
|
|
||||||
msk = 1 << num_bits;
|
|
||||||
--msk;
|
|
||||||
tmp = readl((u32)addr) & ~(msk << start_bit);
|
|
||||||
tmp |= value << start_bit;
|
|
||||||
writel(tmp, (u32)addr);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*********************************************************************
|
/*********************************************************************
|
||||||
* wait_on_value() - common routine to allow waiting for changes in
|
* wait_on_value() - common routine to allow waiting for changes in
|
||||||
* volatile regs.
|
* volatile regs.
|
||||||
|
@ -62,7 +62,6 @@ void secureworld_exit(void);
|
|||||||
void try_unlock_memory(void);
|
void try_unlock_memory(void);
|
||||||
u32 get_boot_type(void);
|
u32 get_boot_type(void);
|
||||||
void invalidate_dcache(u32);
|
void invalidate_dcache(u32);
|
||||||
void sr32(void *, u32, u32, u32);
|
|
||||||
u32 wait_on_value(u32, u32, void *, u32);
|
u32 wait_on_value(u32, u32, void *, u32);
|
||||||
void sdelay(unsigned long);
|
void sdelay(unsigned long);
|
||||||
void make_cs1_contiguous(void);
|
void make_cs1_contiguous(void);
|
||||||
|
@ -31,7 +31,6 @@ void watchdog_init(void);
|
|||||||
u32 get_device_type(void);
|
u32 get_device_type(void);
|
||||||
void do_set_mux(u32 base, struct pad_conf_entry const *array, int size);
|
void do_set_mux(u32 base, struct pad_conf_entry const *array, int size);
|
||||||
void set_muxconf_regs_essential(void);
|
void set_muxconf_regs_essential(void);
|
||||||
void sr32(void *, u32, u32, u32);
|
|
||||||
u32 wait_on_value(u32, u32, void *, u32);
|
u32 wait_on_value(u32, u32, void *, u32);
|
||||||
void sdelay(unsigned long);
|
void sdelay(unsigned long);
|
||||||
void set_pl310_ctrl_reg(u32 val);
|
void set_pl310_ctrl_reg(u32 val);
|
||||||
|
@ -32,7 +32,6 @@ void watchdog_init(void);
|
|||||||
u32 get_device_type(void);
|
u32 get_device_type(void);
|
||||||
void do_set_mux(u32 base, struct pad_conf_entry const *array, int size);
|
void do_set_mux(u32 base, struct pad_conf_entry const *array, int size);
|
||||||
void set_muxconf_regs_essential(void);
|
void set_muxconf_regs_essential(void);
|
||||||
void sr32(void *, u32, u32, u32);
|
|
||||||
u32 wait_on_value(u32, u32, void *, u32);
|
u32 wait_on_value(u32, u32, void *, u32);
|
||||||
void sdelay(unsigned long);
|
void sdelay(unsigned long);
|
||||||
void setup_clocks_for_console(void);
|
void setup_clocks_for_console(void);
|
||||||
|
Reference in New Issue
Block a user