lkml.org 
[lkml]   [2015]   [Jun]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v3 3/7] extcon: arizona: Add basic microphone detection DT/ACPI bindings
    Date
    This patch adds bindings for the basic microphone detection platform
    data.

    Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
    ---
    drivers/extcon/extcon-arizona.c | 30 ++++++++++++++++++++++++++++++
    include/linux/mfd/arizona/pdata.h | 3 +++
    2 files changed, 33 insertions(+), 0 deletions(-)

    diff --git a/drivers/extcon/extcon-arizona.c b/drivers/extcon/extcon-arizona.c
    index d990495..6826d99 100644
    --- a/drivers/extcon/extcon-arizona.c
    +++ b/drivers/extcon/extcon-arizona.c
    @@ -1115,6 +1115,7 @@ static int arizona_extcon_device_get_pdata(struct arizona *arizona)
    {
    struct arizona_pdata *pdata = &arizona->pdata;
    unsigned int val = ARIZONA_ACCDET_MODE_HPL;
    + unsigned int num_debounces;

    device_property_read_u32(arizona->dev, "wlf,hpdet-channel", &val);
    switch (val) {
    @@ -1128,6 +1129,35 @@ static int arizona_extcon_device_get_pdata(struct arizona *arizona)
    pdata->hpdet_channel = ARIZONA_ACCDET_MODE_HPL;
    }

    + device_property_read_u32(arizona->dev, "wlf,micd-detect-debounce",
    + &pdata->micd_detect_debounce);
    +
    + device_property_read_u32(arizona->dev, "wlf,micd-bias-start-time",
    + &pdata->micd_bias_start_time);
    +
    + device_property_read_u32(arizona->dev, "wlf,micd-rate",
    + &pdata->micd_rate);
    +
    + num_debounces = 0;
    + device_property_read_u32(arizona->dev, "wlf,micd-dbtime",
    + &num_debounces);
    + switch (num_debounces) {
    + case 2:
    + pdata->micd_dbtime = ARIZONA_MICD_DBTIME_TWO_DEBOUNCES;
    + break;
    + case 4:
    + pdata->micd_dbtime = ARIZONA_MICD_DBTIME_FOUR_DEBOUNCES;
    + break;
    + default:
    + break;
    + }
    +
    + device_property_read_u32(arizona->dev, "wlf,micd-timeout",
    + &pdata->micd_timeout);
    +
    + pdata->micd_force_micbias = device_property_read_bool(arizona->dev,
    + "wlf,micd-force-micbias");
    +
    return 0;
    }

    diff --git a/include/linux/mfd/arizona/pdata.h b/include/linux/mfd/arizona/pdata.h
    index aa5c48b..af44081 100644
    --- a/include/linux/mfd/arizona/pdata.h
    +++ b/include/linux/mfd/arizona/pdata.h
    @@ -53,6 +53,9 @@

    #define ARIZONA_MAX_PDM_SPK 2

    +#define ARIZONA_MICD_DBTIME_TWO_DEBOUNCES 0x10000
    +#define ARIZONA_MICD_DBTIME_FOUR_DEBOUNCES 0x0001
    +
    struct regulator_init_data;

    struct arizona_micbias {
    --
    1.7.2.5


    \
     
     \ /
      Last update: 2015-06-19 13:01    [W:6.800 / U:0.040 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site