Message ID | 20230721103350.3684483-1-james.hilliard1@gmail.com |
---|---|
State | Changes Requested, archived |
Headers | show |
Series | [v6,1/3] dt-bindings: arm: fsl: Add VAR-SOM-MX6 SoM with Custom Board | expand |
Context | Check | Description |
---|---|---|
robh/patch-applied | success | |
robh/checkpatch | success | |
robh/dtbs-check | warning | build log |
robh/dt-meta-schema | success |
On 21/07/2023 12:33, James Hilliard wrote: > Add support for Variscite i.MX6Q VAR-SOM-MX6 SoM with Custom Board. > > Acked-by: Conor Dooley <conor.dooley@microchip.com> I asked to drop it, because patch changed significantly, so Conor should re-ack it. Anyway, it's third patch within 3 hours. Give people a chance to review your series. One patchset per day, usually. > Signed-off-by: James Hilliard <james.hilliard1@gmail.com> > --- Best regards, Krzysztof
On 21/07/2023 12:33, James Hilliard wrote: > This patch adds support for the Variscite VAR_SOM-MX6 SoM with : > - i.MX6 Quad or Dual Lite SoC > - 256 – 4096 MB DDR3 > - 4-64 GB eMMC > - 128 – 1024 MB SLC NAND > - Camera Interface > - HDMI+CEC interface > - LVDS / DSI / Parallel RGB interfaces > - Ethernet RGMII interface > - On-SoM Wi-Fi/Bluetooth with WiLink wl183x SDIO Module > - SD/MMC/SDIO interface > - USB Host + USB OTG interface > - I2C interfaces > - SPI interfaces > - PCI-Express 2.0 interface > - on-SoM Audio Codec with HP/Line-In interfaces + DMIC interface > - Digital Audio interface > - S/PDIF interface > > Product website : https://www.variscite.com/product/system-on-module-som/cortex-a9/var-som-mx6-cpu-freescale-imx6/ > > Support is handled with a SoM-centric dtsi exporting the default interfaces > along the default pinmuxing to be enabled by the board dts file. > > This file is based on the one provided by Variscite on their own > kernel, but adapted for mainline. > > Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com> > Signed-off-by: James Hilliard <james.hilliard1@gmail.com> > --- > .../arm/boot/dts/nxp/imx/imx6qdl-var-som.dtsi | 544 ++++++++++++++++++ > 1 file changed, 544 insertions(+) > create mode 100644 arch/arm/boot/dts/nxp/imx/imx6qdl-var-som.dtsi > > diff --git a/arch/arm/boot/dts/nxp/imx/imx6qdl-var-som.dtsi b/arch/arm/boot/dts/nxp/imx/imx6qdl-var-som.dtsi > new file mode 100644 > index 000000000000..a7d2aecd83fe > --- /dev/null > +++ b/arch/arm/boot/dts/nxp/imx/imx6qdl-var-som.dtsi > @@ -0,0 +1,544 @@ > +// SPDX-License-Identifier: GPL-2.0+ > +/* > + * Support for Variscite VAR-SOM-MX6 Module > + * > + * Copyright 2011 Linaro Ltd. > + * Copyright 2012 Freescale Semiconductor, Inc. > + * Copyright (C) 2014-2016 Variscite, Ltd. > + * Author: Donio Ron <ron.d@variscite.com> > + * Copyright 2022 Bootlin > + */ > + > +/dts-v1/; > + > +#include "imx6q.dtsi" > +#include <dt-bindings/clock/imx6qdl-clock.h> > +#include <dt-bindings/gpio/gpio.h> > +#include <dt-bindings/sound/fsl-imx-audmux.h> > + > +/ { > + model = "Variscite VAR-SOM-MX6 module"; > + compatible = "variscite,var-som-imx6q", "fsl,imx6q"; > + > + chosen { > + stdout-path = &uart1; > + }; > + > + memory@10000000 { > + device_type = "memory"; > + reg = <0x10000000 0x40000000>; > + }; > + > + reg_3p3v: regulator-3p3v { > + compatible = "regulator-fixed"; > + regulator-name = "3P3V"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + regulator-always-on; > + }; > + > + reg_3v3_touch: reg-3v3-touch { The prefix is still different than all others. You used "regulator" in other places, but here it is "reg". Keep your code consistent. > + compatible = "regulator-fixed"; > + regulator-name = "touch_3v3_supply"; > + regulator-always-on; Also, missing constraints. Best regards, Krzysztof
On Fri, Jul 21, 2023 at 4:43 AM Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> wrote: > > On 21/07/2023 12:33, James Hilliard wrote: > > This patch adds support for the Variscite VAR_SOM-MX6 SoM with : > > - i.MX6 Quad or Dual Lite SoC > > - 256 – 4096 MB DDR3 > > - 4-64 GB eMMC > > - 128 – 1024 MB SLC NAND > > - Camera Interface > > - HDMI+CEC interface > > - LVDS / DSI / Parallel RGB interfaces > > - Ethernet RGMII interface > > - On-SoM Wi-Fi/Bluetooth with WiLink wl183x SDIO Module > > - SD/MMC/SDIO interface > > - USB Host + USB OTG interface > > - I2C interfaces > > - SPI interfaces > > - PCI-Express 2.0 interface > > - on-SoM Audio Codec with HP/Line-In interfaces + DMIC interface > > - Digital Audio interface > > - S/PDIF interface > > > > Product website : https://www.variscite.com/product/system-on-module-som/cortex-a9/var-som-mx6-cpu-freescale-imx6/ > > > > Support is handled with a SoM-centric dtsi exporting the default interfaces > > along the default pinmuxing to be enabled by the board dts file. > > > > This file is based on the one provided by Variscite on their own > > kernel, but adapted for mainline. > > > > Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com> > > Signed-off-by: James Hilliard <james.hilliard1@gmail.com> > > --- > > .../arm/boot/dts/nxp/imx/imx6qdl-var-som.dtsi | 544 ++++++++++++++++++ > > 1 file changed, 544 insertions(+) > > create mode 100644 arch/arm/boot/dts/nxp/imx/imx6qdl-var-som.dtsi > > > > diff --git a/arch/arm/boot/dts/nxp/imx/imx6qdl-var-som.dtsi b/arch/arm/boot/dts/nxp/imx/imx6qdl-var-som.dtsi > > new file mode 100644 > > index 000000000000..a7d2aecd83fe > > --- /dev/null > > +++ b/arch/arm/boot/dts/nxp/imx/imx6qdl-var-som.dtsi > > @@ -0,0 +1,544 @@ > > +// SPDX-License-Identifier: GPL-2.0+ > > +/* > > + * Support for Variscite VAR-SOM-MX6 Module > > + * > > + * Copyright 2011 Linaro Ltd. > > + * Copyright 2012 Freescale Semiconductor, Inc. > > + * Copyright (C) 2014-2016 Variscite, Ltd. > > + * Author: Donio Ron <ron.d@variscite.com> > > + * Copyright 2022 Bootlin > > + */ > > + > > +/dts-v1/; > > + > > +#include "imx6q.dtsi" > > +#include <dt-bindings/clock/imx6qdl-clock.h> > > +#include <dt-bindings/gpio/gpio.h> > > +#include <dt-bindings/sound/fsl-imx-audmux.h> > > + > > +/ { > > + model = "Variscite VAR-SOM-MX6 module"; > > + compatible = "variscite,var-som-imx6q", "fsl,imx6q"; > > + > > + chosen { > > + stdout-path = &uart1; > > + }; > > + > > + memory@10000000 { > > + device_type = "memory"; > > + reg = <0x10000000 0x40000000>; > > + }; > > + > > + reg_3p3v: regulator-3p3v { > > + compatible = "regulator-fixed"; > > + regulator-name = "3P3V"; > > + regulator-min-microvolt = <3300000>; > > + regulator-max-microvolt = <3300000>; > > + regulator-always-on; > > + }; > > + > > + reg_3v3_touch: reg-3v3-touch { > > The prefix is still different than all others. You used "regulator" in > other places, but here it is "reg". Keep your code consistent. Ok, I'll change it to this when I send my v7: reg_3v3_touch: regulator-3v3-touch > > > + compatible = "regulator-fixed"; > > + regulator-name = "touch_3v3_supply"; > > + regulator-always-on; > > Also, missing constraints. Hmm, what's the correct way to determine the constraint values? I'm guessing they should just be set to this based on the name?: regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; > > > Best regards, > Krzysztof >
On Fri, Jul 21, 2023 at 05:05:51AM -0600, James Hilliard wrote: > On Fri, Jul 21, 2023 at 4:43 AM Krzysztof Kozlowski > <krzysztof.kozlowski@linaro.org> wrote: > > On 21/07/2023 12:33, James Hilliard wrote: > > > + compatible = "regulator-fixed"; > > > + regulator-name = "touch_3v3_supply"; > > > + regulator-always-on; > > > > Also, missing constraints. > > Hmm, what's the correct way to determine the constraint values? You should know/understand the hardware design. Normally when writing a DT file you have the hardware schematics and the relevant datasheets available. > I'm guessing they should just be set to this based on the name?: > regulator-min-microvolt = <3300000>; > regulator-max-microvolt = <3300000>; This looks like a good guess, assuming that the regulator name is correct. Francesco
On Fri, Jul 21, 2023 at 5:41 AM Francesco Dolcini <francesco@dolcini.it> wrote: > > On Fri, Jul 21, 2023 at 05:05:51AM -0600, James Hilliard wrote: > > On Fri, Jul 21, 2023 at 4:43 AM Krzysztof Kozlowski > > <krzysztof.kozlowski@linaro.org> wrote: > > > On 21/07/2023 12:33, James Hilliard wrote: > > > > + compatible = "regulator-fixed"; > > > > + regulator-name = "touch_3v3_supply"; > > > > + regulator-always-on; > > > > > > Also, missing constraints. > > > > Hmm, what's the correct way to determine the constraint values? > > You should know/understand the hardware design. Normally when writing a > DT file you have the hardware schematics and the relevant datasheets > available. I did find some datasheets/schematics, but I'm having trouble finding something which indicates it would be anything other than 3.3v there(although I don't read a lot of schematics in general so I might be missing something obvious): https://www.variscite.com/wp-content/uploads/2017/12/VAR-SOM-MX6_v1-Datasheet.pdf https://www.variscite.com/wp-content/uploads/2017/12/VAR-SOM-MX6_datasheet.pdf https://www.variscite.com/wp-content/uploads/2017/12/VAR-MX6CustomBoard-Schematics-for-VAR-SOM-MX6_V1.pdf https://www.variscite.com/wp-content/uploads/2017/12/V2_VAR-MX6CustomBoard-Schematics.pdf https://www.variscite.com/wp-content/uploads/2017/12/VAR-MX6CustomBoard-Datasheet.pdf > > > I'm guessing they should just be set to this based on the name?: > > regulator-min-microvolt = <3300000>; > > regulator-max-microvolt = <3300000>; > > This looks like a good guess, assuming that the regulator name is > correct. Tested with that but it didn't work, screen failed so I guess must be something different? > > Francesco >
diff --git a/Documentation/devicetree/bindings/arm/fsl.yaml b/Documentation/devicetree/bindings/arm/fsl.yaml index 2510eaa8906d..76bb098605e7 100644 --- a/Documentation/devicetree/bindings/arm/fsl.yaml +++ b/Documentation/devicetree/bindings/arm/fsl.yaml @@ -385,6 +385,12 @@ properties: - const: toradex,apalis_imx6q - const: fsl,imx6q + - description: i.MX6Q Variscite VAR-SOM-MX6 Boards + items: + - const: variscite,mx6customboard + - const: variscite,var-som-imx6q + - const: fsl,imx6q + - description: TQ-Systems TQMa6Q SoM (variant A) on MBa6x items: - const: tq,imx6q-mba6x-a