dts: add arm isp device node [1/1]

PD#SWPL-70

Problem:
arm isp driver need to use dts

Solution:
add arm isp device node

Verify:
w400

Test: camera preview and capture OK

Change-Id: Idc603890f07afe25beba5deab3ab391825aee584
Signed-off-by: Keke Li <keke.li@amlogic.com>
This commit is contained in:
keke.li
2019-03-19 13:46:35 +08:00
committed by Tao Zeng
parent 15c18af09e
commit 509072787d
4 changed files with 264 additions and 0 deletions

View File

@@ -158,6 +158,20 @@
alignment = <0x400000>;
linux,contiguous-region;
};
isp_cma_reserved:linux,isp_cma {
compatible = "shared-dma-pool";
reusable;
status = "okay";
size = <0x06800000>;
alignment = <0x400000>;
};
adapt_cma_reserved:linux,adapt_cma {
compatible = "shared-dma-pool";
reusable;
status = "okay";
size = <0x01800000>;
alignment = <0x400000>;
};
};
galcore {
@@ -783,9 +797,52 @@
status = "okay";
};
sensor: sensor {
compatible = "soc, sensor";
status = "okay";
sensor-name = "imx290"; /*imx290;os08a10;imx227*/
pinctrl-names="default";
pinctrl-0=<&clk12_24_z_pins>;
clocks = <&clkc CLKID_24M>;
clock-names = "g12a_24m";
reset = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>;
ir_cut_gpio = <&gpio GPIOZ_11 GPIO_ACTIVE_HIGH
&gpio GPIOZ_7 GPIO_ACTIVE_HIGH>;
};
iq: iq {
compatible = "soc, iq";
status = "okay";
sensor-name = "imx290"; /*imx290;os08a10;imx227*/
};
}; /* end of / */
&i2c2 {
status = "okay";
pinctrl-names="default";
pinctrl-0=<&i2c2_master_pins2>;
clock-frequency = <100000>; /* default 100k */
sensor-i2c@6c {
compatible = "arm, i2c-sensor";
reg = <0x6c>;
reg-names = "i2c-sensor";
slave-addr = <0x6c>;
reg-type = <2>;
reg-data-type = <1>;
link-device = <&phycsi>;
};
};
&isp {
status = "okay";
memory-region = <&isp_cma_reserved>;
};
&adapter {
status = "okay";
memory-region = <&adapt_cma_reserved>;
};
&meson_fb {
status = "okay";
display_size_default = <1920 1080 1920 2160 32>;
@@ -1213,6 +1270,13 @@
};
};
clk12_24_z_pins:clk12_24_z_pins {
mux {
groups = "clk12_24_z";
function = "clk12_24_ee";
drive-strength = <3>;
};
};
}; /* end of pinctrl_periphs */
&pinctrl_aobus {
@@ -1401,8 +1465,10 @@
};
&ethmac {
status = "okay";
/* //conflict with isp i2c
pinctrl-names = "internal_eth_pins";
pinctrl-0 = <&internal_eth_pins>;
*/
mc_val = <0x4be04>;
internal_phy=<1>;

View File

@@ -158,6 +158,20 @@
alignment = <0x400000>;
linux,contiguous-region;
};
isp_cma_reserved:linux,isp_cma {
compatible = "shared-dma-pool";
reusable;
status = "okay";
size = <0x68000000>;
alignment = <0x400000>;
};
adapt_cma_reserved:linux,adapt_cma {
compatible = "shared-dma-pool";
reusable;
status = "okay";
size = <0x01800000>;
alignment = <0x400000>;
};
};
galcore {
@@ -763,9 +777,52 @@
status = "okay";
};
sensor: sensor {
compatible = "soc, sensor";
status = "okay";
sensor-name = "imx290"; /*imx290;os08a10;imx227*/
pinctrl-names="default";
pinctrl-0=<&clk12_24_z_pins>;
clocks = <&clkc CLKID_24M>;
clock-names = "g12a_24m";
reset = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>;
ir_cut_gpio = <&gpio GPIOZ_11 GPIO_ACTIVE_HIGH
&gpio GPIOZ_7 GPIO_ACTIVE_HIGH>;
};
iq: iq {
compatible = "soc, iq";
status = "okay";
sensor-name = "imx290"; /*imx290;os08a10;imx227*/
};
}; /* end of / */
&i2c2 {
status = "okay";
pinctrl-names="default";
pinctrl-0=<&i2c2_master_pins2>;
clock-frequency = <100000>; /* default 100k */
sensor-i2c@6c {
compatible = "arm, i2c-sensor";
reg = <0x6c>;
reg-names = "i2c-sensor";
slave-addr = <0x6c>;
reg-type = <2>;
reg-data-type = <1>;
link-device = <&phycsi>;
};
};
&isp {
status = "okay";
memory-region = <&isp_cma_reserved>;
};
&adapter {
status = "okay";
memory-region = <&adapt_cma_reserved>;
};
&meson_fb {
status = "okay";
display_size_default = <1920 1080 1920 2160 32>;
@@ -1193,6 +1250,13 @@
};
};
clk12_24_z_pins:clk12_24_z_pins {
mux {
groups = "clk12_24_z";
function = "clk12_24_ee";
drive-strength = <3>;
};
};
}; /* end of pinctrl_periphs */
&pinctrl_aobus {
@@ -1381,8 +1445,10 @@
};
&ethmac {
status = "okay";
/* //conflict with isp i2c
pinctrl-names = "internal_eth_pins";
pinctrl-0 = <&internal_eth_pins>;
*/
mc_val = <0x4be04>;
internal_phy=<1>;

View File

@@ -160,6 +160,20 @@
alignment = <0x400000>;
linux,contiguous-region;
};
isp_cma_reserved:linux,isp_cma {
compatible = "shared-dma-pool";
reusable;
status = "okay";
size = <0x06800000>;
alignment = <0x400000>;
};
adapt_cma_reserved:linux,adapt_cma {
compatible = "shared-dma-pool";
reusable;
status = "okay";
size = <0x01800000>;
alignment = <0x400000>;
};
};
galcore {
status = "okay";
@@ -784,9 +798,52 @@
status = "okay";
};
sensor: sensor {
compatible = "soc, sensor";
status = "okay";
sensor-name = "imx290"; /*imx290;os08a10;imx227*/
pinctrl-names="default";
pinctrl-0=<&clk12_24_z_pins>;
clocks = <&clkc CLKID_24M>;
clock-names = "g12a_24m";
reset = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>;
ir_cut_gpio = <&gpio GPIOZ_11 GPIO_ACTIVE_HIGH
&gpio GPIOZ_7 GPIO_ACTIVE_HIGH>;
};
iq: iq {
compatible = "soc, iq";
status = "okay";
sensor-name = "imx290"; /*imx290;os08a10;imx227*/
};
}; /* end of / */
&i2c2 {
status = "okay";
pinctrl-names="default";
pinctrl-0=<&i2c2_master_pins2>;
clock-frequency = <100000>; /* default 100k */
sensor-i2c@6c {
compatible = "arm, i2c-sensor";
reg = <0x6c>;
reg-names = "i2c-sensor";
slave-addr = <0x6c>;
reg-type = <2>;
reg-data-type = <1>;
link-device = <&phycsi>;
};
};
&isp {
status = "okay";
memory-region = <&isp_cma_reserved>;
};
&adapter {
status = "okay";
memory-region = <&adapt_cma_reserved>;
};
&meson_fb {
status = "okay";
display_size_default = <1920 1080 1920 2160 32>;
@@ -1214,6 +1271,13 @@
};
};
clk12_24_z_pins:clk12_24_z_pins {
mux {
groups = "clk12_24_z";
function = "clk12_24_ee";
drive-strength = <3>;
};
};
}; /* end of pinctrl_periphs */
&pinctrl_aobus {
@@ -1402,8 +1466,10 @@
};
&ethmac {
status = "okay";
/* //conflict with isp i2c
pinctrl-names = "internal_eth_pins";
pinctrl-0 = <&internal_eth_pins>;
*/
mc_val = <0x4be04>;
internal_phy=<1>;

View File

@@ -160,6 +160,20 @@
alignment = <0x400000>;
linux,contiguous-region;
};
isp_cma_reserved:linux,isp_cma {
compatible = "shared-dma-pool";
reusable;
status = "okay";
size = <0x68000000>;
alignment = <0x400000>;
};
adapt_cma_reserved:linux,adapt_cma {
compatible = "shared-dma-pool";
reusable;
status = "okay";
size = <0x01800000>;
alignment = <0x400000>;
};
};
galcore {
status = "okay";
@@ -764,9 +778,52 @@
status = "okay";
};
sensor: sensor {
compatible = "soc, sensor";
status = "okay";
sensor-name = "imx290"; /*imx290;os08a10;imx227*/
pinctrl-names="default";
pinctrl-0=<&clk12_24_z_pins>;
clocks = <&clkc CLKID_24M>;
clock-names = "g12a_24m";
reset = <&gpio GPIOZ_12 GPIO_ACTIVE_HIGH>;
ir_cut_gpio = <&gpio GPIOZ_11 GPIO_ACTIVE_HIGH
&gpio GPIOZ_7 GPIO_ACTIVE_HIGH>;
};
iq: iq {
compatible = "soc, iq";
status = "okay";
sensor-name = "imx290"; /*imx290;os08a10;imx227*/
};
}; /* end of / */
&i2c2 {
status = "okay";
pinctrl-names="default";
pinctrl-0=<&i2c2_master_pins2>;
clock-frequency = <100000>; /* default 100k */
sensor-i2c@6c {
compatible = "arm, i2c-sensor";
reg = <0x6c>;
reg-names = "i2c-sensor";
slave-addr = <0x6c>;
reg-type = <2>;
reg-data-type = <1>;
link-device = <&phycsi>;
};
};
&isp {
status = "okay";
memory-region = <&isp_cma_reserved>;
};
&adapter {
status = "okay";
memory-region = <&adapt_cma_reserved>;
};
&meson_fb {
status = "okay";
display_size_default = <1920 1080 1920 2160 32>;
@@ -1194,6 +1251,13 @@
};
};
clk12_24_z_pins:clk12_24_z_pins {
mux {
groups = "clk12_24_z";
function = "clk12_24_ee";
drive-strength = <3>;
};
};
}; /* end of pinctrl_periphs */
&pinctrl_aobus {
@@ -1382,8 +1446,10 @@
};
&ethmac {
status = "okay";
/* //conflict with isp i2c
pinctrl-names = "internal_eth_pins";
pinctrl-0 = <&internal_eth_pins>;
*/
mc_val = <0x4be04>;
internal_phy=<1>;