From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.5 required=3.0 tests=BAYES_00,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_2 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3E096C4361B for ; Sun, 13 Dec 2020 16:51:05 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 0E16623380 for ; Sun, 13 Dec 2020 16:51:05 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389883AbgLMQut (ORCPT ); Sun, 13 Dec 2020 11:50:49 -0500 Received: from mail.kernel.org ([198.145.29.99]:56228 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726442AbgLMQut (ORCPT ); Sun, 13 Dec 2020 11:50:49 -0500 Received: from archlinux (cpc108967-cmbg20-2-0-cust86.5-4.cable.virginm.net [81.101.6.87]) (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 5ECD923121; Sun, 13 Dec 2020 16:50:07 +0000 (UTC) Date: Sun, 13 Dec 2020 16:50:03 +0000 From: Jonathan Cameron To: Guenter Roeck Cc: Alexandru Ardelean , Puranjay Mohan , linux-iio , linux-hwmon@vger.kernel.org Subject: Re: IIO Driver for TMP117 Temperature sensor Message-ID: <20201213165003.5b7c1896@archlinux> In-Reply-To: <729575c9-317c-a2ae-9ded-8732f3cc481d@roeck-us.net> References: <20201213151253.059e541c@archlinux> <729575c9-317c-a2ae-9ded-8732f3cc481d@roeck-us.net> X-Mailer: Claws Mail 3.17.8 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-iio@vger.kernel.org On Sun, 13 Dec 2020 08:08:26 -0800 Guenter Roeck wrote: > On 12/13/20 7:12 AM, Jonathan Cameron wrote: > > On Wed, 9 Dec 2020 11:48:40 -0800 > > Guenter Roeck wrote: > > > >> On 12/9/20 12:11 AM, Alexandru Ardelean wrote: > >>> On Tue, Dec 8, 2020 at 6:10 PM Puranjay Mohan wrote: > >>>> > >>>> I have this TI's TMP117 sensor with me and I was thinking about writing an > >>>> IIO driver for it as a hobby project. Is the IIO subsystem the correct > >>>> place for this driver? if yes, can someone help me get started with this, > >>>> I haven't written an IIO driver before. I have this sensor and also a > >>>> raspberry pi with me for testing. > >>> > >>> This could also fit into drivers/hwmon. > >>> Looking at the HWMON subsystem there are more TMP drivers there > >>> (TMP102/103/108/401/513). > >>> The first 3 seem a bit more similar to TMP117 (in terms of register map). > >>> > >> > >> It would probably be better suited for hwmon (it has limit registers, > >> suggesting a common use as hardware monitoring device). > > It is a curious part. I suspect TI based their design for a medical grade > > digital thermometer chip on an existing hwmon part. > > > > The limit registers are very simple so could be supported by IIO. > > This sits somewhere in the middle of high end thermocouple chips which > > tend to be in IIO and typically lower accuracy / range hwmon parts. > > > > It's in the fuzzy borderline region so I doubt anyone would raise strong > > objections to which subsystem it was in. Guenter has fallen on the > > hwmon side of things and I'm fine with that. > > > > On the other side, it turns out that there is already tmp107 support > in iio, and tmp107 is pretty much the spi equivalent of the same chip. > So it really depends on the use case. If the user wants to use the iio > subsystem, I am fine with it. We just need to remind people that this > implies no or only limited hwmon support. > > [ I really need to spend the time to write a hwmon->iio bridge. > The iio->hwmon bridge is a bit limited - I have not been able to > figure out how to support limit registers (or event values) > and events, and I don't think it is possible. ] So far IIO doesn't have an in kernel consumer interface for events. It shouldn't be that hard to add one though and it has been on the todo list for a very long time. We've discussed it a few times and concluded that there are some short cuts such as sending all events to all consumers and relying on the receiver to do any necessary filtering. It's a bit messy but it makes for much simpler core code. Maybe I'll get bored enough over xmas to look at it... Jonathan > > Guenter > > > Jonathan > > > >> > >>> Let's see what others have to add. > >>> But, all-in-all whatever driver you end up writing, the easiest method > >>> is to copy an existing similar driver and extend it. > >>> Sometimes, a part can be added to an existing driver. > >>> At a quick scan through existing drivers, it doesn't look like TMP117 > >>> is similar to existing drivers, so it may require a new driver > >>> altogether. > >> > >> I don't see an immediate match either, but the tmp102 hwmon driver > >> might be a good start. > >> > >> Guenter > >> > >>> I may have missed something though. > >>> > >>> Thanks > >>> Alex > >>> > >>>> > >>>> -- > >>>> Thanks and Regards > >>>> > >>>> Yours Truly, > >>>> > >>>> Puranjay Mohan > >> > > >