devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Shawn Guo <shawnguo@kernel.org>
To: Tim Harvey <tharvey@gateworks.com>
Cc: linux-arm-kernel@lists.infradead.org,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Sascha Hauer <s.hauer@pengutronix.de>,
	Pengutronix Kernel Team <kernel@pengutronix.de>,
	Fabio Estevam <festevam@gmail.com>,
	NXP Linux Team <linux-imx@nxp.com>, Li Yang <leoyang.li@nxp.com>,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] arm64: dts: imx8mp-venice-gw74xx: update to revB PCB
Date: Mon, 5 Jun 2023 08:21:54 +0800	[thread overview]
Message-ID: <20230605002154.GT4199@dragon> (raw)
In-Reply-To: <20230601193112.4083934-1-tharvey@gateworks.com>

On Thu, Jun 01, 2023 at 12:31:12PM -0700, Tim Harvey wrote:
> Update the imx8mp-venice-gw74xx for revB:
>  - add CAN1
>  - add TIS-TPM on SPI2
>  - add FAN controller
>  - fix PMIC I2C bus (revA PMIC I2C was non-functional so no need for
>    backward compatible option)
>  - M2 socket GPIO's moved
> 
> Signed-off-by: Tim Harvey <tharvey@gateworks.com>
> ---
>  .../dts/freescale/imx8mp-venice-gw74xx.dts    | 261 +++++++++++-------
>  1 file changed, 159 insertions(+), 102 deletions(-)
> 
> diff --git a/arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dts b/arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dts
> index eb51d648359b..0e389ec5c2d4 100644
> --- a/arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dts
> +++ b/arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dts
> @@ -125,12 +125,22 @@ reg_usb2_vbus: regulator-usb2 {
>  		regulator-max-microvolt = <5000000>;
>  	};
>  
> +	reg_can1_stby: regulator-can1-stby {
> +		compatible = "regulator-fixed";
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&pinctrl_reg_can1>;
> +		regulator-name = "can1_stby";
> +		gpio = <&gpio3 19 GPIO_ACTIVE_LOW>;
> +		regulator-min-microvolt = <3300000>;
> +		regulator-max-microvolt = <3300000>;
> +	};
> +
>  	reg_can2_stby: regulator-can2-stby {
>  		compatible = "regulator-fixed";
>  		pinctrl-names = "default";
> -		pinctrl-0 = <&pinctrl_reg_can>;
> +		pinctrl-0 = <&pinctrl_reg_can2>;
>  		regulator-name = "can2_stby";
> -		gpio = <&gpio3 19 GPIO_ACTIVE_LOW>;
> +		gpio = <&gpio5 5 GPIO_ACTIVE_LOW>;
>  		regulator-min-microvolt = <3300000>;
>  		regulator-max-microvolt = <3300000>;
>  	};
> @@ -164,6 +174,21 @@ &A53_3 {
>  	cpu-supply = <&reg_arm>;
>  };
>  
> +&ecspi1 {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&pinctrl_spi1>;
> +	cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
> +	status = "okay";
> +
> +	tpm@0 {
> +		compatible = "tcg,tpm_tis-spi";
> +		#address-cells = <0x1>;
> +		#size-cells = <0x1>;
> +		reg = <0x0>;
> +		spi-max-frequency = <36000000>;
> +	};
> +};
> +
>  /* off-board header */
>  &ecspi2 {
>  	pinctrl-names = "default";
> @@ -204,6 +229,13 @@ fixed-link {
>  	};
>  };
>  
> +&flexcan1 {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&pinctrl_flexcan1>;
> +	xceiver-supply = <&reg_can1_stby>;
> +	status = "okay";
> +};
> +
>  &flexcan2 {
>  	pinctrl-names = "default";
>  	pinctrl-0 = <&pinctrl_flexcan2>;
> @@ -214,38 +246,38 @@ &flexcan2 {
>  &gpio1 {
>  	gpio-line-names =
>  		"", "", "", "", "", "", "", "",
> -		"", "", "dio0", "", "dio1", "", "", "",
> +		"", "dio0", "", "dio1", "", "", "", "",
>  		"", "", "", "", "", "", "", "",
>  		"", "", "", "", "", "", "", "";
>  };
>  
>  &gpio2 {
>  	gpio-line-names =
> -		"", "", "", "", "", "", "", "",
> -		"", "", "", "", "", "", "pcie3_wdis#", "",
> +		"", "", "", "", "", "", "m2_pin20", "",
> +		"", "", "", "", "", "pcie1_wdis#", "pcie3_wdis#", "",
>  		"", "", "pcie2_wdis#", "", "", "", "", "",
>  		"", "", "", "", "", "", "", "";
>  };
>  
>  &gpio3 {
>  	gpio-line-names =
> -		"m2_gdis#", "", "", "", "", "", "", "m2_rst#",
> +		"", "", "", "", "", "", "m2_rst", "",
> +		"", "", "", "", "", "", "", "",
>  		"", "", "", "", "", "", "", "",
> -		"m2_off#", "", "", "", "", "", "", "",
>  		"", "", "", "", "", "", "", "";
>  };
>  
>  &gpio4 {
>  	gpio-line-names =
> +		"", "", "m2_off#", "", "", "", "", "",
>  		"", "", "", "", "", "", "", "",
> -		"", "", "", "", "", "", "", "",
> -		"", "", "", "", "m2_wdis#", "", "", "",
> -		"", "", "", "", "", "", "", "uart_rs485";
> +		"", "", "m2_wdis#", "", "", "", "", "",
> +		"", "", "", "", "", "", "", "rs485_en";
>  };
>  
>  &gpio5 {
>  	gpio-line-names =
> -		"uart_half", "uart_term", "", "", "", "", "", "",
> +		"rs485_hd", "rs485_term", "", "", "", "", "", "",
>  		"", "", "", "", "", "", "", "",
>  		"", "", "", "", "", "", "", "",
>  		"", "", "", "", "", "", "", "";
> @@ -286,6 +318,12 @@ channel@8 {
>  				label = "vdd_bat";
>  			};
>  
> +			channel@16 {
> +				gw,mode = <4>;
> +				reg = <0x16>;
> +				label = "fan_tach";
> +			};
> +
>  			channel@82 {
>  				gw,mode = <2>;
>  				reg = <0x82>;
> @@ -358,6 +396,11 @@ channel@a2 {
>  				gw,voltage-divider-ohms = <10000 10000>;
>  			};
>  		};
> +
> +		fan-controller@0 {

The unit-address doesn't match 'reg' property below.

Shawn

> +			compatible = "gw,gsc-fan";
> +			reg = <0x0a>;
> +		};
>  	};
>  
>  	gpio: gpio@23 {
> @@ -369,85 +412,6 @@ gpio: gpio@23 {
>  		interrupts = <4>;
>  	};
>  
> -	pmic@25 {
> -		compatible = "nxp,pca9450c";
> -		reg = <0x25>;
> -		pinctrl-names = "default";
> -		pinctrl-0 = <&pinctrl_pmic>;
> -		interrupt-parent = <&gpio3>;
> -		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
> -
> -		regulators {
> -			BUCK1 {
> -				regulator-name = "BUCK1";
> -				regulator-min-microvolt = <720000>;
> -				regulator-max-microvolt = <1000000>;
> -				regulator-boot-on;
> -				regulator-always-on;
> -				regulator-ramp-delay = <3125>;
> -			};
> -
> -			reg_arm: BUCK2 {
> -				regulator-name = "BUCK2";
> -				regulator-min-microvolt = <720000>;
> -				regulator-max-microvolt = <1025000>;
> -				regulator-boot-on;
> -				regulator-always-on;
> -				regulator-ramp-delay = <3125>;
> -				nxp,dvs-run-voltage = <950000>;
> -				nxp,dvs-standby-voltage = <850000>;
> -			};
> -
> -			BUCK4 {
> -				regulator-name = "BUCK4";
> -				regulator-min-microvolt = <3000000>;
> -				regulator-max-microvolt = <3600000>;
> -				regulator-boot-on;
> -				regulator-always-on;
> -			};
> -
> -			BUCK5 {
> -				regulator-name = "BUCK5";
> -				regulator-min-microvolt = <1650000>;
> -				regulator-max-microvolt = <1950000>;
> -				regulator-boot-on;
> -				regulator-always-on;
> -			};
> -
> -			BUCK6 {
> -				regulator-name = "BUCK6";
> -				regulator-min-microvolt = <1045000>;
> -				regulator-max-microvolt = <1155000>;
> -				regulator-boot-on;
> -				regulator-always-on;
> -			};
> -
> -			LDO1 {
> -				regulator-name = "LDO1";
> -				regulator-min-microvolt = <1650000>;
> -				regulator-max-microvolt = <1950000>;
> -				regulator-boot-on;
> -				regulator-always-on;
> -			};
> -
> -			LDO3 {
> -				regulator-name = "LDO3";
> -				regulator-min-microvolt = <1710000>;
> -				regulator-max-microvolt = <1890000>;
> -				regulator-boot-on;
> -				regulator-always-on;
> -			};
> -
> -			LDO5 {
> -				regulator-name = "LDO5";
> -				regulator-min-microvolt = <1800000>;
> -				regulator-max-microvolt = <3300000>;
> -				regulator-boot-on;
> -				regulator-always-on;
> -			};
> -		};
> -	};
> -
>  	eeprom@50 {
>  		compatible = "atmel,24c02";
>  		reg = <0x50>;
> @@ -559,7 +523,6 @@ fixed-link {
>  	};
>  };
>  
> -/* off-board header */
>  &i2c3 {
>  	clock-frequency = <400000>;
>  	pinctrl-names = "default", "gpio";
> @@ -568,6 +531,85 @@ &i2c3 {
>  	scl-gpios = <&gpio5 18 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
>  	sda-gpios = <&gpio5 19 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
>  	status = "okay";
> +
> +	pmic@25 {
> +		compatible = "nxp,pca9450c";
> +		reg = <0x25>;
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&pinctrl_pmic>;
> +		interrupt-parent = <&gpio3>;
> +		interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
> +
> +		regulators {
> +			BUCK1 {
> +				regulator-name = "BUCK1";
> +				regulator-min-microvolt = <720000>;
> +				regulator-max-microvolt = <1000000>;
> +				regulator-boot-on;
> +				regulator-always-on;
> +				regulator-ramp-delay = <3125>;
> +			};
> +
> +			reg_arm: BUCK2 {
> +				regulator-name = "BUCK2";
> +				regulator-min-microvolt = <720000>;
> +				regulator-max-microvolt = <1025000>;
> +				regulator-boot-on;
> +				regulator-always-on;
> +				regulator-ramp-delay = <3125>;
> +				nxp,dvs-run-voltage = <950000>;
> +				nxp,dvs-standby-voltage = <850000>;
> +			};
> +
> +			BUCK4 {
> +				regulator-name = "BUCK4";
> +				regulator-min-microvolt = <3000000>;
> +				regulator-max-microvolt = <3600000>;
> +				regulator-boot-on;
> +				regulator-always-on;
> +			};
> +
> +			BUCK5 {
> +				regulator-name = "BUCK5";
> +				regulator-min-microvolt = <1650000>;
> +				regulator-max-microvolt = <1950000>;
> +				regulator-boot-on;
> +				regulator-always-on;
> +			};
> +
> +			BUCK6 {
> +				regulator-name = "BUCK6";
> +				regulator-min-microvolt = <1045000>;
> +				regulator-max-microvolt = <1155000>;
> +				regulator-boot-on;
> +				regulator-always-on;
> +			};
> +
> +			LDO1 {
> +				regulator-name = "LDO1";
> +				regulator-min-microvolt = <1650000>;
> +				regulator-max-microvolt = <1950000>;
> +				regulator-boot-on;
> +				regulator-always-on;
> +			};
> +
> +			LDO3 {
> +				regulator-name = "LDO3";
> +				regulator-min-microvolt = <1710000>;
> +				regulator-max-microvolt = <1890000>;
> +				regulator-boot-on;
> +				regulator-always-on;
> +			};
> +
> +			LDO5 {
> +				regulator-name = "LDO5";
> +				regulator-min-microvolt = <1800000>;
> +				regulator-max-microvolt = <3300000>;
> +				regulator-boot-on;
> +				regulator-always-on;
> +			};
> +		};
> +	};
>  };
>  
>  /* off-board header */
> @@ -726,12 +768,14 @@ pinctrl_hog: hoggrp {
>  		fsl,pins = <
>  			MX8MP_IOMUXC_GPIO1_IO09__GPIO1_IO09	0x40000040 /* DIO0 */
>  			MX8MP_IOMUXC_GPIO1_IO11__GPIO1_IO11	0x40000040 /* DIO1 */
> -			MX8MP_IOMUXC_NAND_DQS__GPIO3_IO14	0x40000040 /* M2SKT_OFF# */
> -			MX8MP_IOMUXC_SD2_DATA3__GPIO2_IO18	0x40000150 /* PCIE2_WDIS# */
> +			MX8MP_IOMUXC_SAI1_RXD0__GPIO4_IO02	0x40000040 /* M2SKT_OFF# */
> +			MX8MP_IOMUXC_SAI1_TXD6__GPIO4_IO18	0x40000150 /* M2SKT_WDIS# */
> +			MX8MP_IOMUXC_SD1_DATA4__GPIO2_IO06	0x40000040 /* M2SKT_PIN20 */
> +			MX8MP_IOMUXC_SD1_STROBE__GPIO2_IO11	0x40000040 /* M2SKT_PIN22 */
> +			MX8MP_IOMUXC_SD2_CLK__GPIO2_IO13	0x40000150 /* PCIE1_WDIS# */
>  			MX8MP_IOMUXC_SD2_CMD__GPIO2_IO14	0x40000150 /* PCIE3_WDIS# */
> +			MX8MP_IOMUXC_SD2_DATA3__GPIO2_IO18	0x40000150 /* PCIE2_WDIS# */
>  			MX8MP_IOMUXC_NAND_DATA00__GPIO3_IO06	0x40000040 /* M2SKT_RST# */
> -			MX8MP_IOMUXC_SAI1_TXD6__GPIO4_IO18	0x40000150 /* M2SKT_WDIS# */
> -			MX8MP_IOMUXC_NAND_ALE__GPIO3_IO00	0x40000150 /* M2SKT_GDIS# */
>  			MX8MP_IOMUXC_SAI3_TXD__GPIO5_IO01	0x40000104 /* UART_TERM */
>  			MX8MP_IOMUXC_SAI3_TXFS__GPIO4_IO31	0x40000104 /* UART_RS485 */
>  			MX8MP_IOMUXC_SAI3_TXC__GPIO5_IO00	0x40000104 /* UART_HALF */
> @@ -784,6 +828,13 @@ MX8MP_IOMUXC_SAI1_RXC__ENET1_1588_EVENT0_OUT	0x140
>  		>;
>  	};
>  
> +	pinctrl_flexcan1: flexcan1grp {
> +		fsl,pins = <
> +			MX8MP_IOMUXC_SPDIF_RX__CAN1_RX		0x154
> +			MX8MP_IOMUXC_SPDIF_TX__CAN1_TX		0x154
> +		>;
> +	};
> +
>  	pinctrl_flexcan2: flexcan2grp {
>  		fsl,pins = <
>  			MX8MP_IOMUXC_SAI5_RXD3__CAN2_TX		0x154
> @@ -869,7 +920,7 @@ MX8MP_IOMUXC_SD2_DATA1__GPIO2_IO16	0x10
>  
>  	pinctrl_pcie0: pciegrp {
>  		fsl,pins = <
> -			MX8MP_IOMUXC_SD2_DATA2__GPIO2_IO17	0x110
> +			MX8MP_IOMUXC_SD2_DATA2__GPIO2_IO17	0x106
>  		>;
>  	};
>  
> @@ -885,12 +936,18 @@ MX8MP_IOMUXC_GPIO1_IO12__GPIO1_IO12	0x140
>  		>;
>  	};
>  
> -	pinctrl_reg_can: regcangrp {
> +	pinctrl_reg_can1: regcan1grp {
>  		fsl,pins = <
>  			MX8MP_IOMUXC_SAI5_RXFS__GPIO3_IO19	0x154
>  		>;
>  	};
>  
> +	pinctrl_reg_can2: regcan2grp {
> +		fsl,pins = <
> +			MX8MP_IOMUXC_SPDIF_EXT_CLK__GPIO5_IO05	0x154
> +		>;
> +	};
> +
>  	pinctrl_reg_usb2: regusb2grp {
>  		fsl,pins = <
>  			MX8MP_IOMUXC_GPIO1_IO06__GPIO1_IO06	0x140
> @@ -903,12 +960,12 @@ MX8MP_IOMUXC_NAND_DATA03__GPIO3_IO09	0x110
>  		>;
>  	};
>  
> -	pinctrl_sai2: sai2grp {
> +	pinctrl_spi1: spi1grp {
>  		fsl,pins = <
> -			MX8MP_IOMUXC_SAI2_TXFS__AUDIOMIX_SAI2_TX_SYNC	0xd6
> -			MX8MP_IOMUXC_SAI2_TXD0__AUDIOMIX_SAI2_TX_DATA00	0xd6
> -			MX8MP_IOMUXC_SAI2_TXC__AUDIOMIX_SAI2_TX_BCLK	0xd6
> -			MX8MP_IOMUXC_SAI2_MCLK__AUDIOMIX_SAI2_MCLK	0xd6
> +			MX8MP_IOMUXC_ECSPI1_SCLK__ECSPI1_SCLK	0x82
> +			MX8MP_IOMUXC_ECSPI1_MOSI__ECSPI1_MOSI	0x82
> +			MX8MP_IOMUXC_ECSPI1_MISO__ECSPI1_MISO	0x82
> +			MX8MP_IOMUXC_ECSPI1_SS0__GPIO5_IO09	0x140
>  		>;
>  	};
>  
> -- 
> 2.25.1
> 

  reply	other threads:[~2023-06-05  0:22 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-01 19:31 [PATCH] arm64: dts: imx8mp-venice-gw74xx: update to revB PCB Tim Harvey
2023-06-05  0:21 ` Shawn Guo [this message]
2023-06-06  0:00   ` Tim Harvey

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230605002154.GT4199@dragon \
    --to=shawnguo@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=festevam@gmail.com \
    --cc=kernel@pengutronix.de \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=leoyang.li@nxp.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-imx@nxp.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=s.hauer@pengutronix.de \
    --cc=tharvey@gateworks.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).