lkml.org 
[lkml]   [2020]   [May]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v2 3/3] iio: magnetometer: ak8975: Add gpio reset support
    On Tue, May 19, 2020 at 08:57:43AM +0200, Jonathan Albrieux wrote:

    Thanks for an update, my comments below.

    > According to AK09911 datasheet, if reset gpio is provided then

    Trailing whitespace.

    > deassert reset on ak8975_power_on and assert reset on ak8975_power_off.
    >
    > Without reset's deassertion during ak8975_power_on, driver's probe fails on
    > ak8975_who_i_am while checking for device identity for AK09911 chip
    >
    > AK09911 has an active low reset gpio to handle register's reset.
    > AK09911 datasheed says that, if not used, reset pin should be connected
    > to VID. This patch emulates this situation

    Please, put periods at the end of the phrases.

    > /*
    > - * According to the datasheet the power supply rise time i 200us
    > + * According to the datasheet the power supply rise time is 200us
    > * and the minimum wait time before mode setting is 100us, in
    > - * total 300 us. Add some margin and say minimum 500us here.
    > + * total 300us. Add some margin and say minimum 500us here.
    > */

    This is not related change (perhaps, you may do in separate patch), but I'm not
    against it. Up to maintainer.

    > + /*
    > + * According to AK09911 datasheet, if reset gpio is provided then
    > + * deassert reset on ak8975_power_on and assert reset on
    > + * ak8975_power_off.

    We try to refer to the code accordingly to the kernel doc recommendations (even
    for non-kdoc comments). So, here, 'function' as 'function()' (without quotes)
    and so on.

    > + */
    > + reset_gpiod = devm_gpiod_get_optional(&client->dev,
    > + "reset", GPIOD_OUT_HIGH);
    > + if (IS_ERR(reset_gpiod))
    > + return PTR_ERR(reset_gpiod);
    > +
    > /* Register with IIO */
    > indio_dev = devm_iio_device_alloc(&client->dev, sizeof(*data));
    > if (indio_dev == NULL)
    > @@ -866,6 +883,7 @@ static int ak8975_probe(struct i2c_client *client,
    >
    > data->client = client;
    > data->eoc_gpiod = eoc_gpiod;
    > + data->reset_gpiod = reset_gpiod;
    > data->eoc_irq = 0;
    >
    > err = iio_read_mount_matrix(&client->dev, "mount-matrix", &data->orientation);
    > --
    > 2.17.1
    >

    --
    With Best Regards,
    Andy Shevchenko


    \
     
     \ /
      Last update: 2020-05-19 11:21    [W:4.900 / U:0.032 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site