lkml.org 
[lkml]   [2019]   [Jul]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.2 095/215] mfd: cros_ec: Register cros_ec_lid_angle driver when presented
    Date
    [ Upstream commit 1bb407f17c5316888c3c446e26cb2bb78943f236 ]

    Register driver when EC indicates has precise lid angle calculation code
    running.
    Fix incorrect extra resource allocation in cros_ec_sensors_register().

    Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
    Signed-off-by: Lee Jones <lee.jones@linaro.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/mfd/cros_ec_dev.c | 13 ++++++++++---
    1 file changed, 10 insertions(+), 3 deletions(-)

    diff --git a/drivers/mfd/cros_ec_dev.c b/drivers/mfd/cros_ec_dev.c
    index a5391f96eafd..607383b67cf1 100644
    --- a/drivers/mfd/cros_ec_dev.c
    +++ b/drivers/mfd/cros_ec_dev.c
    @@ -285,13 +285,15 @@ static void cros_ec_sensors_register(struct cros_ec_dev *ec)

    resp = (struct ec_response_motion_sense *)msg->data;
    sensor_num = resp->dump.sensor_count;
    - /* Allocate 1 extra sensors in FIFO are needed */
    - sensor_cells = kcalloc(sensor_num + 1, sizeof(struct mfd_cell),
    + /*
    + * Allocate 2 extra sensors if lid angle sensor and/or FIFO are needed.
    + */
    + sensor_cells = kcalloc(sensor_num + 2, sizeof(struct mfd_cell),
    GFP_KERNEL);
    if (sensor_cells == NULL)
    goto error;

    - sensor_platforms = kcalloc(sensor_num + 1,
    + sensor_platforms = kcalloc(sensor_num,
    sizeof(struct cros_ec_sensor_platform),
    GFP_KERNEL);
    if (sensor_platforms == NULL)
    @@ -351,6 +353,11 @@ static void cros_ec_sensors_register(struct cros_ec_dev *ec)
    sensor_cells[id].name = "cros-ec-ring";
    id++;
    }
    + if (cros_ec_check_features(ec,
    + EC_FEATURE_REFINED_TABLET_MODE_HYSTERESIS)) {
    + sensor_cells[id].name = "cros-ec-lid-angle";
    + id++;
    + }

    ret = mfd_add_devices(ec->dev, 0, sensor_cells, id,
    NULL, 0, NULL);
    --
    2.20.1


    \
     
     \ /
      Last update: 2019-07-29 22:03    [W:4.216 / U:0.024 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site