mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 02:50:49 +09:00
soc: rockchip: csu: Implement rockchip_csu_get_bus()
Change-Id: Ibe9d569348b19b4bad1aed3d810a3160aa5c7988 Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
This commit is contained in:
@@ -36,6 +36,21 @@ struct rockchip_csu {
|
||||
static struct rockchip_csu *rk_csu;
|
||||
static DEFINE_MUTEX(csu_lock);
|
||||
|
||||
static struct csu_bus *rockchip_csu_get_bus(unsigned int bus_id)
|
||||
{
|
||||
int i;
|
||||
|
||||
if (!rk_csu || !rk_csu->bus)
|
||||
return NULL;
|
||||
|
||||
for (i = 0; i < rk_csu->bus_cnt; i++) {
|
||||
if (bus_id == rk_csu->bus[i].id)
|
||||
return &rk_csu->bus[i];
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static int rockchip_csu_sip_config(struct device *dev, u32 bus_id, u32 cfg,
|
||||
u32 enable_msk)
|
||||
{
|
||||
@@ -91,7 +106,7 @@ static int csu_disable(struct csu_clk *clk, bool disable)
|
||||
return 0;
|
||||
if (clk->bus_id >= rk_csu->bus_cnt)
|
||||
return 0;
|
||||
bus = &rk_csu->bus[clk->bus_id];
|
||||
bus = rockchip_csu_get_bus(clk->bus_id);
|
||||
if (!bus)
|
||||
return 0;
|
||||
|
||||
@@ -138,7 +153,7 @@ int rockchip_csu_set_div(struct csu_clk *clk, unsigned int div)
|
||||
return 0;
|
||||
if (clk->bus_id >= rk_csu->bus_cnt)
|
||||
return 0;
|
||||
bus = &rk_csu->bus[clk->bus_id];
|
||||
bus = rockchip_csu_get_bus(clk->bus_id);
|
||||
if (!bus)
|
||||
return 0;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user