Re: [alsa-devel] [PATCH v3 1/2] extcon: arizona: Add support for select accessory detect mode when headphone detection

From: Charles Keepax
Date: Sat Apr 25 2015 - 08:50:44 EST


On Wed, Apr 22, 2015 at 08:23:20PM +0900, Inha Song wrote:
> This patch add support for select accessory detect mode to HPDETL or HPDETR.
> Arizona provides a headphone detection circuit on the HPDETL and HPDETR pins
> to measure the impedance of an external load connected to the headphone.
>
> Depending on board design, headphone detect pins can change to HPDETR or HPDETL.
>
> Signed-off-by: Inha Song <ideal.song@xxxxxxxxxxx>
> ---
>
> +static int arizona_extcon_of_get_pdata(struct arizona *arizona)
> +{
> + struct arizona_pdata *pdata = &arizona->pdata;
> + unsigned int val;

I would rather this is "unsigned int val =
ARIZONA_ACCDET_MODE_HPL;".

> +
> + of_property_read_u32(arizona->dev->of_node, "wlf,hpdet-channel", &val);

Because this won't fill val if the DT entry isn't present.

> + switch (val) {

Which means we hit this with val uninitialised.

> + case ARIZONA_ACCDET_MODE_HPL:
> + case ARIZONA_ACCDET_MODE_HPR:

So we may select either channel at random.

> + pdata->hpdet_channel = val;
> + break;
> + default:
> + dev_err(arizona->dev,
> + "Wrong wlf,hpdet-channel DT value %d\n", val);

Or most likely just print an error but the DT being missing
shouldn't really be an error it is an optional entry.

> + pdata->hpdet_channel = ARIZONA_ACCDET_MODE_HPL;
> + }
> +
> + return 0;
> +}

Thanks,
Charles
--
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/