Received: by 2002:a25:2c96:0:0:0:0:0 with SMTP id s144csp264688ybs; Sun, 24 May 2020 04:46:37 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw1vtCt5JeHOnGFmbXknSXMPIR4pVCNtGeyIqJXzp2eHCEmguj9LRDjGeu6ddFe5uw+BRkw X-Received: by 2002:aa7:d999:: with SMTP id u25mr10855542eds.339.1590320797219; Sun, 24 May 2020 04:46:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1590320797; cv=none; d=google.com; s=arc-20160816; b=rKCLsEBn44uLmuW3nB1hEccq+1PviuxRr59eULD554uGJa3AzN4pSnvmxkeEHGu+Af ii6ZbZGgMQU1CWbv0Aoi8kjRkOZocXHFWjAjJFIXOAi5lGaIkgT26og6OgfR12j287Tr i8Lmb6mtlyj8ryO9K+MifuY/dfN6OFiqdqAQwIJbEkiD5modTlQXA0366//JPUDm4lpI i3IRG/xy6eYDEov2IhgfiaOoQAPKohwGMyZ+0yYCcwLnFUa9kIkuE9lOrL8j3QhvjQMj Z8BXdtRdG3hdz0j/cbp9N8jDV5Qmh4mawtN0JLjofvuQbIFj1v/mIQE+l4I8O3pZoZMH kKOw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:subject:cc:to:from:date :dkim-signature; bh=HiXKZbBFQP4BK3dCnekSrkBDuM+Xy5qnxDdbNyvFIco=; b=eZqiqQ1acEJV5FQI1YVpVnRt4bJfgS4aGByldqCtGSYjRL6/Nzu2GiFG8FNFm1cTYd kAUJktK3wd8CH+crVHXLSfZOHs2bw2Xgw+4nfAStotdxYCn2bnu24PreIFq9vXyMjisL cx4OFSkxk9o+3hTQmgbO+fATtUo2ylU7XHFr4N4qH8jIeq7ztEfBFUx5E2CQNMfC2eVz RAaobO4IsP7LtYdXJqkF3gumgYA99Bys6Z9+sylD5JK9/tiTVCvvGVYCLE/Za6fiRWp1 7HB+v1E2M4wGcsZa+WKzY4NHQaZQKepLZxvwNeKhbKHkmh57+0JyGQzniMzoUizj6zRi wweA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=YS4MpGLg; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id l7si7548508edv.49.2020.05.24.04.46.14; Sun, 24 May 2020 04:46:37 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=YS4MpGLg; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387572AbgEXLoB (ORCPT + 99 others); Sun, 24 May 2020 07:44:01 -0400 Received: from mail.kernel.org ([198.145.29.99]:54548 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726734AbgEXLoA (ORCPT ); Sun, 24 May 2020 07:44:00 -0400 Received: from archlinux (cpc149474-cmbg20-2-0-cust94.5-4.cable.virginm.net [82.4.196.95]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id AB2D32075F; Sun, 24 May 2020 11:43:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1590320640; bh=o6SJToLu6ZDHu0wWMseTOeGzHfMogzrCv91Eoa763Fk=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=YS4MpGLgOLIA+60LS/zs1BAG3NBBNsopgHBdArXjgNa+lq30E+6bEsbVVIEsXhD7h Jgl7hkEBfMnwmZ0ElCV29eniU2a4cvhoP4oyvXXKY8Hl3FpzI7Z250jc+Fk6aALKvX uEXIwvdQYNmA6Cx4clOyQvm2TD3Qhfxkv76GaLys= Date: Sun, 24 May 2020 12:43:55 +0100 From: Jonathan Cameron To: Jonathan Albrieux Cc: linux-kernel@vger.kernel.org, ~postmarketos/upstreaming@lists.sr.ht, daniel.baluta@nxp.com, devicetree@vger.kernel.org (open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS), Hartmut Knaack , Lars-Peter Clausen , linux-iio@vger.kernel.org (open list:IIO SUBSYSTEM AND DRIVERS), Peter Meerwald-Stadler Subject: Re: [PATCH v3 5/5] iio: imu: bmi160: added mount-matrix support Message-ID: <20200524124355.526af9d9@archlinux> In-Reply-To: <20200520194656.16218-6-jonathan.albrieux@gmail.com> References: <20200520194656.16218-1-jonathan.albrieux@gmail.com> <20200520194656.16218-6-jonathan.albrieux@gmail.com> X-Mailer: Claws Mail 3.17.5 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 20 May 2020 21:46:44 +0200 Jonathan Albrieux wrote: > Add mount-matrix binding support. As chip could have different orientations > a mount matrix support is needed to correctly translate these differences. > > Signed-off-by: Jonathan Albrieux Other than those bits for the binding doc, the rest of the series looks good to me. Given timing this will only go into mainline in the next cycle now anyway so we have plenty of time to tidy up the corners. Thanks, Jonathan > --- > drivers/iio/imu/bmi160/bmi160.h | 1 + > drivers/iio/imu/bmi160/bmi160_core.c | 20 ++++++++++++++++++++ > 2 files changed, 21 insertions(+) > > diff --git a/drivers/iio/imu/bmi160/bmi160.h b/drivers/iio/imu/bmi160/bmi160.h > index 923c3b274fde..a82e040bd109 100644 > --- a/drivers/iio/imu/bmi160/bmi160.h > +++ b/drivers/iio/imu/bmi160/bmi160.h > @@ -9,6 +9,7 @@ struct bmi160_data { > struct regmap *regmap; > struct iio_trigger *trig; > struct regulator_bulk_data supplies[2]; > + struct iio_mount_matrix orientation; > }; > > extern const struct regmap_config bmi160_regmap_config; > diff --git a/drivers/iio/imu/bmi160/bmi160_core.c b/drivers/iio/imu/bmi160/bmi160_core.c > index d3316ca02fbd..26d586daee26 100644 > --- a/drivers/iio/imu/bmi160/bmi160_core.c > +++ b/drivers/iio/imu/bmi160/bmi160_core.c > @@ -110,6 +110,7 @@ > .storagebits = 16, \ > .endianness = IIO_LE, \ > }, \ > + .ext_info = bmi160_ext_info, \ > } > > /* scan indexes follow DATA register order */ > @@ -265,6 +266,20 @@ static const struct bmi160_odr_item bmi160_odr_table[] = { > }, > }; > > +static const struct iio_mount_matrix * > +bmi160_get_mount_matrix(const struct iio_dev *indio_dev, > + const struct iio_chan_spec *chan) > +{ > + struct bmi160_data *data = iio_priv(indio_dev); > + > + return &data->orientation; > +} > + > +static const struct iio_chan_spec_ext_info bmi160_ext_info[] = { > + IIO_MOUNT_MATRIX(IIO_SHARED_BY_DIR, bmi160_get_mount_matrix), > + { } > +}; > + > static const struct iio_chan_spec bmi160_channels[] = { > BMI160_CHANNEL(IIO_ACCEL, X, BMI160_SCAN_ACCEL_X), > BMI160_CHANNEL(IIO_ACCEL, Y, BMI160_SCAN_ACCEL_Y), > @@ -839,6 +854,11 @@ int bmi160_core_probe(struct device *dev, struct regmap *regmap, > return ret; > } > > + ret = iio_read_mount_matrix(dev, "mount-matrix", > + &data->orientation); > + if (ret) > + return ret; > + > ret = bmi160_chip_init(data, use_spi); > if (ret) > return ret;