Re: [PATCH v4 2/2] Input: bcm-keypad: Add Broadcom keypad controller

From: Scott Branden
Date: Mon Mar 02 2015 - 16:59:56 EST


Hi Dmitry,

I understand what's missing now.

Thanks,
Scott

On 15-03-02 12:23 PM, Dmitry Torokhov wrote:
Hi Scott,

Hmm, also bcm_kp_start() and bcm_kp_stop() should check if kp->clk is
valid before trying to enable/disable it.

I checked and other keyboard drivers do not check this. I return an
error in bcm_kp_start if the clk enable fails. On stop, if the clk
is not valid something is really, really wrong as well.

The other drivers simply abort probe() if they can't get clock, you
decided to allow probe() to finish and assume that clock is already
enabled, leaving kp->clk == ERR_PTR(-ENOENT) in your version. If you try
then calling clk_prepare_enable() with that pointer it is going to bomb,
that is why I said you need to check pointer validity in bcm_kp_start()
and bcm_kp_stop().

Thanks.


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/