Received: by 2002:a05:7412:d8a:b0:e2:908c:2ebd with SMTP id b10csp166695rdg; Thu, 12 Oct 2023 01:58:19 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGOTvA87bw1W8cml9LcuvPywUDNby+r8pHrw0IzkAsAU/y8+NzPnD4PzW/jZ89RJoPIEa7j X-Received: by 2002:a05:6a21:47c7:b0:172:eda5:36ea with SMTP id as7-20020a056a2147c700b00172eda536eamr5807228pzc.7.1697101099251; Thu, 12 Oct 2023 01:58:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1697101099; cv=none; d=google.com; s=arc-20160816; b=pri2FsHfrrSXBCHfpK1GyxbE2aM3oa8neTLAhmnhI7p5aKzvFmvdiRb7XezKnQOM+D 4JIc3IWxUFCFbig7Cnrcp5E3SbbY63NxDTHSFMfKNaloeLxRq22KR8A+cqHEHfrrzlF/ pr28mnEFdLwFEavHEreAK9xamNZMWj0iikRqJ0uKFeB9kqOXrGwxiHtEgZUtPYwdcRaN 5casi8tROX4gwU29FkFlaQMpgTHL7QDNEK8+dPB/TVxBu50/RWbMIgAgcRV3hQEuQNgp k5zqzf9XFVt0qQ3dRrh/5lE4XiODg29Ph2SOh8lp3cwJTrhcDCh/ztpDFVDe59mgKgae xm4Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=stIMuFGSGT3Yz1fYEWDo5wEHiIttSpIcz9uPDVqTXX4=; fh=QrV9MZy0/YrJalD8437vBY0BvOZFF8W0iYTXWGcYwlo=; b=c+ua65aAdTnZc/QW4eB/cp/IrQl2SzGMJ33VWEjX77zWmvzYNkc6rWg4yeuB8euxTZ j8IiwmIEF0yZUL8EqvEIfflQ7lfKodMlxabQFPUAZTVO52iv4XAu5LzDRJ50PfB7TPiZ Ln1Wcix/7UQrUlsMFyCDb4zEE/oGuYx5EPe8RPmXrVs6gUAv0pKvkgzO0zNWcEeb/rb4 vXfz3ALpCuFmcClbES6D+ntGIWNoJgi24GTYulf8b/8suGo5U9rvrTPwuP4QR/L9QlPJ arXIh3N72mJsvse5rx9W7KQoVh386eEnKRV0vmdwZySAdGIZLoXpWIyIaXh9LGnSD+aj 0iOg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ucw.cz header.s=gen1 header.b=GOGfnOC9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=ucw.cz Return-Path: Received: from morse.vger.email (morse.vger.email. [23.128.96.31]) by mx.google.com with ESMTPS id b5-20020a170903228500b001c57c952622si209981plh.446.2023.10.12.01.58.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Oct 2023 01:58:19 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 as permitted sender) client-ip=23.128.96.31; Authentication-Results: mx.google.com; dkim=pass header.i=@ucw.cz header.s=gen1 header.b=GOGfnOC9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=ucw.cz Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by morse.vger.email (Postfix) with ESMTP id 3C2078095D85; Thu, 12 Oct 2023 01:58:17 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at morse.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234842AbjJLI6H (ORCPT + 99 others); Thu, 12 Oct 2023 04:58:07 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35444 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235318AbjJLI6G (ORCPT ); Thu, 12 Oct 2023 04:58:06 -0400 Received: from jabberwock.ucw.cz (jabberwock.ucw.cz [46.255.230.98]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 08FFB91; Thu, 12 Oct 2023 01:58:03 -0700 (PDT) Received: by jabberwock.ucw.cz (Postfix, from userid 1017) id 5C2B01C0050; Thu, 12 Oct 2023 10:58:02 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ucw.cz; s=gen1; t=1697101082; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=stIMuFGSGT3Yz1fYEWDo5wEHiIttSpIcz9uPDVqTXX4=; b=GOGfnOC9apeRfgMYelDNmaCvcGWcURzVkjm4l4S6nVTcKTfyF5EiWU6yaaaTMBoQwTrYVj 8E+2UKHCL+H85SktX/4GRrKz0gJbpqZE5PTrwJOdsmHNQvmxwMH8E0ML7ii2JUutk3Skm6 coPGet32YPDoW8td7Jk3kVUbNM31iTk= Date: Thu, 12 Oct 2023 10:58:01 +0200 From: Pavel Machek To: Werner Sembach Cc: Lee Jones , linux-kernel@vger.kernel.org, linux-leds@vger.kernel.org Subject: Re: [PATCH] leds: rgb: Implement per-key keyboard backlight for several TUXEDO devices Message-ID: References: <20231011190017.1230898-1-wse@tuxedocomputers.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="V6zkJUxOqwHngDD1" Content-Disposition: inline In-Reply-To: <20231011190017.1230898-1-wse@tuxedocomputers.com> X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on morse.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (morse.vger.email [0.0.0.0]); Thu, 12 Oct 2023 01:58:17 -0700 (PDT) --V6zkJUxOqwHngDD1 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hi! > From: Christoffer Sandberg >=20 > Implement per-key keyboard backlight in the leds sysfs interface for > several TUXEDO devices using the ite8291 controller. >=20 > There are however some known short comings: > - The sysfs leds interface does only allow to write one key at a time. The > controller however can only update row wise or the whole keyboard at once > (whole keyboard update is currently not implemented). This means that even > when you want to updated a whole row, the whole row is actually updated > once for each key. So you actually write up to 18x as much as would be > required. > - When you want to update the brightness of the whole keyboard you have to > write 126 sysfs entries, which inherently is somewhat slow, especially wh= en > using a slider that is live updating the brightness. > - While the controller manages up to 126 leds, not all are actually > populated. However the unused are not grouped at the end but also in > between. To not have dead sysfs entries, this would require manual testing > for each implemented device to see which leds are used and some kind of > bitmap in the driver to sort out the unconnected ones. > - It is not communicated to userspace which led entry controls which key > exactly Sooner or later, we'll need to support these keyboards. But this has way too many shortcomings (and we'd be stuck with the interface forever). These days, displays with weird shapes are common. Like rounded corners and holes in them. Perhaps this should be better modelled as a weird display? Best regards, Pavel --=20 People of Russia, stop Putin before his war on Ukraine escalates. --V6zkJUxOqwHngDD1 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iF0EABECAB0WIQRPfPO7r0eAhk010v0w5/Bqldv68gUCZSe1GQAKCRAw5/Bqldv6 8iNMAJ9m3A5f5EFMcFNJM5Bnpc+qVPGnAwCgiIGFr63rqP803FMGSrhyOtznJ+E= =o063 -----END PGP SIGNATURE----- --V6zkJUxOqwHngDD1--