Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp4473852ybl; Mon, 13 Jan 2020 14:29:20 -0800 (PST) X-Google-Smtp-Source: APXvYqx6qlnvu8GwUiFUxuLjd7Kojr/JWxN5sjU1IIxUdDWaThqIyBtNftHg/znGMqAZcTxU/s/Q X-Received: by 2002:a9d:62c2:: with SMTP id z2mr15318344otk.309.1578954560442; Mon, 13 Jan 2020 14:29:20 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1578954560; cv=none; d=google.com; s=arc-20160816; b=J7le33C3bfeZq3mObSiW1OMLTOVcoYExzuCLtrhboIDasWUtwkHsybtyyB9sWQmJXD 40I8MRvEHbUdcIy5aAbeKhnVOkMmc1dcKE0izz7KkqNXumHpEstbOlMlwyti0uh2QKLA 5ggmk0JbKhy8qdrgyCMfdbmmfbTxj5aO91dlYO5BJSjxyQqwuvAEVK7O6oOHpzEGr5as b7xwsJMAjIZfFteHob1nj8OFcFBJ29xvea9THmbSw1gi2mbwS9rn386OxCxj2E2gGgwI CALDQJgGbvrPUvv1L913QREY0p9PBuiqtXxP5kEEPda6XIXeYwAxHNnWtWTVIK84Xs34 XlBw== 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 :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject; bh=5RDDWFTEqrOm4Ee8dwTf5jzP7cG1FUrZJ26Kh7PA670=; b=vy0cJimD68OVcwXmeKt17l6dfxKEF3HD6YOmbpemphxDchmcpZJCGVdrWf10KAFnuz S9Km5ys2+kvDfbxuPit2F+l94kaxts69j8XvF4u3sF591b1ZL+AcV0rreSFHWlyrDFIN G2mx9i1Xlmlffdu8VKLvAFqiIXA2KoZMbEP9GPQ+w9/VVU68NWeVJc1i7IfTqqLr/W8O w403QlYgWCbEfbCT511xTA25opmUA3/Nbn4cWxU7ORXnR8L6qu3ptDveyIekwJp1BEJ+ 5h6mqg/I1/OxqBzOo4YR3g0UMAtfpiINOYPKEeLI6dQJcYZG2R6ruQ5A8U9hjLm++cOJ mMGQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id g14si7423241otl.258.2020.01.13.14.29.06; Mon, 13 Jan 2020 14:29:20 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728841AbgAMVxa (ORCPT + 99 others); Mon, 13 Jan 2020 16:53:30 -0500 Received: from www381.your-server.de ([78.46.137.84]:55298 "EHLO www381.your-server.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728813AbgAMVxa (ORCPT ); Mon, 13 Jan 2020 16:53:30 -0500 X-Greylist: delayed 1799 seconds by postgrey-1.27 at vger.kernel.org; Mon, 13 Jan 2020 16:53:29 EST Received: from sslproxy03.your-server.de ([88.198.220.132]) by www381.your-server.de with esmtpsa (TLSv1.2:DHE-RSA-AES256-GCM-SHA384:256) (Exim 4.89_1) (envelope-from ) id 1ir6mD-0002hu-Mv; Mon, 13 Jan 2020 21:57:33 +0100 Received: from [93.104.104.184] (helo=[192.168.178.20]) by sslproxy03.your-server.de with esmtpsa (TLSv1.2:ECDHE-RSA-CHACHA20-POLY1305:256) (Exim 4.92) (envelope-from ) id 1ir6mD-000VBg-Bg; Mon, 13 Jan 2020 21:57:33 +0100 Subject: Re: [PATCH 1/3] iio: amplifiers: hmc425a: Add support for HMC425A step attenuator with gpio interface To: Beniamin Bia , jic23@kernel.org Cc: Michael.Hennerich@analog.com, pmeerw@pmeerw.net, linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org, biabeniamin@outlook.com, knaack.h@gmx.de, robh+dt@kernel.org, mark.rutland@arm.com, devicetree@vger.kernel.org, Alexandru Ardelean References: <20200113141555.16117-1-beniamin.bia@analog.com> From: Lars-Peter Clausen Message-ID: <5ae63616-5749-da51-b0b2-85cdcaa948f3@metafoo.de> Date: Mon, 13 Jan 2020 21:57:32 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 MIME-Version: 1.0 In-Reply-To: <20200113141555.16117-1-beniamin.bia@analog.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Authenticated-Sender: lars@metafoo.de X-Virus-Scanned: Clear (ClamAV 0.101.4/25694/Mon Jan 13 14:35:35 2020) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 1/13/20 3:15 PM, Beniamin Bia wrote: [...] > +static int hmc425a_write(struct iio_dev *indio_dev, u32 value) > +{ > + struct hmc425a_state *st = iio_priv(indio_dev); > + int i, *values; > + > + values = kmalloc_array(st->chip_info->num_gpios, sizeof(int), > + GFP_KERNEL); > + if (!values) > + return -ENOMEM; > + > + for (i = 0; i < st->chip_info->num_gpios; i++) > + values[i] = (value >> i) & 1; > + > + gpiod_set_array_value_cansleep(st->gpios->ndescs, st->gpios->desc, > + values); This API got changed a while ago in upstream, see https://github.com/analogdevicesinc/linux/commit/b9762bebc6332b40c33e03dea03e30fa12d9e3ed > + kfree(values); > + return 0; > +} [...] > +static int hmc425a_probe(struct platform_device *pdev) > +{ [...] > + > + platform_set_drvdata(pdev, indio_dev); drvdata is never accessed, no need to set it. > + mutex_init(&st->lock); > + > + indio_dev->dev.parent = &pdev->dev; > + indio_dev->name = np->name; I know ADI likes to do this in its non upstream drivers, but the above is not IIO ABI compliant. The name is supposed to identify the type of the device, which means for this driver should be static "hmc425a". Maybe consider adding a field to the hmc425a_chip_info for this. > + indio_dev->info = &hmc425a_info; > + indio_dev->modes = INDIO_DIRECT_MODE; > + > + return devm_iio_device_register(&pdev->dev, indio_dev); > +}