1
0
Fork 0

drivers: net: cpts: Remove hardcoded clock name for CPTS

CPTS refclk name is hardcoded, which makes it fail in case of DRA7x
Remove the hardcoded clock name for CPTS refclk and get the same from DT.

Signed-off-by: George Cherian <george.cherian@ti.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
hifive-unleashed-5.1
George Cherian 2014-05-02 12:02:00 +05:30 committed by David S. Miller
parent 0987a6ef94
commit d0415e7cc0
1 changed files with 4 additions and 7 deletions

View File

@ -236,13 +236,11 @@ static void cpts_overflow_check(struct work_struct *work)
schedule_delayed_work(&cpts->overflow_work, CPTS_OVERFLOW_PERIOD);
}
#define CPTS_REF_CLOCK_NAME "cpsw_cpts_rft_clk"
static void cpts_clk_init(struct cpts *cpts)
static void cpts_clk_init(struct device *dev, struct cpts *cpts)
{
cpts->refclk = clk_get(NULL, CPTS_REF_CLOCK_NAME);
cpts->refclk = devm_clk_get(dev, "cpts");
if (IS_ERR(cpts->refclk)) {
pr_err("Failed to clk_get %s\n", CPTS_REF_CLOCK_NAME);
dev_err(dev, "Failed to get cpts refclk\n");
cpts->refclk = NULL;
return;
}
@ -252,7 +250,6 @@ static void cpts_clk_init(struct cpts *cpts)
static void cpts_clk_release(struct cpts *cpts)
{
clk_disable(cpts->refclk);
clk_put(cpts->refclk);
}
static int cpts_match(struct sk_buff *skb, unsigned int ptp_class,
@ -390,7 +387,7 @@ int cpts_register(struct device *dev, struct cpts *cpts,
for (i = 0; i < CPTS_MAX_EVENTS; i++)
list_add(&cpts->pool_data[i].list, &cpts->pool);
cpts_clk_init(cpts);
cpts_clk_init(dev, cpts);
cpts_write32(cpts, CPTS_EN, control);
cpts_write32(cpts, TS_PEND_EN, int_enable);