On Wed, Mar 07, 2012 at 04:20:58AM -0800, viresh kumar wrote:
On 3/7/12, Russell King - ARM Linux [off-list ref] wrote:
quoted
On Wed, Mar 07, 2012 at 03:57:55PM +0530, Viresh Kumar wrote:
quoted
@@ -156,10 +159,22 @@ static int mpcore_wdt_open(struct inode *inode,
struct file *file)
quoted
quoted
+ ret = clk_enable(wdt->clk);
What about preparing the clock?
I missed that. Will update prepare/unprepare of clk across driver.
quoted
quoted
+ wdt->clk = clk_get(&pdev->dev, NULL);
+ if (IS_ERR(wdt->clk)) {
+ dev_warn(&pdev->dev, "Clock not found\n");
+ wdt->clk = NULL;
Remove this line.
Actually this was very much intentional, so that i can do
if (wdt->clk).
Drivers have no business interpreting anything but an IS_ERR() return from
clk_get() as invalid. Everything else is the CLK APIs business, not the
driver's business. So, to start using NULL as a special case is wrong.