Message ID | 20240212170423.2860895-15-andriy.shevchenko@linux.intel.com |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel+bounces-62056-ouuuleilei=gmail.com@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7300:bc8a:b0:106:860b:bbdd with SMTP id dn10csp127506dyb; Mon, 12 Feb 2024 11:36:52 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCUTGMyA+B2vPInyYizDises5TFEKm3xJ4mHZChuxfUOgHj2EzcqzXYOhoCm7t8vocjuzePwgbZMiw5Vw839wx2do3mwAg== X-Google-Smtp-Source: AGHT+IG9JzRCsr+/KZ8qKGFTzZodIxzCf0uCZJdL6EV2Y6THX0EADruahCB1MEWqSOG7DQT1ftgB X-Received: by 2002:a17:906:dd0:b0:a3c:2c1:5fea with SMTP id p16-20020a1709060dd000b00a3c02c15feamr5251851eji.75.1707766611823; Mon, 12 Feb 2024 11:36:51 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1707766611; cv=pass; d=google.com; s=arc-20160816; b=vvOqFlZnqOVensMfmvAFbt23g2XoegXbZnSt/ettBlZ0AnQyWqBynUkNg9tIfmLKUh kW/dIkERuC/Z2l1zRLdVdHaGSBE0BRZvDqoZGxoMqqQacJIM5hK427wxHIHSX+J9KygT oN9vFrLfPW5A0SINRnb6/gzUBKSav+Dj/nZI79DBgqXDUGBxrsoiCXYxJT9c18zElAqi +aQwUpqsFoCFKYii49+xecFSoYa/g8QaQFgbCI2idf+29YyvUTfts8z/+IQdNHSSDbNC GoY0R6pA1OEGNqtrssSoosUxhzf6wAHGpWLFWInZreMtAJh2OCUECnttE6jF4I1OHREj nAjw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=o8OW6rgAVY/+qAoGwDGdOof0EXHfbB3/JF/gcW3+PdA=; fh=xD9N3/WCpWIQvO9cPndhh5av/AK0csyGaF3cPs5vP+8=; b=arzoQpVgVGyoWwSOLmN7OJBTlSWa+RfG/o510zuHscrkRyZPXfbDh36Yv+blCNyDkm LGcz+qy9d45KRYUAQOqDUeU66LUa4asFN2zfsDcSBuvaqch8V1p+cwuc638oOGM9m+j1 euGsEm6g7k/bHTMhpTzwu6vrIUV11QlccfQSmwazN3SoVh/o5tVW2NPqypthySMbmV1W S5V4rIBCq2e3hqmAg0Woe2wXomfhZdLmIkt4SYN2cDxHpu8i9RJxUQXDKzWrOWap9RX3 /ZFWjT2HQJLe3ZkPRsZT/mMuUYmyvulAMw/66JcRsWlykvzqoj8ULb/syT4lYAfEYHYL RBmg==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=g8rB7BgP; arc=pass (i=1 dkim=pass dkdomain=intel.com dmarc=pass fromdomain=linux.intel.com); spf=pass (google.com: domain of linux-kernel+bounces-62056-ouuuleilei=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-kernel+bounces-62056-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com X-Forwarded-Encrypted: i=2; AJvYcCWZ/XR6sMIJHr4hOENzU0xOE9mlYBOtVF3prQUggGhtadC/ljTvISZ6dDROmA6ASxxNHWy0L3azFzNYuOOL2JdKEAN3pQ== Received: from am.mirrors.kernel.org (am.mirrors.kernel.org. [147.75.80.249]) by mx.google.com with ESMTPS id i15-20020a1709061ccf00b00a3cf224c06fsi69797ejh.284.2024.02.12.11.36.51 for <ouuuleilei@gmail.com> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Feb 2024 11:36:51 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-62056-ouuuleilei=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) client-ip=147.75.80.249; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=g8rB7BgP; arc=pass (i=1 dkim=pass dkdomain=intel.com dmarc=pass fromdomain=linux.intel.com); spf=pass (google.com: domain of linux-kernel+bounces-62056-ouuuleilei=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-kernel+bounces-62056-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by am.mirrors.kernel.org (Postfix) with ESMTPS id 2E0D71F29C4D for <ouuuleilei@gmail.com>; Mon, 12 Feb 2024 17:10:49 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id AD4EE4EB50; Mon, 12 Feb 2024 17:05:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="g8rB7BgP" Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 380C34B5CD; Mon, 12 Feb 2024 17:04:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.10 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707757497; cv=none; b=i0FqaQ0AgzXbTJcqwchvCeC4tI1XglXk/VAKxAkJ4vleiYWo0qaUU/jagFkMuHDp300C4M3dhF5fwzlJVqnB+1YgV8NRmr2nHS8b5E1gTsr26RqkMCdmmzw2ibEknqy97in5lpOCTuYkXaAe3FUm3WgpCiocXFsD0n7KH3MZtTw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707757497; c=relaxed/simple; bh=xwQv8uq+9wANm7Kp3tnfC+qRvpRyTa5vpEt37Og3eA0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=PIX0GcXeT9uDXMJFLZ6r/PWJRukOnAGGOxdnMfFaCWlaqEMyHsJXSwdCPGQT6mmLZp6apuFRVYxUUahWb8J+RgX+k0quVIX8XvbjEH11P7oTGoj44EwobIzXEKN/9iTZ2oa19bh9r+OFib2wffUgKVR+2pgwG8kvsn9EJNbQQ7s= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=g8rB7BgP; arc=none smtp.client-ip=198.175.65.10 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1707757497; x=1739293497; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=xwQv8uq+9wANm7Kp3tnfC+qRvpRyTa5vpEt37Og3eA0=; b=g8rB7BgPxQR73EpAeiCZdrWaSuvI012tT7YtglB5iG3gDMbO4TZgAwu4 37mi5uUCy5F45WWniZZ+XFR58A84Skr/WCpzKs8jnoV+5kC1LwdWbgOqB 5y4L7Sz9nzOUDdOlbknHW6o1HLnOyN4VjYit0Ix6rglaOgXeoXHQGJnh4 mal66F23svj5MeAgMbrJ4IXDWLIzwxqIku196XGHBfBxaUi79wrELmU3Q mSxkpCREH2Y9ku4o3F59Fm8yTVmrgDKMS9mX24T2adQEaHNhiscQxXRbg HSH05FS8rSXVsgIRg9R6x1t9K012YjeUQUUBR5eSAl69G6qK41OJYfm0C A==; X-IronPort-AV: E=McAfee;i="6600,9927,10982"; a="19153240" X-IronPort-AV: E=Sophos;i="6.06,264,1705392000"; d="scan'208";a="19153240" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Feb 2024 09:04:51 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10982"; a="935116830" X-IronPort-AV: E=Sophos;i="6.06,264,1705392000"; d="scan'208";a="935116830" Received: from black.fi.intel.com ([10.237.72.28]) by fmsmga001.fm.intel.com with ESMTP; 12 Feb 2024 09:04:47 -0800 Received: by black.fi.intel.com (Postfix, from userid 1003) id 36C4F2E9; Mon, 12 Feb 2024 19:04:43 +0200 (EET) From: Andy Shevchenko <andriy.shevchenko@linux.intel.com> To: Andy Shevchenko <andriy.shevchenko@linux.intel.com>, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Andy Shevchenko <andy@kernel.org>, Geert Uytterhoeven <geert@linux-m68k.org>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>, Conor Dooley <conor+dt@kernel.org>, Robin van der Gracht <robin@protonic.nl>, Paul Burton <paulburton@kernel.org> Subject: [PATCH v2 14/15] dt-bindings: auxdisplay: Add Maxim MAX6958/6959 Date: Mon, 12 Feb 2024 19:01:47 +0200 Message-ID: <20240212170423.2860895-15-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.43.0.rc1.1.gbec44491f096 In-Reply-To: <20240212170423.2860895-1-andriy.shevchenko@linux.intel.com> References: <20240212170423.2860895-1-andriy.shevchenko@linux.intel.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: <linux-kernel.vger.kernel.org> List-Subscribe: <mailto:linux-kernel+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:linux-kernel+unsubscribe@vger.kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1790718236774308954 X-GMAIL-MSGID: 1790723082449936483 |
Series |
auxdisplay: linedisp: Clean up and add new driver
|
|
Commit Message
Andy Shevchenko
Feb. 12, 2024, 5:01 p.m. UTC
Add initial device tree documentation for Maxim MAX6958/6959.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
.../bindings/auxdisplay/maxim,max6959.yaml | 35 +++++++++++++++++++
1 file changed, 35 insertions(+)
create mode 100644 Documentation/devicetree/bindings/auxdisplay/maxim,max6959.yaml
Comments
On 12/02/2024 18:16, Andy Shevchenko wrote: > On Mon, Feb 12, 2024 at 07:14:53PM +0200, Andy Shevchenko wrote: >> On Mon, Feb 12, 2024 at 07:01:47PM +0200, Andy Shevchenko wrote: >>> Add initial device tree documentation for Maxim MAX6958/6959. >> >> Oh, this is an old version :-( > > Here is a new one: > > From d8c826e06cf9237cd5fc6b2bb0b1cac5aff4fd8a Mon Sep 17 00:00:00 2001 > From: Andy Shevchenko <andriy.shevchenko@linux.intel.com> > Date: Thu, 8 Feb 2024 17:23:38 +0200 > Subject: [PATCH 1/1] dt-bindings: auxdisplay: Add Maxim MAX6958/6959 > > Add initial device tree documentation for Maxim MAX6958/6959. > Anyway you need to send the new version to the list, so the bot will test it. Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Best regards, Krzysztof
Hi Andy, On Mon, Feb 12, 2024 at 6:16 PM Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote: > On Mon, Feb 12, 2024 at 07:14:53PM +0200, Andy Shevchenko wrote: > > On Mon, Feb 12, 2024 at 07:01:47PM +0200, Andy Shevchenko wrote: > > > Add initial device tree documentation for Maxim MAX6958/6959. > > > > Oh, this is an old version :-( > > Here is a new one: > > From d8c826e06cf9237cd5fc6b2bb0b1cac5aff4fd8a Mon Sep 17 00:00:00 2001 > From: Andy Shevchenko <andriy.shevchenko@linux.intel.com> > Date: Thu, 8 Feb 2024 17:23:38 +0200 > Subject: [PATCH 1/1] dt-bindings: auxdisplay: Add Maxim MAX6958/6959 > > Add initial device tree documentation for Maxim MAX6958/6959. > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Thanks for your patch! > --- /dev/null > +++ b/Documentation/devicetree/bindings/auxdisplay/maxim,max6959.yaml > @@ -0,0 +1,44 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/auxdisplay/maxim,max6959.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: MAX6958/6959 7-segment LED display controller with keyscan > + > +maintainers: > + - Andy Shevchenko <andriy.shevchenko@linux.intel.com> > + > +description: > + The Maxim MAX6958/6959 7-segment LED display controller provides > + an I2C interface to up to four 7-segment LED digits. The MAX6959 > + in comparison to MAX6958 has the debounce and interrupt support. IUIC, the primary differentiating factor is that the MAX6959 adds input and GPIO support? Debounce and interrupt support are merely features of input support. > + Type of the chip can be autodetected via specific register read, > + and hence the features may be enabled in the driver at run-time. I don't think you need to read that register, as the users of the features (keypad mapping, interrupts property, ...) also need to be described in DTS (once supported). > + Given hardware is simple and does not provide any additional pins, > + such as reset or enable. Does this matter? I.e. is it important to say this in the bindings? Gr{oetje,eeting}s, Geert
On Thu, Feb 15, 2024 at 11:57:53AM +0100, Geert Uytterhoeven wrote: > On Mon, Feb 12, 2024 at 6:16 PM Andy Shevchenko > <andriy.shevchenko@linux.intel.com> wrote: > > On Mon, Feb 12, 2024 at 07:14:53PM +0200, Andy Shevchenko wrote: .. > > +description: > > + The Maxim MAX6958/6959 7-segment LED display controller provides > > + an I2C interface to up to four 7-segment LED digits. The MAX6959 > > + in comparison to MAX6958 has the debounce and interrupt support. > > IUIC, the primary differentiating factor is that the MAX6959 adds input > and GPIO support? Debounce and interrupt support are merely features > of input support. What should I do here? Rephrase? > > + Type of the chip can be autodetected via specific register read, > > + and hence the features may be enabled in the driver at run-time. > > I don't think you need to read that register, as the users of the > features (keypad mapping, interrupts property, ...) also need to be > described in DTS (once supported). So, the idea that if DT describes those we will check the chip ID and instantiate what is asked? > > + Given hardware is simple and does not provide any additional pins, > > + such as reset or enable. > > Does this matter? I.e. is it important to say this in the bindings? From Krzysztof's review of v1 I understood that it is important to say so people wouldn't wonder if HW has support of that which is not implemented (yet) or simply has no such pins. Personally I would lean towards leaving this in the description. .. Can you propose the full description text how you see it?
On Thu, Feb 15, 2024 at 09:21:10AM +0100, Krzysztof Kozlowski wrote: > On 12/02/2024 18:16, Andy Shevchenko wrote: > > On Mon, Feb 12, 2024 at 07:14:53PM +0200, Andy Shevchenko wrote: .. > > Add initial device tree documentation for Maxim MAX6958/6959. > > Anyway you need to send the new version to the list, so the bot will > test it. Sure, that's the plan after applying first ones, so the only two can be left in v4. I will wait for Geert's comments as well. > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Thank you!
Hi Andy, On Thu, Feb 15, 2024 at 12:17 PM Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote: > On Thu, Feb 15, 2024 at 11:57:53AM +0100, Geert Uytterhoeven wrote: > > On Mon, Feb 12, 2024 at 6:16 PM Andy Shevchenko > > <andriy.shevchenko@linux.intel.com> wrote: > > > On Mon, Feb 12, 2024 at 07:14:53PM +0200, Andy Shevchenko wrote: > > > +description: > > > + The Maxim MAX6958/6959 7-segment LED display controller provides > > > + an I2C interface to up to four 7-segment LED digits. The MAX6959 > > > + in comparison to MAX6958 has the debounce and interrupt support. > > > > IUIC, the primary differentiating factor is that the MAX6959 adds input > > and GPIO support? Debounce and interrupt support are merely features > > of input support. > > What should I do here? Rephrase? The Maxim MAX6958/6959 7-segment LED display controller provides an I2C interface to up to four 7-segment LED digits. The MAX6959 adds input support. > > > + Type of the chip can be autodetected via specific register read, > > > + and hence the features may be enabled in the driver at run-time. > > > > I don't think you need to read that register, as the users of the > > features (keypad mapping, interrupts property, ...) also need to be > > described in DTS (once supported). > > So, the idea that if DT describes those we will check the chip ID and > instantiate what is asked? Even the check for the chip ID is probably not needed. E.g. - If the DTS has an interrupt property, (the future version of) the driver sets up the interrupt. - If the DTS has a linux,keymap, (the future version of) enables the keypad. > > > + Given hardware is simple and does not provide any additional pins, > > > + such as reset or enable. > > > > Does this matter? I.e. is it important to say this in the bindings? > > From Krzysztof's review of v1 I understood that it is important to say so > people wouldn't wonder if HW has support of that which is not implemented > (yet) or simply has no such pins. It might be good to mention that in the commit description. IMHO a list of all possible things that do not exist does not belong in the bindings. Gr{oetje,eeting}s, Geert
diff --git a/Documentation/devicetree/bindings/auxdisplay/maxim,max6959.yaml b/Documentation/devicetree/bindings/auxdisplay/maxim,max6959.yaml new file mode 100644 index 000000000000..49ce26176797 --- /dev/null +++ b/Documentation/devicetree/bindings/auxdisplay/maxim,max6959.yaml @@ -0,0 +1,35 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/auxdisplay/maxim,max6959.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: MAX6958/6959 7-segment LED display controller with keyscan + +maintainers: + - Andy Shevchenko <andriy.shevchenko@linux.intel.com> + +properties: + compatible: + const: maxim,max6959 + + reg: + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false + +examples: + - | + i2c { + #address-cells = <1>; + #size-cells = <0>; + + max6959: max6959@38 { + compatible = "maxim,max6959"; + reg = <0x38>; + }; + };