mirror of
https://github.com/AsahiLinux/u-boot
synced 2025-02-26 20:37:16 +00:00
clk: stm32mp: handle ck_usbo_48m clock provided by USBPHYC
Handle the input clock of RCC USB_PHY_48, provided by USBPHYC and named "ck_usbo_48m". Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
This commit is contained in:
parent
9406f9735c
commit
06328d1411
1 changed files with 20 additions and 15 deletions
|
@ -962,6 +962,24 @@ static ulong stm32mp1_read_pll_freq(struct stm32mp1_clk_priv *priv,
|
||||||
return dfout;
|
return dfout;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static ulong stm32mp1_clk_get_by_name(const char *name)
|
||||||
|
{
|
||||||
|
struct clk clk;
|
||||||
|
struct udevice *dev = NULL;
|
||||||
|
ulong clock = 0;
|
||||||
|
|
||||||
|
if (!uclass_get_device_by_name(UCLASS_CLK, name, &dev)) {
|
||||||
|
if (clk_request(dev, &clk)) {
|
||||||
|
log_err("%s request", name);
|
||||||
|
} else {
|
||||||
|
clk.id = 0;
|
||||||
|
clock = clk_get_rate(&clk);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return clock;
|
||||||
|
}
|
||||||
|
|
||||||
static ulong stm32mp1_clk_get(struct stm32mp1_clk_priv *priv, int p)
|
static ulong stm32mp1_clk_get(struct stm32mp1_clk_priv *priv, int p)
|
||||||
{
|
{
|
||||||
u32 reg;
|
u32 reg;
|
||||||
|
@ -1127,24 +1145,11 @@ static ulong stm32mp1_clk_get(struct stm32mp1_clk_priv *priv, int p)
|
||||||
break;
|
break;
|
||||||
/* other */
|
/* other */
|
||||||
case _USB_PHY_48:
|
case _USB_PHY_48:
|
||||||
clock = 48000000;
|
clock = stm32mp1_clk_get_by_name("ck_usbo_48m");
|
||||||
break;
|
break;
|
||||||
case _DSI_PHY:
|
case _DSI_PHY:
|
||||||
{
|
clock = stm32mp1_clk_get_by_name("ck_dsi_phy");
|
||||||
struct clk clk;
|
|
||||||
struct udevice *dev = NULL;
|
|
||||||
|
|
||||||
if (!uclass_get_device_by_name(UCLASS_CLK, "ck_dsi_phy",
|
|
||||||
&dev)) {
|
|
||||||
if (clk_request(dev, &clk)) {
|
|
||||||
log_err("ck_dsi_phy request");
|
|
||||||
} else {
|
|
||||||
clk.id = 0;
|
|
||||||
clock = clk_get_rate(&clk);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
}
|
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue