hw->clk = devm_clk_get(&pdev->dev, "spi");
if (IS_ERR(hw->clk)) {
dev_err(&pdev->dev, "No clock for device\n");
err = PTR_ERR(hw->clk);
goto err_no_pdata;
}
這里就列印出:No clock for device
我的device是:
static struct s3c2410_spi_info spi1_info={/*by kite 2017.9.13*/
.num_cs = 0xff ,/*最大片選數*/
.bus_num = 1,
.set_cs = s3c24xx_spi_cs,
}
static struct device_node spinp = {
.name = "spi",
};
struct platform_device s3c_device_spi1 = {
.name = "s3c2410-spi",
.id = 1,
.num_resources = ARRAY_SIZE(s3c_spi1_resource),
.resource = s3c_spi1_resource,
.dev = {
.dma_mask = &samsung_device_dma_mask,
.coherent_dma_mask = DMA_BIT_MASK(32),
.platform_data =https://bbs.csdn.net/topics/ &spi1_info,/*by kite 2017.9.13*/
.of_node = &spinp,//struct device_node *of_node;
}
};這應該是獲取時鐘結構體的函式,我不知道他是怎么匹配的,
我試著改成:hw->clk = devm_clk_get(NULL, "spi");
因為我看第一個引數為null時是匹配名字的,結果還是會出錯,,,,
求解了,,,,,我是4.8.17的Kernel
uj5u.com熱心網友回復:
已解決...............uj5u.com熱心網友回復:
我也遇到這個問題,驅動從kernel5.2移植到2.6,也是這里出了問題轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/268458.html
標籤:驅動程序開發區
上一篇:哭了哭了
