Message ID | 20240216223654.1312880-1-sre@kernel.org |
---|---|
Headers |
Return-Path: <linux-kernel+bounces-69426-ouuuleilei=gmail.com@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:693c:2685:b0:108:e6aa:91d0 with SMTP id mn5csp29656dyc; Fri, 16 Feb 2024 14:39:24 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCV/rOFCZhVaEXYzv9OXkOV/kIKuyv+7KITz6EEeYh/CPO55ixTXmA1TXdAqLam9KgA7Gxd3Z69+HhtP4ikVQYPawO78Kw== X-Google-Smtp-Source: AGHT+IG0yazdhj2YvAF9dov4Z1o9zFSSmANqpjeLNUb09JzzkbcZvUqDsWeaZB4i63XXbDqaKMic X-Received: by 2002:aa7:9992:0:b0:6e1:1460:1840 with SMTP id k18-20020aa79992000000b006e114601840mr5226950pfh.29.1708123164730; Fri, 16 Feb 2024 14:39:24 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1708123164; cv=pass; d=google.com; s=arc-20160816; b=GP5OJi86L++fN7JzNnbM/Bsod1O6UiI3jA6Yz4iu0HNhbxUcRtDbmU+1iUgc5Lwuk7 JrabAk80kPY40nNWuEEuRNee0qeveOB0ukTZ0th3XawX9fqQhZdgrIAFgy54TSk7uCfy hdi19uma/vKyqkuy9WIp+X5+/w4uhgHcAIJ0u9pIK66Uqrs4dfA2t6mnb4bLxkqo2Q/6 409Dy10sIyV14HmDh0vCjxqLE+9OJZOy9oSzV18GZz7gtXr+b861tG/wVZymvo3qWVUB hIfD5JEN5NvuSSL/LMAWgp8FDH3HeDaa/wQPMiy66B1wc6yNaPkzr9YfmpB/ic0ExI+P Xy2w== 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:message-id:date:subject:cc:to :from:dkim-signature; bh=iN4XbBTC7quIki2kO6bczFZAWuJ84syG7+cBYQiw9DM=; fh=DAT80St2hE0eweY9xiRX4L/Hd0UIzwMCc1Ap5Evm+ow=; b=FI44yoPJ8/c/xhY5XqMe7gJoQGLWo4S/8BFKHFkFMCJfn31UEf7pwG/O0mcxAvscLn kyB/1zXCUF+Z4ySGUHRHPNuGT5l8hlTuuwJEDlXhBPn1FQ+3LT3wue+RsQq9hYI/iL6/ Luohjie8CeRByP7eNwaqobdJA5DeVyqj1avsq3KQeZ4uwYKIBNAtnwPYqjqsmzXgUSWC 3uPcNx9IfDoK7mcLVAaM8RS8j+uZMhKXEtjdjwrhuqUqghqxLxHgLiEQ9mNrzvknGGix cSAGhgjo9xPWXvRCjeTaR5MDTA/zSyz1jP0aUspAeO2LuxhsVEojnp++p/lF91vOA4LJ 1f1Q==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=ceGIhwRt; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-69426-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-69426-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [2604:1380:45e3:2400::1]) by mx.google.com with ESMTPS id z16-20020a056a001d9000b006e237c7232esi234310pfw.68.2024.02.16.14.39.24 for <ouuuleilei@gmail.com> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 16 Feb 2024 14:39:24 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-69426-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) client-ip=2604:1380:45e3:2400::1; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=ceGIhwRt; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-69426-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-69426-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org 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 sv.mirrors.kernel.org (Postfix) with ESMTPS id 86565281F3D for <ouuuleilei@gmail.com>; Fri, 16 Feb 2024 22:39:24 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 1AD0E14D42B; Fri, 16 Feb 2024 22:37:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ceGIhwRt" Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 DF1DD14831E; Fri, 16 Feb 2024 22:36:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708123020; cv=none; b=AJOAKTZDnBOJ1/RA2FcgBGwL6MneRDAQcK24Mes+2BZAzRhGffDSDjucwxkkfUOjxzp1KRxoIpP0oIyx2deSJOR0/g+ii7w+nXJeByMeIpQEnUo4wkZlKbV7bXinruU6wDgA3aMCh7hxkV0xicX8EWAfKXLcTjqEIXuQzxwPxaM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708123020; c=relaxed/simple; bh=eJIaDZ7rjnMFktwjotvFLcESURdj1UH+fKntueNKal8=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=T/J6uQBJVG/+9z/5xQIZyz/YCVthOV2ieHVBUxU3CD14zX0/YVuYKbuUPScym7VrU6F1v/Y1zGYVhF+Rk8qMrOxvkxkPOT5BIIbAGF3Tm15X1mhDFVV7ng/5CZAtGURVtPJiJ3f/RDvpe9JcFBNZOccgkvRKO3J6fSra5c7m3IE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ceGIhwRt; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3EF0DC43390; Fri, 16 Feb 2024 22:36:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708123019; bh=eJIaDZ7rjnMFktwjotvFLcESURdj1UH+fKntueNKal8=; h=From:To:Cc:Subject:Date:From; b=ceGIhwRtCOjKE6/hp2iveWbcgQxDHInN0jP5U8DEPYIirqzCCKfx0/OSbieNF3NgV HVny9G3RyBYZry2mSh6uBbkk9f+fZm1L7kkCWSAEFpmmRf6BBeZm4mMgc1n1Hlu7cg Z2MX1sdkHnKw/y63QFZNxSupxOtAxCAjS0xd3dWTVfPRV+XWxJ1TrW4F4EtkNOWCBa 7eJTCEuDqtFjnMFuydsP1jBq5FVkw45wfw+n9oUjQXxJg/SL51YfuRXTqBta21xzHT UsYkE630OnwHIGYvMHVXA0Typ3HqIqkiE2b/whKNCib4Tn4jZ7NHbNFpgodYcfhCDw XFNQUY5I3M/oQ== Received: by mercury (Postfix, from userid 1000) id 890981061C38; Fri, 16 Feb 2024 23:36:56 +0100 (CET) From: Sebastian Reichel <sre@kernel.org> To: Sebastian Reichel <sre@kernel.org>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>, Conor Dooley <conor+dt@kernel.org>, Shawn Guo <shawnguo@kernel.org>, Sascha Hauer <s.hauer@pengutronix.de>, Fabio Estevam <festevam@gmail.com>, Pengutronix Kernel Team <kernel@pengutronix.de>, NXP Linux Team <linux-imx@nxp.com> Cc: Dong Aisheng <aisheng.dong@nxp.com>, Linus Walleij <linus.walleij@linaro.org>, Dmitry Torokhov <dmitry.torokhov@gmail.com>, Mark Brown <broonie@kernel.org>, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Sebastian Reichel <sebastian.reichel@collabora.com> Subject: [PATCH v3 00/16] UNI-T UTi260B support Date: Fri, 16 Feb 2024 23:34:19 +0100 Message-ID: <20240216223654.1312880-1-sre@kernel.org> X-Mailer: git-send-email 2.43.0 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: 1791096955769475879 X-GMAIL-MSGID: 1791096955769475879 |
Series |
UNI-T UTi260B support
|
|
Message
Sebastian Reichel
Feb. 16, 2024, 10:34 p.m. UTC
From: Sebastian Reichel <sebastian.reichel@collabora.com>
Hi,
This adds adds support for the UNI-T UTi260B thermal camera, which is based
on i.MX6ULL. Patches 1-14 clean up all warnings reported by CHECK_DTBS for
i.MX6ULL (i.e. for an empty board). They are not specific to the UTi260B and
in fact that machine has most of the IP handled by these patches marked as
disabled. Then patches 15+16 introduce the vendor and board compatible DT
bindings. Finally the last patches adds support for the thermal camera itself.
The DT is based on reverse engineered information. More information about
the device can be found in this presentation from Embedded Recipes 2023:
* https://embedded-recipes.org/2023/wp-content/uploads/2023/10/Running-FOSS-on-a-Thermal-Camera-Sebastian-Reichel-compressed.pdf
* https://www.youtube.com/watch?v=uvObsCG-Cqo
I also prepared a branch with these patches (and a minimal kernel config)
and published it here:
https://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-misc.git/log/?h=uti260b-v3
Changes since PATCHv2:
* https://lore.kernel.org/all/20240213010347.1075251-1-sre@kernel.org/
- drop fsl,imx-asrc YAML binding conversion (merged)
- collect a bunch of Reviewed-by/Acked-by tags
- weim DT binding: fix issue with requirements
- xnur-gpio -> xnur-gpios change: Improve patch long description
Changes since PATCHv1:
* https://lore.kernel.org/all/20240210012114.489102-1-sre@kernel.org/
- uni-t,imx6ull-uti260b -> uni-t,uti260b
- add Acked-by for uni-t vendor prefix
- add Acked-by for HDMI audio index fix
- add Acked-by for LCDIF power-domain requirement drop
- anatop DT binding: Fixed indentation in example
- anatop DT binding: Described IRQs
- touchscreen DT binding: change tsc@ to touchscreen@ in example
- touchscreen DT binding: change xnur-gpio to xnur-gpios
- weim DT binding: drop acme,whatever example
- weim DT binding: use flash@ instead of nor@
- weim DT binding: update weim.txt reference in arcx,anybus-controller.txt
- weim DT binding: switch to memory-controller binding
- fsl,imx-asrc DT binding: fix ASoC patch subject prefix
- fsl,imx-asrc DT binding: add constraints
- add new patch fixing xnur-gpio(s) in all i.MX6UL board DT files
- add new patch fixing touchscreen nodename in i.MX6UL SoC DT file
- add new patch fixing weim nodename in all i.MX SoC DT files
- device DTS: use color/functions for the led
- device DTS: increase SPI speed
- device DTS: add comment for SD / eMMC node
Unadressed feedback from PATCHv1:
- anatop phandle vs parent: technically it makes sense to just use the
parent, but this driver is only used by i.MX6. The current code makes
use of the phandle, so we cannot drop it because of backwards
compatibility. So I don't see a point in deprecating this property.
- touchscreen binding: I kept measure-delay-time and pre-charge-time
values in hex, since that is being used everywhere and the unit
is unknown. The values are directly written into HW registers and
the i.MX6UL TRM does not provide any hints about the unit. I do not
have an i.MX6UL device with a touchsreen, so I cannot test either.
- regulator name in DT: I did not rename the regulators to just
"regulator", since the nodename must be unique.
Greetings,
-- Sebastian
Sebastian Reichel (16):
dt-bindings: pinctrl: fsl,imx6ul-pinctrl: convert to YAML
dt-bindings: bus: imx-weim: convert to YAML
dt-bindings: input: touchscreen: fsl,imx6ul-tsc convert to YAML
dt-bindings: soc: imx: fsl,imx-anatop: add binding
dt-bindings: soc: imx: fsl,imx-iomuxc-gpr: add imx6
dt-bindings: lcdif: Do not require power-domains for i.MX6ULL
dt-bindings: fsl-imx-sdma: fix HDMI audio index
ARM: dts: imx6ull: fix pinctrl node name
ARM: dts: imx6ul: Remove fsl,anatop from usbotg1
ARM: dts: imx6ul: add missing #thermal-sensor-cells
ARM: dts: nxp: imx6ul: xnur-gpio -> xnur-gpios
ARM: dts: nxp: imx6ul: fix touchscreen node name
ARM: dts: nxp: imx: fix weim node name
dt-bindings: vendor-prefixes: add UNI-T
dt-bindings: arm: add UNI-T UTi260B
ARM: dts: imx6ull-uti260b: Add board
.../devicetree/bindings/arm/fsl.yaml | 1 +
.../devicetree/bindings/bus/imx-weim.txt | 117 ----
.../bindings/display/fsl,lcdif.yaml | 8 +-
.../devicetree/bindings/dma/fsl,imx-sdma.yaml | 3 +-
.../input/touchscreen/fsl,imx6ul-tsc.yaml | 97 +++
.../bindings/input/touchscreen/imx6ul_tsc.txt | 38 --
.../fsl/fsl,imx-weim-peripherals.yaml | 31 +
.../memory-controllers/fsl/fsl,imx-weim.yaml | 203 +++++++
.../mc-peripheral-props.yaml | 1 +
.../bindings/pinctrl/fsl,imx6ul-pinctrl.txt | 37 --
.../bindings/pinctrl/fsl,imx6ul-pinctrl.yaml | 116 ++++
.../bindings/soc/imx/fsl,imx-anatop.yaml | 128 ++++
.../bindings/soc/imx/fsl,imx-iomuxc-gpr.yaml | 18 +-
.../devicetree/bindings/vendor-prefixes.yaml | 2 +
arch/arm/boot/dts/nxp/imx/Makefile | 1 +
arch/arm/boot/dts/nxp/imx/imx1.dtsi | 2 +-
arch/arm/boot/dts/nxp/imx/imx27.dtsi | 2 +-
arch/arm/boot/dts/nxp/imx/imx31.dtsi | 2 +-
arch/arm/boot/dts/nxp/imx/imx35.dtsi | 2 +-
arch/arm/boot/dts/nxp/imx/imx51.dtsi | 2 +-
arch/arm/boot/dts/nxp/imx/imx6qdl.dtsi | 2 +-
arch/arm/boot/dts/nxp/imx/imx6sl.dtsi | 2 +-
arch/arm/boot/dts/nxp/imx/imx6sx.dtsi | 2 +-
.../boot/dts/nxp/imx/imx6ul-14x14-evk.dtsi | 2 +-
arch/arm/boot/dts/nxp/imx/imx6ul-geam.dts | 2 +-
.../nxp/imx/imx6ul-imx6ull-opos6uldev.dtsi | 2 +-
arch/arm/boot/dts/nxp/imx/imx6ul.dtsi | 6 +-
.../boot/dts/nxp/imx/imx6ull-dhcom-som.dtsi | 2 +-
arch/arm/boot/dts/nxp/imx/imx6ull-uti260b.dts | 572 ++++++++++++++++++
arch/arm/boot/dts/nxp/imx/imx6ull.dtsi | 2 +-
.../fieldbus/arcx,anybus-controller.txt | 2 +-
31 files changed, 1195 insertions(+), 212 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/bus/imx-weim.txt
create mode 100644 Documentation/devicetree/bindings/input/touchscreen/fsl,imx6ul-tsc.yaml
delete mode 100644 Documentation/devicetree/bindings/input/touchscreen/imx6ul_tsc.txt
create mode 100644 Documentation/devicetree/bindings/memory-controllers/fsl/fsl,imx-weim-peripherals.yaml
create mode 100644 Documentation/devicetree/bindings/memory-controllers/fsl/fsl,imx-weim.yaml
delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx6ul-pinctrl.txt
create mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx6ul-pinctrl.yaml
create mode 100644 Documentation/devicetree/bindings/soc/imx/fsl,imx-anatop.yaml
create mode 100644 arch/arm/boot/dts/nxp/imx/imx6ull-uti260b.dts