* [PATCH RESEND] dts: arm64: amlogic: Add ISP related nodes for C3
@ 2025-09-18 8:35 Keke Li via B4 Relay
2025-09-19 14:43 ` Neil Armstrong
2025-10-21 12:29 ` Neil Armstrong
0 siblings, 2 replies; 4+ messages in thread
From: Keke Li via B4 Relay @ 2025-09-18 8:35 UTC (permalink / raw)
To: Neil Armstrong, Kevin Hilman, Jerome Brunet, Martin Blumenstingl,
Rob Herring, Krzysztof Kozlowski, Conor Dooley
Cc: linux-arm-kernel, linux-amlogic, devicetree, linux-kernel,
Keke Li
From: Keke Li <keke.li@amlogic.com>
Add the IMX290 sensor node description to the device tree file,
which will be controlled via I2C bus with image data transmission
through MIPI CSI-2 interface.
Add CSI-2, adapter and ISP nodes for C3 family.
Signed-off-by: Keke Li <keke.li@amlogic.com>
---
The C3 ISP driver and device-tree bindings have been
submitted. To facilitate using the C3 ISP driver, the
related device nodes need to be added.
---
.../boot/dts/amlogic/amlogic-c3-c308l-aw419.dts | 84 +++++++++++++++++++++
arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi | 88 ++++++++++++++++++++++
2 files changed, 172 insertions(+)
diff --git a/arch/arm64/boot/dts/amlogic/amlogic-c3-c308l-aw419.dts b/arch/arm64/boot/dts/amlogic/amlogic-c3-c308l-aw419.dts
index 45f8631f9feb..e026604c55e6 100644
--- a/arch/arm64/boot/dts/amlogic/amlogic-c3-c308l-aw419.dts
+++ b/arch/arm64/boot/dts/amlogic/amlogic-c3-c308l-aw419.dts
@@ -17,6 +17,7 @@ / {
aliases {
serial0 = &uart_b;
spi0 = &spifc;
+ i2c2 = &i2c2;
};
memory@0 {
@@ -146,6 +147,36 @@ sdcard: regulator-sdcard {
regulator-boot-on;
regulator-always-on;
};
+
+ camera_vdddo_1v8: regulator-camera-1v8 {
+ compatible = "regulator-fixed";
+ regulator-name = "CAMERA_VDDDO";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ vin-supply = <&vcc_3v3>;
+ regulator-boot-on;
+ regulator-always-on;
+ };
+
+ camera_vdda_2v9: regulator-camera-2v9 {
+ compatible = "regulator-fixed";
+ regulator-name = "CAMERA_VDDA";
+ regulator-min-microvolt = <2900000>;
+ regulator-max-microvolt = <2900000>;
+ vin-supply = <&vcc_5v>;
+ regulator-boot-on;
+ regulator-always-on;
+ };
+
+ camera_vddd_1v2: regulator-camera-1v2 {
+ compatible = "regulator-fixed";
+ regulator-name = "CAMERA_VDDD";
+ regulator-min-microvolt = <1200000>;
+ regulator-max-microvolt = <1200000>;
+ vin-supply = <&vcc_3v3>;
+ regulator-boot-on;
+ regulator-always-on;
+ };
};
&uart_b {
@@ -258,3 +289,56 @@ &sd {
vmmc-supply = <&sdcard>;
vqmmc-supply = <&sdcard>;
};
+
+&i2c2 {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c2_pins1>;
+ clock-frequency = <100000>; /* default 100k */
+
+ imx290: sensor0@1a {
+ compatible = "sony,imx290";
+ reg = <0x1a>;
+ clocks = <&clkc_pll CLKID_MCLK0>;
+ clock-names = "xclk";
+ clock-frequency = <37125000>;
+ assigned-clocks = <&clkc_pll CLKID_MCLK_PLL>,
+ <&clkc_pll CLKID_MCLK0>;
+ assigned-clock-rates = <74250000>, <37125000>;
+
+ vdddo-supply = <&camera_vdddo_1v8>;
+ vdda-supply = <&camera_vdda_2v9>;
+ vddd-supply = <&camera_vddd_1v2>;
+
+ reset-gpios = <&gpio GPIOE_4 GPIO_ACTIVE_LOW>;
+
+ port {
+ imx290_out: endpoint {
+ data-lanes = <1 2 3 4>;
+ link-frequencies = /bits/ 64 <222750000 148500000>;
+ remote-endpoint = <&c3_mipi_csi_in>;
+ };
+ };
+ };
+};
+
+&csi2 {
+ status = "okay";
+
+ ports {
+ port@0 {
+ c3_mipi_csi_in: endpoint {
+ remote-endpoint = <&imx290_out>;
+ data-lanes = <1 2 3 4>;
+ };
+ };
+ };
+};
+
+&adap {
+ status = "okay";
+};
+
+&isp {
+ status = "okay";
+};
diff --git a/arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi b/arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi
index cb9ea3ca6ee0..a62fd8534209 100644
--- a/arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi
+++ b/arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi
@@ -992,5 +992,93 @@ mdio0: mdio {
#size-cells = <0>;
};
};
+
+ csi2: csi2@ff018000 {
+ compatible = "amlogic,c3-mipi-csi2";
+ reg = <0x0 0xff018000 0x0 0x100>,
+ <0x0 0xff019000 0x0 0x300>,
+ <0x0 0xff01a000 0x0 0x100>;
+ reg-names = "aphy", "dphy", "host";
+ power-domains = <&pwrc PWRC_C3_MIPI_ISP_WRAP_ID>;
+ clocks = <&clkc_periphs CLKID_VAPB>,
+ <&clkc_periphs CLKID_CSI_PHY0>;
+ clock-names = "vapb", "phy0";
+ assigned-clocks = <&clkc_periphs CLKID_VAPB>,
+ <&clkc_periphs CLKID_CSI_PHY0>;
+ assigned-clock-rates = <0>, <200000000>;
+ status = "disabled";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+ };
+
+ port@1 {
+ reg = <1>;
+ c3_mipi_csi_out: endpoint {
+ remote-endpoint = <&c3_adap_in>;
+ };
+ };
+ };
+ };
+
+ adap: adap@ff010000 {
+ compatible = "amlogic,c3-mipi-adapter";
+ reg = <0x0 0xff010000 0x0 0x100>,
+ <0x0 0xff01b000 0x0 0x100>,
+ <0x0 0xff01d000 0x0 0x200>;
+ reg-names = "top", "fd", "rd";
+ power-domains = <&pwrc PWRC_C3_ISP_TOP_ID>;
+ clocks = <&clkc_periphs CLKID_VAPB>,
+ <&clkc_periphs CLKID_ISP0>;
+ clock-names = "vapb", "isp0";
+ assigned-clocks = <&clkc_periphs CLKID_VAPB>,
+ <&clkc_periphs CLKID_ISP0>;
+ assigned-clock-rates = <0>, <400000000>;
+ status = "disabled";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+ c3_adap_in: endpoint {
+ remote-endpoint = <&c3_mipi_csi_out>;
+ };
+ };
+
+ port@1 {
+ reg = <1>;
+ c3_adap_out: endpoint {
+ remote-endpoint = <&c3_isp_in>;
+ };
+ };
+ };
+ };
+
+ isp: isp@ff000000 {
+ compatible = "amlogic,c3-isp";
+ reg = <0x0 0xff000000 0x0 0xf000>;
+ reg-names = "isp";
+ power-domains = <&pwrc PWRC_C3_ISP_TOP_ID>;
+ clocks = <&clkc_periphs CLKID_VAPB>,
+ <&clkc_periphs CLKID_ISP0>;
+ clock-names = "vapb", "isp0";
+ assigned-clocks = <&clkc_periphs CLKID_VAPB>,
+ <&clkc_periphs CLKID_ISP0>;
+ assigned-clock-rates = <0>, <400000000>;
+ interrupts = <GIC_SPI 145 IRQ_TYPE_EDGE_RISING>;
+ status = "disabled";
+
+ port {
+ c3_isp_in: endpoint {
+ remote-endpoint = <&c3_adap_out>;
+ };
+ };
+ };
};
};
---
base-commit: 84b92a499e7eca54ba1df6f6c6e01766025943f1
change-id: 20250731-b4-c3isp-16531391a1cb
Best regards,
--
Keke Li <keke.li@amlogic.com>
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH RESEND] dts: arm64: amlogic: Add ISP related nodes for C3
2025-09-18 8:35 [PATCH RESEND] dts: arm64: amlogic: Add ISP related nodes for C3 Keke Li via B4 Relay
@ 2025-09-19 14:43 ` Neil Armstrong
2025-09-22 8:43 ` Keke Li
2025-10-21 12:29 ` Neil Armstrong
1 sibling, 1 reply; 4+ messages in thread
From: Neil Armstrong @ 2025-09-19 14:43 UTC (permalink / raw)
To: keke.li, Kevin Hilman, Jerome Brunet, Martin Blumenstingl,
Rob Herring, Krzysztof Kozlowski, Conor Dooley
Cc: linux-arm-kernel, linux-amlogic, devicetree, linux-kernel
On 18/09/2025 10:35, Keke Li via B4 Relay wrote:
> From: Keke Li <keke.li@amlogic.com>
>
> Add the IMX290 sensor node description to the device tree file,
> which will be controlled via I2C bus with image data transmission
> through MIPI CSI-2 interface.
>
> Add CSI-2, adapter and ISP nodes for C3 family.
>
> Signed-off-by: Keke Li <keke.li@amlogic.com>
> ---
> The C3 ISP driver and device-tree bindings have been
> submitted. To facilitate using the C3 ISP driver, the
> related device nodes need to be added.
No need to resend until the bindings are merged.
Neil
> ---
> .../boot/dts/amlogic/amlogic-c3-c308l-aw419.dts | 84 +++++++++++++++++++++
> arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi | 88 ++++++++++++++++++++++
> 2 files changed, 172 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/amlogic/amlogic-c3-c308l-aw419.dts b/arch/arm64/boot/dts/amlogic/amlogic-c3-c308l-aw419.dts
> index 45f8631f9feb..e026604c55e6 100644
> --- a/arch/arm64/boot/dts/amlogic/amlogic-c3-c308l-aw419.dts
> +++ b/arch/arm64/boot/dts/amlogic/amlogic-c3-c308l-aw419.dts
> @@ -17,6 +17,7 @@ / {
> aliases {
> serial0 = &uart_b;
> spi0 = &spifc;
> + i2c2 = &i2c2;
> };
>
> memory@0 {
> @@ -146,6 +147,36 @@ sdcard: regulator-sdcard {
> regulator-boot-on;
> regulator-always-on;
> };
> +
> + camera_vdddo_1v8: regulator-camera-1v8 {
> + compatible = "regulator-fixed";
> + regulator-name = "CAMERA_VDDDO";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + vin-supply = <&vcc_3v3>;
> + regulator-boot-on;
> + regulator-always-on;
> + };
> +
> + camera_vdda_2v9: regulator-camera-2v9 {
> + compatible = "regulator-fixed";
> + regulator-name = "CAMERA_VDDA";
> + regulator-min-microvolt = <2900000>;
> + regulator-max-microvolt = <2900000>;
> + vin-supply = <&vcc_5v>;
> + regulator-boot-on;
> + regulator-always-on;
> + };
> +
> + camera_vddd_1v2: regulator-camera-1v2 {
> + compatible = "regulator-fixed";
> + regulator-name = "CAMERA_VDDD";
> + regulator-min-microvolt = <1200000>;
> + regulator-max-microvolt = <1200000>;
> + vin-supply = <&vcc_3v3>;
> + regulator-boot-on;
> + regulator-always-on;
> + };
> };
>
> &uart_b {
> @@ -258,3 +289,56 @@ &sd {
> vmmc-supply = <&sdcard>;
> vqmmc-supply = <&sdcard>;
> };
> +
> +&i2c2 {
> + status = "okay";
> + pinctrl-names = "default";
> + pinctrl-0 = <&i2c2_pins1>;
> + clock-frequency = <100000>; /* default 100k */
> +
> + imx290: sensor0@1a {
> + compatible = "sony,imx290";
> + reg = <0x1a>;
> + clocks = <&clkc_pll CLKID_MCLK0>;
> + clock-names = "xclk";
> + clock-frequency = <37125000>;
> + assigned-clocks = <&clkc_pll CLKID_MCLK_PLL>,
> + <&clkc_pll CLKID_MCLK0>;
> + assigned-clock-rates = <74250000>, <37125000>;
> +
> + vdddo-supply = <&camera_vdddo_1v8>;
> + vdda-supply = <&camera_vdda_2v9>;
> + vddd-supply = <&camera_vddd_1v2>;
> +
> + reset-gpios = <&gpio GPIOE_4 GPIO_ACTIVE_LOW>;
> +
> + port {
> + imx290_out: endpoint {
> + data-lanes = <1 2 3 4>;
> + link-frequencies = /bits/ 64 <222750000 148500000>;
> + remote-endpoint = <&c3_mipi_csi_in>;
> + };
> + };
> + };
> +};
> +
> +&csi2 {
> + status = "okay";
> +
> + ports {
> + port@0 {
> + c3_mipi_csi_in: endpoint {
> + remote-endpoint = <&imx290_out>;
> + data-lanes = <1 2 3 4>;
> + };
> + };
> + };
> +};
> +
> +&adap {
> + status = "okay";
> +};
> +
> +&isp {
> + status = "okay";
> +};
> diff --git a/arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi b/arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi
> index cb9ea3ca6ee0..a62fd8534209 100644
> --- a/arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi
> @@ -992,5 +992,93 @@ mdio0: mdio {
> #size-cells = <0>;
> };
> };
> +
> + csi2: csi2@ff018000 {
> + compatible = "amlogic,c3-mipi-csi2";
> + reg = <0x0 0xff018000 0x0 0x100>,
> + <0x0 0xff019000 0x0 0x300>,
> + <0x0 0xff01a000 0x0 0x100>;
> + reg-names = "aphy", "dphy", "host";
> + power-domains = <&pwrc PWRC_C3_MIPI_ISP_WRAP_ID>;
> + clocks = <&clkc_periphs CLKID_VAPB>,
> + <&clkc_periphs CLKID_CSI_PHY0>;
> + clock-names = "vapb", "phy0";
> + assigned-clocks = <&clkc_periphs CLKID_VAPB>,
> + <&clkc_periphs CLKID_CSI_PHY0>;
> + assigned-clock-rates = <0>, <200000000>;
> + status = "disabled";
> +
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + reg = <0>;
> + };
> +
> + port@1 {
> + reg = <1>;
> + c3_mipi_csi_out: endpoint {
> + remote-endpoint = <&c3_adap_in>;
> + };
> + };
> + };
> + };
> +
> + adap: adap@ff010000 {
> + compatible = "amlogic,c3-mipi-adapter";
> + reg = <0x0 0xff010000 0x0 0x100>,
> + <0x0 0xff01b000 0x0 0x100>,
> + <0x0 0xff01d000 0x0 0x200>;
> + reg-names = "top", "fd", "rd";
> + power-domains = <&pwrc PWRC_C3_ISP_TOP_ID>;
> + clocks = <&clkc_periphs CLKID_VAPB>,
> + <&clkc_periphs CLKID_ISP0>;
> + clock-names = "vapb", "isp0";
> + assigned-clocks = <&clkc_periphs CLKID_VAPB>,
> + <&clkc_periphs CLKID_ISP0>;
> + assigned-clock-rates = <0>, <400000000>;
> + status = "disabled";
> +
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + reg = <0>;
> + c3_adap_in: endpoint {
> + remote-endpoint = <&c3_mipi_csi_out>;
> + };
> + };
> +
> + port@1 {
> + reg = <1>;
> + c3_adap_out: endpoint {
> + remote-endpoint = <&c3_isp_in>;
> + };
> + };
> + };
> + };
> +
> + isp: isp@ff000000 {
> + compatible = "amlogic,c3-isp";
> + reg = <0x0 0xff000000 0x0 0xf000>;
> + reg-names = "isp";
> + power-domains = <&pwrc PWRC_C3_ISP_TOP_ID>;
> + clocks = <&clkc_periphs CLKID_VAPB>,
> + <&clkc_periphs CLKID_ISP0>;
> + clock-names = "vapb", "isp0";
> + assigned-clocks = <&clkc_periphs CLKID_VAPB>,
> + <&clkc_periphs CLKID_ISP0>;
> + assigned-clock-rates = <0>, <400000000>;
> + interrupts = <GIC_SPI 145 IRQ_TYPE_EDGE_RISING>;
> + status = "disabled";
> +
> + port {
> + c3_isp_in: endpoint {
> + remote-endpoint = <&c3_adap_out>;
> + };
> + };
> + };
> };
> };
>
> ---
> base-commit: 84b92a499e7eca54ba1df6f6c6e01766025943f1
> change-id: 20250731-b4-c3isp-16531391a1cb
>
> Best regards,
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH RESEND] dts: arm64: amlogic: Add ISP related nodes for C3
2025-09-19 14:43 ` Neil Armstrong
@ 2025-09-22 8:43 ` Keke Li
0 siblings, 0 replies; 4+ messages in thread
From: Keke Li @ 2025-09-22 8:43 UTC (permalink / raw)
To: Neil Armstrong, Kevin Hilman, Jerome Brunet, Martin Blumenstingl,
Rob Herring, Krzysztof Kozlowski, Conor Dooley
Cc: linux-arm-kernel, linux-amlogic, devicetree, linux-kernel
Hi Neil
Thanks for your reply.
On 2025/9/19 22:43, Neil Armstrong wrote:
> [You don't often get email from neil.armstrong@linaro.org. Learn why
> this is important at https://aka.ms/LearnAboutSenderIdentification ]
>
> [ EXTERNAL EMAIL ]
>
> On 18/09/2025 10:35, Keke Li via B4 Relay wrote:
>> From: Keke Li <keke.li@amlogic.com>
>>
>> Add the IMX290 sensor node description to the device tree file,
>> which will be controlled via I2C bus with image data transmission
>> through MIPI CSI-2 interface.
>>
>> Add CSI-2, adapter and ISP nodes for C3 family.
>>
>> Signed-off-by: Keke Li <keke.li@amlogic.com>
>> ---
>> The C3 ISP driver and device-tree bindings have been
>> submitted. To facilitate using the C3 ISP driver, the
>> related device nodes need to be added.
>
> No need to resend until the bindings are merged.
>
> Neil
>
https://lore.kernel.org/all/20250427-c3isp-v9-1-e0fe09433d94@amlogic.com/
https://lore.kernel.org/all/20250427-c3isp-v9-3-e0fe09433d94@amlogic.com/
https://lore.kernel.org/all/20250427-c3isp-v9-5-e0fe09433d94@amlogic.com/
The device-tree bindings for C3 ISP have been merged into the Linux
kernel v6.16.
Thanks.
>> ---
>> .../boot/dts/amlogic/amlogic-c3-c308l-aw419.dts | 84
>> +++++++++++++++++++++
>> arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi | 88
>> ++++++++++++++++++++++
>> 2 files changed, 172 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/amlogic/amlogic-c3-c308l-aw419.dts
>> b/arch/arm64/boot/dts/amlogic/amlogic-c3-c308l-aw419.dts
>> index 45f8631f9feb..e026604c55e6 100644
>> --- a/arch/arm64/boot/dts/amlogic/amlogic-c3-c308l-aw419.dts
>> +++ b/arch/arm64/boot/dts/amlogic/amlogic-c3-c308l-aw419.dts
>> @@ -17,6 +17,7 @@ / {
>> aliases {
>> serial0 = &uart_b;
>> spi0 = &spifc;
>> + i2c2 = &i2c2;
>> };
>>
>> memory@0 {
>> @@ -146,6 +147,36 @@ sdcard: regulator-sdcard {
>> regulator-boot-on;
>> regulator-always-on;
>> };
>> +
>> + camera_vdddo_1v8: regulator-camera-1v8 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "CAMERA_VDDDO";
>> + regulator-min-microvolt = <1800000>;
>> + regulator-max-microvolt = <1800000>;
>> + vin-supply = <&vcc_3v3>;
>> + regulator-boot-on;
>> + regulator-always-on;
>> + };
>> +
>> + camera_vdda_2v9: regulator-camera-2v9 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "CAMERA_VDDA";
>> + regulator-min-microvolt = <2900000>;
>> + regulator-max-microvolt = <2900000>;
>> + vin-supply = <&vcc_5v>;
>> + regulator-boot-on;
>> + regulator-always-on;
>> + };
>> +
>> + camera_vddd_1v2: regulator-camera-1v2 {
>> + compatible = "regulator-fixed";
>> + regulator-name = "CAMERA_VDDD";
>> + regulator-min-microvolt = <1200000>;
>> + regulator-max-microvolt = <1200000>;
>> + vin-supply = <&vcc_3v3>;
>> + regulator-boot-on;
>> + regulator-always-on;
>> + };
>> };
>>
>> &uart_b {
>> @@ -258,3 +289,56 @@ &sd {
>> vmmc-supply = <&sdcard>;
>> vqmmc-supply = <&sdcard>;
>> };
>> +
>> +&i2c2 {
>> + status = "okay";
>> + pinctrl-names = "default";
>> + pinctrl-0 = <&i2c2_pins1>;
>> + clock-frequency = <100000>; /* default 100k */
>> +
>> + imx290: sensor0@1a {
>> + compatible = "sony,imx290";
>> + reg = <0x1a>;
>> + clocks = <&clkc_pll CLKID_MCLK0>;
>> + clock-names = "xclk";
>> + clock-frequency = <37125000>;
>> + assigned-clocks = <&clkc_pll CLKID_MCLK_PLL>,
>> + <&clkc_pll CLKID_MCLK0>;
>> + assigned-clock-rates = <74250000>, <37125000>;
>> +
>> + vdddo-supply = <&camera_vdddo_1v8>;
>> + vdda-supply = <&camera_vdda_2v9>;
>> + vddd-supply = <&camera_vddd_1v2>;
>> +
>> + reset-gpios = <&gpio GPIOE_4 GPIO_ACTIVE_LOW>;
>> +
>> + port {
>> + imx290_out: endpoint {
>> + data-lanes = <1 2 3 4>;
>> + link-frequencies = /bits/ 64 <222750000
>> 148500000>;
>> + remote-endpoint = <&c3_mipi_csi_in>;
>> + };
>> + };
>> + };
>> +};
>> +
>> +&csi2 {
>> + status = "okay";
>> +
>> + ports {
>> + port@0 {
>> + c3_mipi_csi_in: endpoint {
>> + remote-endpoint = <&imx290_out>;
>> + data-lanes = <1 2 3 4>;
>> + };
>> + };
>> + };
>> +};
>> +
>> +&adap {
>> + status = "okay";
>> +};
>> +
>> +&isp {
>> + status = "okay";
>> +};
>> diff --git a/arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi
>> b/arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi
>> index cb9ea3ca6ee0..a62fd8534209 100644
>> --- a/arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi
>> +++ b/arch/arm64/boot/dts/amlogic/amlogic-c3.dtsi
>> @@ -992,5 +992,93 @@ mdio0: mdio {
>> #size-cells = <0>;
>> };
>> };
>> +
>> + csi2: csi2@ff018000 {
>> + compatible = "amlogic,c3-mipi-csi2";
>> + reg = <0x0 0xff018000 0x0 0x100>,
>> + <0x0 0xff019000 0x0 0x300>,
>> + <0x0 0xff01a000 0x0 0x100>;
>> + reg-names = "aphy", "dphy", "host";
>> + power-domains = <&pwrc PWRC_C3_MIPI_ISP_WRAP_ID>;
>> + clocks = <&clkc_periphs CLKID_VAPB>,
>> + <&clkc_periphs CLKID_CSI_PHY0>;
>> + clock-names = "vapb", "phy0";
>> + assigned-clocks = <&clkc_periphs CLKID_VAPB>,
>> + <&clkc_periphs CLKID_CSI_PHY0>;
>> + assigned-clock-rates = <0>, <200000000>;
>> + status = "disabled";
>> +
>> + ports {
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>> +
>> + port@0 {
>> + reg = <0>;
>> + };
>> +
>> + port@1 {
>> + reg = <1>;
>> + c3_mipi_csi_out: endpoint {
>> + remote-endpoint =
>> <&c3_adap_in>;
>> + };
>> + };
>> + };
>> + };
>> +
>> + adap: adap@ff010000 {
>> + compatible = "amlogic,c3-mipi-adapter";
>> + reg = <0x0 0xff010000 0x0 0x100>,
>> + <0x0 0xff01b000 0x0 0x100>,
>> + <0x0 0xff01d000 0x0 0x200>;
>> + reg-names = "top", "fd", "rd";
>> + power-domains = <&pwrc PWRC_C3_ISP_TOP_ID>;
>> + clocks = <&clkc_periphs CLKID_VAPB>,
>> + <&clkc_periphs CLKID_ISP0>;
>> + clock-names = "vapb", "isp0";
>> + assigned-clocks = <&clkc_periphs CLKID_VAPB>,
>> + <&clkc_periphs CLKID_ISP0>;
>> + assigned-clock-rates = <0>, <400000000>;
>> + status = "disabled";
>> +
>> + ports {
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>> +
>> + port@0 {
>> + reg = <0>;
>> + c3_adap_in: endpoint {
>> + remote-endpoint =
>> <&c3_mipi_csi_out>;
>> + };
>> + };
>> +
>> + port@1 {
>> + reg = <1>;
>> + c3_adap_out: endpoint {
>> + remote-endpoint =
>> <&c3_isp_in>;
>> + };
>> + };
>> + };
>> + };
>> +
>> + isp: isp@ff000000 {
>> + compatible = "amlogic,c3-isp";
>> + reg = <0x0 0xff000000 0x0 0xf000>;
>> + reg-names = "isp";
>> + power-domains = <&pwrc PWRC_C3_ISP_TOP_ID>;
>> + clocks = <&clkc_periphs CLKID_VAPB>,
>> + <&clkc_periphs CLKID_ISP0>;
>> + clock-names = "vapb", "isp0";
>> + assigned-clocks = <&clkc_periphs CLKID_VAPB>,
>> + <&clkc_periphs CLKID_ISP0>;
>> + assigned-clock-rates = <0>, <400000000>;
>> + interrupts = <GIC_SPI 145 IRQ_TYPE_EDGE_RISING>;
>> + status = "disabled";
>> +
>> + port {
>> + c3_isp_in: endpoint {
>> + remote-endpoint = <&c3_adap_out>;
>> + };
>> + };
>> + };
>> };
>> };
>>
>> ---
>> base-commit: 84b92a499e7eca54ba1df6f6c6e01766025943f1
>> change-id: 20250731-b4-c3isp-16531391a1cb
>>
>> Best regards,
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH RESEND] dts: arm64: amlogic: Add ISP related nodes for C3
2025-09-18 8:35 [PATCH RESEND] dts: arm64: amlogic: Add ISP related nodes for C3 Keke Li via B4 Relay
2025-09-19 14:43 ` Neil Armstrong
@ 2025-10-21 12:29 ` Neil Armstrong
1 sibling, 0 replies; 4+ messages in thread
From: Neil Armstrong @ 2025-10-21 12:29 UTC (permalink / raw)
To: Kevin Hilman, Jerome Brunet, Martin Blumenstingl, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Keke Li
Cc: linux-arm-kernel, linux-amlogic, devicetree, linux-kernel
Hi,
On Thu, 18 Sep 2025 16:35:09 +0800, Keke Li wrote:
> Add the IMX290 sensor node description to the device tree file,
> which will be controlled via I2C bus with image data transmission
> through MIPI CSI-2 interface.
>
> Add CSI-2, adapter and ISP nodes for C3 family.
>
>
> [...]
Thanks, Applied to https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux.git (v6.19/arm64-dt)
[1/1] dts: arm64: amlogic: Add ISP related nodes for C3
https://git.kernel.org/amlogic/c/63aa70a1f84f5dfabbac28d60e12949705876648
These changes has been applied on the intermediate git tree [1].
The v6.19/arm64-dt branch will then be sent via a formal Pull Request to the Linux SoC maintainers
for inclusion in their intermediate git branches in order to be sent to Linus during
the next merge window, or sooner if it's a set of fixes.
In the cases of fixes, those will be merged in the current release candidate
kernel and as soon they appear on the Linux master branch they will be
backported to the previous Stable and Long-Stable kernels [2].
The intermediate git branches are merged daily in the linux-next tree [3],
people are encouraged testing these pre-release kernels and report issues on the
relevant mailing-lists.
If problems are discovered on those changes, please submit a signed-off-by revert
patch followed by a corrective changeset.
[1] https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux.git
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
[3] https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
--
Neil
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2025-10-21 12:29 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-18 8:35 [PATCH RESEND] dts: arm64: amlogic: Add ISP related nodes for C3 Keke Li via B4 Relay
2025-09-19 14:43 ` Neil Armstrong
2025-09-22 8:43 ` Keke Li
2025-10-21 12:29 ` Neil Armstrong
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).