From 833c830a886afc0354307890ff5ffd13787ce759 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Sat, 25 May 2024 08:30:53 +0000 Subject: [PATCH] Sat May 25 08:30:08 UTC 2024 Kernel update --- .../sun55i-t527-longanpi-4b-pcie.dts | 3440 +--------------- .../sun55i-t527-longanpi-4b-usb3.dts | 3445 +---------------- .../allwinner/sun55i-t527-longanpi-4b.dtsi | 3437 ++++++++++++++++ 3 files changed, 3448 insertions(+), 6874 deletions(-) create mode 100644 arch/arm64/boot/dts/allwinner/sun55i-t527-longanpi-4b.dtsi diff --git a/arch/arm64/boot/dts/allwinner/sun55i-t527-longanpi-4b-pcie.dts b/arch/arm64/boot/dts/allwinner/sun55i-t527-longanpi-4b-pcie.dts index d376254332..3b283bd9e5 100644 --- a/arch/arm64/boot/dts/allwinner/sun55i-t527-longanpi-4b-pcie.dts +++ b/arch/arm64/boot/dts/allwinner/sun55i-t527-longanpi-4b-pcie.dts @@ -4,2567 +4,11 @@ /dts-v1/; -#include "sun55i-t527.dtsi" +#include "sun55i-t527-longanpi-4b.dtsi" /{ - board = "T527", "T527-LM4B"; + board = "T527", "T527-LM4B(PCIE Mode)"; compatible = "allwinner,t527", "arm,sun55iw3p1", "Sipeed,T527-LM4B"; - - aliases { - pmu0 = &pmu0; - serial0 = &uart0; - hdmi = &hdmi; - reg-axp1530 = ®_ext_axp1530_dcdc1; - axp1530 = &axp1530; - cpu-ext = &cpu4; - standby-param = &standby_param; - arisc-config = &arisc_config; - cir_param = &cir_param; - }; - - reg_usb0_vbus: usb0-vbus { - compatible = "regulator-fixed"; - regulator-name = "usb0-vbus"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - regulator-enable-ramp-delay = <1000>; - gpio = <&pio PB 12 GPIO_ACTIVE_HIGH>; - enable-active-high; - }; - - reg_usb1_vbus: usb1-vbus { - compatible = "regulator-fixed"; - regulator-name = "usb1-vbus"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - regulator-enable-ramp-delay = <1000>; - gpio = <&pio PB 3 GPIO_ACTIVE_HIGH>; - enable-active-high; - }; - - standby_param: standby_param { - vdd-cpu = <0x00000001>; - vdd-cpub = <0x00000001>; - vdd-sys = <0x00000002>; - vcc-pll = <0x00000080>; - vcc-io = <0x00004000>; - - osc24m-on = <0x0>; - }; - - cir_param: cir_param { - gpio_group = <1>; /* 0:PL 1:PM */ - gpio_pin = <11>; - gpio_function = <2>; - count = <15>; - ir_power_key_code0 = <0x40>; - ir_addr_code0 = <0xfe01>; - ir_power_key_code1 = <0x1a>; - ir_addr_code1 = <0xfb04>; - ir_power_key_code2 = <0xf2>; - ir_addr_code2 = <0x2992>; - ir_power_key_code3 = <0x57>; - ir_addr_code3 = <0x9f00>; - ir_power_key_code4 = <0xdc>; - ir_addr_code4 = <0x4cb3>; - ir_power_key_code5 = <0x18>; - ir_addr_code5 = <0xff00>; - ir_power_key_code6 = <0xdc>; - ir_addr_code6 = <0xdd22>; - ir_power_key_code7 = <0x0d>; - ir_addr_code7 = <0xbc00>; - ir_power_key_code8 = <0x4d>; - ir_addr_code8 = <0x4040>; - ir_power_key_code9 = <0x08>; - ir_addr_code9 = <0xfb04>; - ir_power_key_code10 = <0x00>; - ir_addr_code10 = <0xfc03>; - ir_power_key_code11 = <0x00>; - ir_addr_code11 = <0xbf00>; - ir_power_key_code12 = <0xea>; - ir_addr_code12 = <0xfb04>; - ir_power_key_code13 = <0x42>; - ir_addr_code13 = <0xbf00>; - ir_power_key_code14 = <0x0f>; - ir_addr_code14 = <0xff00>; - }; - - arisc_config: arisc_config { - s_uart_config { - pins = "PL2", "PL3"; - function = <2>, <2>; - status = "disabled"; - }; - }; - - reserved-memory { - dsp0ddr_reserved: dsp0ddr@4a000000 { - reg = <0x0 0x4a000000 0x0 0x00a00000>; - no-map; - }; - - riscvsram0_reserved: riscvsram0@7280000 { - reg = <0x0 0x07280000 0x0 0x40000>; - no-map; - }; - - riscvsram1_reserved: riscvsram1@72c0000 { - reg = <0x0 0x072c0000 0x0 0x40000>; - no-map; - }; - - /* - * The name should be "vdev%dbuffer". - * Its size should be not less than - * RPMSG_BUF_SIZE * (num of buffers in a vring) * 2 - * = 512 * (num of buffers in a vring) * 2 - */ - dsp_vdev0buffer: vdev0buffer@4ac00000 { - compatible = "shared-dma-pool"; - reg = <0x0 0x4ac00000 0x0 0x40000>; - no-map; - }; - - /* - * The name should be "vdev%dvring%d". - * The size of each should be not less than - * PAGE_ALIGN(vring_size(num, align)) - * = PAGE_ALIGN(16 * num + 6 + 2 * num + (pads for align) + 6 + 8 * num) - * - * (Please refer to the vring layout in include/uapi/linux/virtio_ring.h) - */ - dsp_vdev0vring0: vdev0vring0@4ac40000 { - reg = <0x0 0x4ac40000 0x0 0x2000>; - no-map; - }; - dsp_vdev0vring1: vdev0vring1@4ac42000 { - reg = <0x0 0x4ac42000 0x0 0x2000>; - no-map; - }; - - /* - * The name should be "vdev%dbuffer". - * Its size should be not less than - * RPMSG_BUF_SIZE * (num of buffers in a vring) * 2 - * = 512 * (num of buffers in a vring) * 2 - */ - rv_vdev0buffer: vdev0buffer@4ae00000 { - compatible = "shared-dma-pool"; - reg = <0x0 0x4ae00000 0x0 0x40000>; - no-map; - }; - - /* - * The name should be "vdev%dvring%d". - * The size of each should be not less than - * PAGE_ALIGN(vring_size(num, align)) - * = PAGE_ALIGN(16 * num + 6 + 2 * num + (pads for align) + 6 + 8 * num) - * - * (Please refer to the vring layout in include/uapi/linux/virtio_ring.h) - */ - rv_vdev0vring0: vdev0vring0@4ae40000 { - reg = <0x0 0x4ae40000 0x0 0x2000>; - no-map; - }; - rv_vdev0vring1: vdev0vring1@4ae42000 { - reg = <0x0 0x4ae42000 0x0 0x2000>; - no-map; - }; - - /* - * mcu ram addr - */ - mcu0iram_reserved: mcu0iram@20000 { - reg = <0x0 0x20000 0x0 0x10000>; - no-map; - }; - mcu0dram0_reserved: mcu0dram0@30000 { - reg = <0x0 0x30000 0x0 0x8000>; - no-map; - }; - mcu0dram1_reserved: mcu0dram1@38000 { - reg = <0x0 0x38000 0x0 0x8000>; - no-map; - }; - - dsp0_rpbuf_reserved: dsp0_rpbuf@4ae44000 { - compatible = "shared-dma-pool"; - no-map; - reg = <0x0 0x4ae44000 0x0 0x8000>; - }; - - dsp_share_space@4ab00000 { - no-map; - reg = <0x0 0x4ab00000 0x0 0x10000>; - }; - }; - - rpbuf_controller0: rpbuf_controller@0 { - compatible = "allwinner,rpbuf-controller"; - remoteproc = <&dsp0_rproc>; - ctrl_id = <0>; - memory-region = <&dsp0_rpbuf_reserved>; - status = "okay"; - }; - - edp_panel_backlight: edp_backlight { - compatible = "pwm-backlight"; - status = "disabled"; - brightness-levels = < - 0 1 2 3 4 5 6 7 - 8 9 10 11 12 13 14 15 - 16 17 18 19 20 21 22 23 - 24 25 26 27 28 29 30 31 - 32 33 34 35 36 37 38 39 - 40 41 42 43 44 45 46 47 - 48 49 50 51 52 53 54 55 - 56 57 58 59 60 61 62 63 - 64 65 66 67 68 69 70 71 - 72 73 74 75 76 77 78 79 - 80 81 82 83 84 85 86 87 - 88 89 90 91 92 93 94 95 - 96 97 98 99 100 101 102 103 - 104 105 106 107 108 109 110 111 - 112 113 114 115 116 117 118 119 - 120 121 122 123 124 125 126 127 - 128 129 130 131 132 133 134 135 - 136 137 138 139 140 141 142 143 - 144 145 146 147 148 149 150 151 - 152 153 154 155 156 157 158 159 - 160 161 162 163 164 165 166 167 - 168 169 170 171 172 173 174 175 - 176 177 178 179 180 181 182 183 - 184 185 186 187 188 189 190 191 - 192 193 194 195 196 197 198 199 - 200 201 202 203 204 205 206 207 - 208 209 210 211 212 213 214 215 - 216 217 218 219 220 221 222 223 - 224 225 226 227 228 229 230 231 - 232 233 234 235 236 237 238 239 - 240 241 242 243 244 245 246 247 - 248 249 250 251 252 253 254 255>; - default-brightness-level = <200>; - enable-gpios = <&pio PI 5 GPIO_ACTIVE_HIGH>; - /* power-supply = <®_backlight_12v>; */ - pwms = <&pwm0 5 5000000 0>; - }; - - edp_panel: edp_panel { - compatible = "edp-general-panel"; - status = "okay"; - power0-supply = <®_dcdc4>; - - backlight = <&edp_panel_backlight>; - - panel-timing { - clock-frequency = <348577920>; /* pixel clock */ - hactive = <2560>; - hback-porch = <120>; - hfront-porch = <88>; - hsync-len = <32>; - vactive = <1600>; - vback-porch = <71>; - vfront-porch = <28>; - vsync-len = <5>; - /* hor_sync_polarity */ - hsync-active = <1>; - /* ver_sync_polarity */ - vsync-active = <1>; - - // unused now - /* - de-active = <1>; - pixelclk-active = <1>; - syncclk-active = <0>; - interlaced; - doublescan; - doubleclk; - */ - }; - ports { - #address-cells = <1>; - #size-cells = <0>; - panel_in: port@0 { - #address-cells = <1>; - #size-cells = <0>; - reg = <0>; - edp_panel_in: endpoint@0 { - reg = <0>; - remote-endpoint = <&edp_panel_out>; - }; - }; - }; - }; - - lvds_panel0_backlight: backlight0 { - compatible = "pwm-backlight"; - status = "okay"; - brightness-levels = < - 0 1 2 3 4 5 6 7 - 8 9 10 11 12 13 14 15 - 16 17 18 19 20 21 22 23 - 24 25 26 27 28 29 30 31 - 32 33 34 35 36 37 38 39 - 40 41 42 43 44 45 46 47 - 48 49 50 51 52 53 54 55 - 56 57 58 59 60 61 62 63 - 64 65 66 67 68 69 70 71 - 72 73 74 75 76 77 78 79 - 80 81 82 83 84 85 86 87 - 88 89 90 91 92 93 94 95 - 96 97 98 99 100 101 102 103 - 104 105 106 107 108 109 110 111 - 112 113 114 115 116 117 118 119 - 120 121 122 123 124 125 126 127 - 128 129 130 131 132 133 134 135 - 136 137 138 139 140 141 142 143 - 144 145 146 147 148 149 150 151 - 152 153 154 155 156 157 158 159 - 160 161 162 163 164 165 166 167 - 168 169 170 171 172 173 174 175 - 176 177 178 179 180 181 182 183 - 184 185 186 187 188 189 190 191 - 192 193 194 195 196 197 198 199 - 200 201 202 203 204 205 206 207 - 208 209 210 211 212 213 214 215 - 216 217 218 219 220 221 222 223 - 224 225 226 227 228 229 230 231 - 232 233 234 235 236 237 238 239 - 240 241 242 243 244 245 246 247 - 248 249 250 251 252 253 254 255>; - default-brightness-level = <200>; - enable-gpios = <&pio PI 2 GPIO_ACTIVE_HIGH>; - pwms = <&pwm0 4 50000 0>; - }; - - lvds_panel0: panel@0 { - compatible = "BP101WX1"; - status = "okay"; - reg = <0>; - power0-supply = <®_cldo3>; - power1-supply = <®_dcdc4>; - power2-supply = <®_cldo1>; - - backlight = <&lvds_panel0_backlight>; - - lcd_if = <3>; - lcd_width = <150>; - lcd_height = <94>; - - pinctrl-0 = <&lvds0_pins_a>; - pinctrl-1 = <&lvds0_pins_b>; - pinctrl-names = "active","sleep"; - - panel-timing { - clock-frequency = <74871600>; /* pixel clock */ - hback-porch = <88>; - hactive = <1280>; - hfront-porch = <83>; - hsync-len = <18>; - vback-porch = <23>; - vactive = <800>; - vfront-porch = <37>; - vsync-len = <10>; - - // unused now - /* - hsync-active = <0>; - vsync-active = <0>; - de-active = <1>; - pixelclk-active = <1>; - */ - }; - ports { - #address-cells = <1>; - #size-cells = <0>; - lvds_panel0_in: port@0 { - #address-cells = <1>; - #size-cells = <0>; - reg = <0>; - lvds_panel0_in_lcd0: endpoint@0 { - reg = <0>; - remote-endpoint = <&tcon0_out_panel>; - }; - }; - }; - }; - - lvds_panel1: panel@1 { - compatible = "BP101WX1"; - status = "disabled"; - reg = <1>; - power0-supply = <®_cldo3>; - power1-supply = <®_dcdc4>; - - backlight = <&lvds_panel1_backlight>; - - lcd_if = <3>; - lcd_width = <150>; - lcd_height = <94>; - - pinctrl-0 = <&lvds2_pins_a>; - pinctrl-1 = <&lvds2_pins_b>; - pinctrl-names = "active","sleep"; - - panel-timing { - clock-frequency = <74871600>; /* pixel clock */ - hback-porch = <88>; - hactive = <1280>; - hfront-porch = <83>; - hsync-len = <18>; - vback-porch = <23>; - vactive = <800>; - vfront-porch = <37>; - vsync-len = <10>; - // unused now - /* - hsync-active = <0>; - vsync-active = <0>; - de-active = <1>; - pixelclk-active = <1>; - */ - }; - ports { - #address-cells = <1>; - #size-cells = <0>; - lvds_panel1_in: port@0 { - #address-cells = <1>; - #size-cells = <0>; - reg = <0>; - lvds_panel1_in_lcd2: endpoint@0 { - reg = <0>; - remote-endpoint = <&tcon4_out_panel>; - }; - }; - }; - }; - - lvds_panel1_backlight: backlight1 { - compatible = "pwm-backlight"; - status = "disabled"; - brightness-levels = < - 0 1 2 3 4 5 6 7 - 8 9 10 11 12 13 14 15 - 16 17 18 19 20 21 22 23 - 24 25 26 27 28 29 30 31 - 32 33 34 35 36 37 38 39 - 40 41 42 43 44 45 46 47 - 48 49 50 51 52 53 54 55 - 56 57 58 59 60 61 62 63 - 64 65 66 67 68 69 70 71 - 72 73 74 75 76 77 78 79 - 80 81 82 83 84 85 86 87 - 88 89 90 91 92 93 94 95 - 96 97 98 99 100 101 102 103 - 104 105 106 107 108 109 110 111 - 112 113 114 115 116 117 118 119 - 120 121 122 123 124 125 126 127 - 128 129 130 131 132 133 134 135 - 136 137 138 139 140 141 142 143 - 144 145 146 147 148 149 150 151 - 152 153 154 155 156 157 158 159 - 160 161 162 163 164 165 166 167 - 168 169 170 171 172 173 174 175 - 176 177 178 179 180 181 182 183 - 184 185 186 187 188 189 190 191 - 192 193 194 195 196 197 198 199 - 200 201 202 203 204 205 206 207 - 208 209 210 211 212 213 214 215 - 216 217 218 219 220 221 222 223 - 224 225 226 227 228 229 230 231 - 232 233 234 235 236 237 238 239 - 240 241 242 243 244 245 246 247 - 248 249 250 251 252 253 254 255>; - default-brightness-level = <200>; - enable-gpios = <&pio PI 5 GPIO_ACTIVE_HIGH>; - pwms = <&pwm0 5 5000000 0>; - }; -}; - -&de { - chn_cfg_mode = <3>; - status = "okay"; -}; - -&vo0 { - status = "okay"; -}; - -&vo1 { - status = "okay"; -}; - -/* HDMI DRM */ -&tv0 { - status = "okay"; -}; - -&dlcd0 { - status = "okay"; - panel = <&lvds_panel0>; - ports { - tcon0_out: port@1 { - tcon0_out_panel: endpoint@2 { - reg = <2>; - remote-endpoint = <&lvds_panel0_in_lcd0>; - }; - }; - }; - -}; - -&dlcd2 { - status = "disabled"; - panel = <&lvds_panel1>; - ports { - tcon4_out: port@1 { - tcon4_out_panel: endpoint@0 { - reg = <0>; - remote-endpoint = <&lvds_panel1_in_lcd2>; - }; - }; - }; -}; - -&dsi0combophy { - status = "okay"; -}; - -&dsi1combophy { - status = "okay"; -}; - -&drm_edp { - status = "disabled"; - - edp_ssc_en = <0>; - edp_ssc_mode = <0>; - edp_psr_support = <0>; - edp_colordepth = <8>; /* 6/8/10/12/16 */ - edp_color_fmt = <0>; /* 0:RGB 1: YUV444 2: YUV422 */ - - lane1_sw = <0>; - lane1_pre = <0>; - lane2_sw = <0>; - lane2_pre = <0>; - lane3_sw = <0>; - lane3_pre = <0>; - efficient_training = <0>; - - sink_capacity_prefer = <1>; - edid_timings_prefer = <1>; - timings_fixed = <1>; - - vcc-edp-supply = <®_bldo3>; - vdd-edp-supply = <®_dcdc2>; - panel = <&edp_panel>; - ports { - edp_out: port@1 { - edp_panel_out: endpoint@0 { - reg = <0>; - remote-endpoint = <&edp_panel_in>; - }; - }; - }; -}; - -&r_pio { - uart8_pins_a: uart8_pins@0 { - pins = "PL2", "PL3"; - function = "s_uart0"; - }; - - uart8_pins_b: uart8_pins@1 { - pins = "PL2", "PL3"; - function = "gpio_in"; - }; - - uart9_pins_a: uart9_pins@0 { - pins = "PM0", "PM1"; - function = "s_uart1"; - }; - - uart9_pins_b: uart9_pins@1 { - pins = "PM0", "PM1"; - function = "gpio_in"; - }; - - s_twi0_pins_default: s_twi0@0 { - pins = "PL0", "PL1"; - function = "s_twi0"; - drive-strength = <10>; - bias-pull-up; - }; - - s_twi0_pins_sleep: s_twi0@1 { - pins = "PL0", "PL1"; - function = "gpio_in"; - }; - - s_twi1_pins_default: s_twi1@0 { - pins = "PL8", "PL9"; - function = "s_twi1"; - drive-strength = <10>; - bias-pull-up; - }; - - s_twi1_pins_sleep: s_twi1@1 { - pins = "PL8", "PL9"; - function = "gpio_in"; - }; - - s_twi2_pins_default: s_twi2@0 { - pins = "PL12", "PL13"; - function = "s_twi2"; - drive-strength = <10>; - bias-pull-up; - }; - - s_twi2_pins_sleep: s_twi2@1 { - pins = "PL12", "PL13"; - function = "gpio_in"; - }; - - s_irrx_pins_default: s_irrx@0 { - pins = "PL11"; - function = "s_cir"; - }; - - s_irrx_pins_sleep: s_irrx@1 { - pins = "PL11"; - function = "gpio_in"; - }; -}; - -&pio { - vcc-pg-supply = <®_pio1_8>; - vcc-pf-supply = <®_pio1_8>; - vcc-pfo-supply = <®_pio3_3>; - vcc-pd-supply = <®_dcdc4>; - vcc-pe-supply = <®_pio1_8>; - vcc-pi-supply = <®_dcdc4>; - vcc-pj-supply = <®_dcdc4>; - vcc-pk-supply = <®_dcdc4>; - uart0_pins_a: uart0_pins@0 { - pins = "", ""; - function = "uart0"; - }; - - uart0_pins_b: uart0_pins@1 { - pins = "", ""; - function = "gpio_in"; - }; - - uart2_pins_a: uart2_pins@0 { - pins = "PB0", "PB1"; - function = "uart2"; - }; - - uart2_pins_b: uart2_pins@1 { - pins = "PB0", "PB1"; - function = "gpio_in"; - }; - - uart3_pins_a: uart3_pins@0 { - pins = "PD14", "PD15"; - function = "uart3"; - }; - - uart3_pins_b: uart3_pins@1 { - pins = "PD14", "PD15"; - function = "gpio_in"; - }; - - uart4_pins_a: uart4_pins@0 { - pins = "PD18", "PD19"; - function = "uart4"; - }; - - uart4_pins_b: uart4_pins@1 { - pins = "PD18", "PD19"; - function = "gpio_in"; - }; - - uart5_pins_a: uart5_pins@0 { - pins = "PE11", "PE12"; - function = "uart5"; - }; - - uart5_pins_b: uart5_pins@1 { - pins = "PE11", "PE12"; - function = "gpio_in"; - }; - - uart6_pins_a: uart6_pins@0 { - pins = "PI6", "PI7"; - function = "uart6"; - }; - - uart6_pins_b: uart6_pins@1 { - pins = "PI6", "PI7"; - function = "gpio_in"; - }; - - uart7_pins_a: uart7_pins@0 { - pins = "PB11", "PB12"; - function = "uart7"; - }; - - uart7_pins_b: uart7_pins@1 { - pins = "PB11", "PB12"; - function = "gpio_in"; - }; - - pwm0_0_pin_active: pwm0_0@0 { - pins = "PD23"; - function = "pwm0_0"; - }; - - pwm0_0_pin_sleep: pwm0_0@1 { - pins = "PD23"; - function = "gpio_in"; - bias-pull-down; - }; - - pwm0_1_pin_active: pwm0_1@0 { - pins = "PD22"; - function = "pwm0_1"; - }; - - pwm0_1_pin_sleep: pwm0_1@1 { - pins = "PD22"; - function = "gpio_in"; - bias-pull-down; - }; - - pwm0_2_pin_active: pwm0_2@0 { - pins = "PB11"; - function = "pwm0_2"; - }; - - pwm0_2_pin_sleep: pwm0_2@1 { - pins = "PB11"; - function = "gpio_in"; - bias-pull-down; - }; - - pwm0_3_pin_active: pwm0_3@0 { - pins = "PB12"; - function = "pwm0_3"; - }; - - pwm0_3_pin_sleep: pwm0_3@1 { - pins = "PB12"; - function = "gpio_in"; - bias-pull-down; - }; - - pwm0_4_pin_active: pwm0_4@0 { - pins = "PI3"; - function = "pwm0_4"; - }; - - pwm0_4_pin_sleep: pwm0_4@1 { - pins = "PI3"; - function = "gpio_in"; - bias-pull-down; - }; - - pwm0_5_pin_active: pwm0_5@0 { - pins = "PI4"; - function = "pwm0_5"; - }; - - pwm0_5_pin_sleep: pwm0_5@1 { - pins = "PI4"; - function = "gpio_in"; - bias-pull-down; - }; - - ledc_pins_a: ledc@0 { - pins = "PG0"; - function = "ledc"; - drive-strength = <10>; - }; - - ledc_pins_b: ledc@1 { - pins = "PG0"; - function = "gpio_in"; - }; - - irrx_pins_default: irrx@0 { - pins = "PI8"; - function = "cir"; - }; - - irrx_pins_sleep: irrx@1 { - pins = "PI8"; - function = "gpio_in"; - }; - - irtx_pins_default: irtx@0 { - pins = "PH18"; - function = "cir"; - }; - - irtx_pins_sleep: irtx@1 { - pins = "PH18"; - function = "gpio_in"; - }; - - twi0_pins_default: twi0@0 { - pins = "PD22", "PD23"; - function = "twi0"; - drive-strength = <10>; - bias-pull-up; - }; - - twi0_pins_sleep: twi0@1 { - pins = "PD22", "PD23"; - function = "gpio_in"; - }; - - twi1_pins_default: twi1@0 { - pins = "PL8", "PL9"; - function = "twi1"; - drive-strength = <10>; - bias-pull-up; - }; - - twi1_pins_sleep: twi1@1 { - pins = "PL8", "PL9"; - function = "gpio_in"; - }; - - twi2_pins_default: twi2@0 { - pins = "PE1", "PE2"; - function = "twi2"; - drive-strength = <20>; - bias-pull-up; - }; - - twi2_pins_sleep: twi2@1 { - pins = "PE1", "PE2"; - function = "gpio_in"; - }; - - twi3_pins_default: twi3@0 { - pins = "PE3", "PE4"; - function = "twi3"; - drive-strength = <20>; - bias-pull-up; - }; - - twi3_pins_sleep: twi3@1 { - pins = "PE3", "PE4"; - function = "gpio_in"; - }; - - twi4_pins_default: twi4@0 { - pins = "PE13", "PE14"; - function = "twi4"; - drive-strength = <10>; - bias-pull-up; - }; - - twi4_pins_sleep: twi4@1 { - pins = "PE13", "PE14"; - function = "gpio_in"; - }; - - twi5_pins_default: twi5@0 { - pins = "PI8", "PI9"; - function = "twi5"; - drive-strength = <10>; - bias-pull-up; - }; - - twi5_pins_sleep: twi5@1 { - pins = "PI8", "PI9"; - function = "gpio_in"; - }; - - owa_pins_a: owa@0 { - pins = "PI10"; - function = "owa"; - drive-strength = <20>; - bias-disable; - }; - - owa_pins_b: owa@1 { - pins = "PI10"; - function = "io_disabled"; - drive-strength = <20>; - bias-disable; - }; - - i2s0_pins_a: i2s0@0 { - pins = "PB4", "PB5", "PB6"; - function = "i2s0"; - drive-strength = <20>; - bias-disable; - }; - - i2s0_pins_b: i2s0@1 { - pins = "PB4", "PB5", "PB6", "PB7", "PB8"; - function = "io_disabled"; - drive-strength = <20>; - bias-disable; - }; - - i2s0_pins_c: i2s0@2 { - pins = "PB7"; - function = "i2s0_dout"; - drive-strength = <20>; - bias-disable; - }; - - i2s0_pins_d: i2s0@3 { - pins = "PB8"; - function = "i2s0_din"; - drive-strength = <20>; - bias-disable; - }; - - i2s1_pins_a: i2s1@0 { - pins = "PG10", "PG11", "PG12"; - function = "i2s1"; - drive-strength = <20>; - bias-disable; - }; - - i2s1_pins_b: i2s1@1 { - pins = "PG10", "PG11", "PG12", "PG13", "PG14"; - function = "io_disabled"; - drive-strength = <20>; - bias-disable; - }; - - i2s1_pins_c: i2s1@2 { - pins = "PG13"; - function = "i2s1_dout"; - drive-strength = <20>; - bias-disable; - }; - - i2s1_pins_d: i2s1@3 { - pins = "PG14"; - function = "i2s1_din"; - drive-strength = <20>; - bias-disable; - }; - - i2s2_pins_a: i2s2@0 { - pins = "PH9", "PH10"; - function = "i2s2"; - drive-strength = <20>; - bias-disable; - }; - - i2s2_pins_b: i2s2@1 { - pins = "PH2", "PH3", "PH8", "PH9", "PH10", "PH11", "PH12"; - function = "io_disabled"; - drive-strength = <20>; - bias-disable; - }; - - i2s2_pins_c: i2s2@2 { - pins = "PH2", "PH3", "PH12"; - function = "i2s2_din"; - drive-strength = <20>; - bias-disable; - }; - - i2s2_pins_d: i2s2@3 { - pins = "PH11"; - function = "i2s2_dout"; - drive-strength = <20>; - bias-disable; - }; - - i2s2_pins_e: i2s2@4 { - pins = "PH8"; - function = "i2s2_mclk"; - drive-strength = <20>; - bias-disable; - }; - - i2s3_pins_a: i2s3@0 { - pins = "PF3", "PF5", "PF6"; - function = "i2s3"; - drive-strength = <20>; - bias-disable; - }; - - i2s3_pins_b: i2s3@1 { - pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6"; - function = "io_disabled"; - drive-strength = <20>; - bias-disable; - }; - - i2s3_pins_c: i2s3@2 { - pins = "PF0", "PF2", "PF4"; - function = "i2s3_din"; - drive-strength = <20>; - bias-disable; - }; - - i2s3_pins_d: i2s3@3 { - pins = "PF1"; - function = "i2s3_dout"; - drive-strength = <20>; - bias-disable; - }; - - rgb24_pins_a: rgb24@0 { - pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", \ - "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", \ - "PD20", "PD21", "PD22","PD23","PD24","PD25","PD26","PD27"; - function = "dpss"; - drive-strength = <30>; - }; - - rgb24_pins_b: rgb24@1 { - pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", \ - "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", \ - "PD20", "PD21", "PD22", "PD23","PD24","PD25","PD26","PD27"; - function = "gpio_in"; - }; - - lvds0_pins_a: lvds0@0 { - pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9"; - function = "lvds0"; - drive-strength = <30>; - }; - - lvds0_pins_b: lvds0@1 { - pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9"; - function = "gpio_in"; - }; - - gmac0_pins_default: gmac0@0 { - pins = "PH0", "PH1", "PH2", "PH3", - "PH4", "PH5", "PH6", "PH7", - "PH9", "PH10","PH13","PH14", - "PH15","PH16","PH17","PH18"; - drive-strength = <40>; - function = "gmac0"; - bias-pull-up; - }; - - gmac0_pins_sleep: gmac0@1 { - pins = "PH0", "PH1", "PH2", "PH3", - "PH4", "PH5", "PH6", "PH7", - "PH9", "PH10","PH13","PH14", - "PH15","PH16","PH17","PH18"; - function = "gpio_in"; - }; - - gmac1_pins_default: gmac1@0 { - pins = "PJ0", "PJ1", "PJ2", "PJ3", - "PJ4", "PJ5", "PJ6", "PJ7", - "PJ8", "PJ9", "PJ10", "PJ11", - "PJ12","PJ13", "PJ14", "PJ15"; - drive-strength = <40>; - function = "gmac1"; - bias-pull-up; - }; - - gmac1_pins_sleep: gmac1@1 { - pins = "PJ0", "PJ1", "PJ2", "PJ3", - "PJ4", "PJ5", "PJ6", "PJ7", - "PJ8", "PJ9", "PJ10", "PJ11", - "PJ12","PJ13", "PJ14", "PJ15"; - function = "gpio_in"; - }; -}; - -&soc { - auto_print@54321 { - reg = <0x0 0x54321 0x0 0x0>; - device_type = "auto_print"; - status = "okay"; - }; - - car_reverse: car-reverse { - compatible = "allwinner,sunxi-car-reverse"; - - /* video source setting*/ - video_channel = <0>; - video_source = <0>; - format_type = <0>; - video_source_width = <1920>; - video_source_height = <1080>; - src_size_adaptive = <1>; - /* display setting */ - overview_type = <1>; - screen_width = <1280>; - screen_height = <800>; - screen_size_adaptive = <1>; - discard_frame = <0>; - di_used = <0>; - g2d_used = <1>; - rotation = <0>; - /* auxiliary line setting */ - auxiliary_line_type = <1>; - aux_angle = <0>; - aux_lr = <0>; - reverse_int_pin = <&pio PI 15 GPIO_ACTIVE_HIGH>; - status = "disabled"; - }; - - gpio_leds { - compatible = "allwinner,sunxi-gpio-leds"; - supply-num = <1>; - gpio1-supply = <®_bldo1>; - gpio-pins = <&pio PG 10 GPIO_ACTIVE_LOW>, <&pio PC 7 GPIO_ACTIVE_LOW>; - pin-names = "normal_led", "standby_led"; - init-status = , ; - status = "disabled"; - }; - - dsp0_rproc: dsp0_rproc@0 { - mboxes = <&msgbox 4>; - mbox-names = "arm-kick"; - memory-region = <&dsp0ddr_reserved>, <&dsp_vdev0buffer>, <&dsp_vdev0vring0>, <&dsp_vdev0vring1>, - <&mcu0iram_reserved>, <&mcu0dram0_reserved>, <&mcu0dram1_reserved>; - memory-mappings = - /* < DA len PA > */ - /* local SRAM via external bus */ - < 0x20000 0x20000 0x20000 >, - /* local SRAM via internal bus */ - < 0x400000 0x10000 0x20000 >, - < 0x420000 0x8000 0x30000 >, - < 0x440000 0x8000 0x38000 >, - /* DDR front 256MB */ - < 0x10000000 0x10000000 0x40000000 >, - /* local SRAM via internal bus */ - < 0x20020000 0x10000 0x400000 >, - < 0x20030000 0x8000 0x420000 >, - < 0x20038000 0x8000 0x440000 >, - - /* DDR front 256MB */ - < 0x30000000 0x10000000 0x40000000 >, - /* DDR front 1GB */ - < 0x40000000 0x40000000 0x40000000 >, - /* DDR front 1GB */ - < 0x80000000 0x40000000 0x40000000 >, - /* DDR front 1GB */ - < 0xC0000000 0x40000000 0x40000000 >; - status = "okay"; - }; - - e906_rproc: e906_rproc@7130000 { - mboxes = <&msgbox 8>; - mbox-names = "arm-kick"; - memory-region = <&riscvsram0_reserved>, <&riscvsram1_reserved>, <&rv_vdev0buffer>, <&rv_vdev0vring0>, <&rv_vdev0vring1>; - memory-mappings = - /* < DA len PA > */ - /* DSP RAM */ - < 0x20000 0x20000 0x20000 >, - /* SRAM A2 */ - < 0x40000 0x24000 0x40000 >, - /* DDR */ - < 0x8000000 0x37f00000 0x8000000 >, - /* SRAM SPACE 0 */ - < 0x3ffc0000 0x40000 0x07280000 >, - /* SRAM SPACE 1 */ - < 0x40000000 0x40000 0x072c0000 >, - /* DRAM SPACE */ - < 0x40040000 0x3ffc0000 0x40040000>; - status = "okay"; - }; - -}; - -&uart0 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart0_pins_a>; - pinctrl-1 = <&uart0_pins_b>; - uart-supply = <®_cldo3>; - status = "okay"; -}; - -&uart1 { - status = "okay"; -}; - -&uart2 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart2_pins_a>; - pinctrl-1 = <&uart2_pins_b>; - status = "disabled"; -}; - -&uart3 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart3_pins_a>; - pinctrl-1 = <&uart3_pins_b>; - status = "disabled"; -}; - -&uart4 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart4_pins_a>; - pinctrl-1 = <&uart4_pins_b>; - status = "disabled"; -}; - -&uart5 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart5_pins_a>; - pinctrl-1 = <&uart5_pins_b>; - status = "disabled"; -}; - -&uart6 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart6_pins_a>; - pinctrl-1 = <&uart6_pins_b>; - status = "okay"; -}; - -&uart7 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart7_pins_a>; - pinctrl-1 = <&uart7_pins_b>; - status = "disabled"; -}; - -&uart8 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart8_pins_a>; - pinctrl-1 = <&uart8_pins_b>; - status = "disabled"; -}; - -&uart9 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart9_pins_a>; - pinctrl-1 = <&uart9_pins_b>; - status = "disabled"; -}; - -&lradc { - key_cnt = <5>; - key0 = <210 0x73>; - key1 = <410 0x72>; - key2 = <590 0x8B>; - key3 = <750 0x1c>; - key4 = <880 0x66>; - key_debounce; - debounce_value = <50>; - status = "okay"; -}; - -&irrx { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&irrx_pins_default>; - pinctrl-1 = <&irrx_pins_sleep>; - status = "disabled"; -}; - -&s_irrx { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&s_irrx_pins_default>; - pinctrl-1 = <&s_irrx_pins_sleep>; - status = "okay"; -}; - -&irtx { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&irtx_pins_default>; - pinctrl-1 = <&irtx_pins_sleep>; - status = "disabled"; -}; - -&gpadc0 { - channel_num = <2>; - channel_select = <3>; - channel_data_select = <3>; - channel_compare_select = <3>; - channel_cld_select = <3>; - channel_chd_select = <3>; - channel0_compare_lowdata = <1700000>; - channel0_compare_higdata = <1200000>; - channel1_compare_lowdata = <460000>; - channel1_compare_higdata = <1200000>; - status = "disabled"; -}; - -&gpadc1 { - channel_num = <2>; - channel_select = <3>; - channel_data_select = <3>; - channel_compare_select = <3>; - channel_cld_select = <3>; - channel_chd_select = <3>; - channel0_compare_lowdata = <1700000>; - channel0_compare_higdata = <1200000>; - channel1_compare_lowdata = <460000>; - channel1_compare_higdata = <1200000>; - status = "disabled"; -}; - -&pwm0_0 { - pinctrl-names = "active", "sleep"; - pinctrl-0 = <&pwm0_0_pin_active>; - pinctrl-1 = <&pwm0_0_pin_sleep>; - status = "okay"; -}; - -&pwm0_1 { - pinctrl-names = "active", "sleep"; - pinctrl-0 = <&pwm0_1_pin_active>; - pinctrl-1 = <&pwm0_1_pin_sleep>; - status = "disabled"; -}; - -&pwm0_2 { - pinctrl-names = "active", "sleep"; - pinctrl-0 = <&pwm0_2_pin_active>; - pinctrl-1 = <&pwm0_2_pin_sleep>; - status = "disabled"; -}; - -&pwm0_3 { - pinctrl-names = "active", "sleep"; - pinctrl-0 = <&pwm0_3_pin_active>; - pinctrl-1 = <&pwm0_3_pin_sleep>; - status = "disabled"; -}; - -&pwm0_4 { - pinctrl-names = "active", "sleep"; - pinctrl-0 = <&pwm0_4_pin_active>; - pinctrl-1 = <&pwm0_4_pin_sleep>; - status = "okay"; -}; - -&pwm0_5 { - pinctrl-names = "active", "sleep"; - pinctrl-0 = <&pwm0_5_pin_active>; - pinctrl-1 = <&pwm0_5_pin_sleep>; - status = "okay"; -}; - -&ledc { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&ledc_pins_a>; - pinctrl-1 = <&ledc_pins_b>; - led_count = <34>; - output_mode = "GRB"; - reset_ns = <84>; - t1h_ns = <800>; - t1l_ns = <320>; - t0h_ns = <300>; - t0l_ns = <800>; - wait_time0_ns = <84>; - wait_time1_ns = <84>; - wait_data_time_ns = <600000>; - status = "disabled"; -}; - -&twi0 { - clock-frequency = <400000>; - pinctrl-0 = <&twi0_pins_default>; - pinctrl-1 = <&twi0_pins_sleep>; - pinctrl-names = "default", "sleep"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - twi-supply = <®_dcdc4>; - status = "okay"; -}; - -&twi1 { - clock-frequency = <400000>; - pinctrl-0 = <&twi1_pins_default>; - pinctrl-1 = <&twi1_pins_sleep>; - pinctrl-names = "default", "sleep"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - status = "okay"; -}; - -&twi2 { - clock-frequency = <400000>; - pinctrl-0 = <&twi2_pins_default>; - pinctrl-1 = <&twi2_pins_sleep>; - pinctrl-names = "default", "sleep"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - twi-supply = <®_dcdc4>; - status = "okay"; -}; - -&twi3 { - clock-frequency = <400000>; - pinctrl-0 = <&twi3_pins_default>; - pinctrl-1 = <&twi3_pins_sleep>; - pinctrl-names = "default", "sleep"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - twi-supply = <®_dcdc4>; - status = "okay"; -}; - -&twi4 { - clock-frequency = <400000>; - pinctrl-0 = <&twi4_pins_default>; - pinctrl-1 = <&twi4_pins_sleep>; - pinctrl-names = "default", "sleep"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - twi-supply = <®_dcdc4>; - status = "okay"; -}; - -&twi5 { - clock-frequency = <400000>; - pinctrl-0 = <&twi5_pins_default>; - pinctrl-1 = <&twi5_pins_sleep>; - pinctrl-names = "default", "sleep"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - twi-supply = <®_dcdc4>; - status = "okay"; -}; - -&csi_mclk3_pins_a { - pins = "PK13"; - function = "ncsi"; -}; - -&csi_mclk3_pins_b { - pins = "PK13"; -}; - -&mipib_4lane_pins_a { - pins = "PK6", "PK7", "PK8", "PK9"; -}; - -&mipib_4lane_pins_b { - pins = "PK6", "PK7", "PK8", "PK9"; -}; - -&vind0 { - csi_top = <360000000>; - csi_isp = <300000000>; - vind_mclkpin-supply = <®_bldo3>; /* vcc-pe */ - vind_mclkpin_vol = <1800000>; - vind_mcsipin-supply = <®_bldo3>; /* vcc-pk */ - vind_mcsipin_vol = <1800000>; - vind_mipipin-supply = <®_bldo3>; /* vcc-mcsi */ - vind_mipipin_vol = <1800000>; - status = "okay"; - - csi3:csi@5823000 { - pinctrl-names = "default","sleep"; - pinctrl-0 = <&ncsi_bt1120_pins_a>; - pinctrl-1 = <&ncsi_bt1120_pins_b>; - status = "okay"; - }; - - tdm0:tdm@5908000 { - work_mode = <0>; - }; - - isp00:isp@5900000 { - work_mode = <0>; - }; - - isp01:isp@58ffffc { - status = "disabled"; - }; - - isp02:isp@58ffff8 { - status = "disabled"; - }; - - isp03:isp@58ffff4 { - status = "disabled"; - }; - - isp10:isp@4 { - status = "okay"; - }; - - isp20:isp@5 { - status = "okay"; - }; - - scaler00:scaler@5910000 { - work_mode = <0>; - }; - - scaler01:scaler@590fffc { - status = "disabled"; - }; - - scaler02:scaler@590fff8 { - status = "disabled"; - }; - - scaler03:scaler@590fff4 { - status = "disabled"; - }; - - scaler10:scaler@5910400 { - work_mode = <0>; - }; - - scaler11:scaler@59103fc { - status = "disabled"; - }; - - scaler12:scaler@59103f8 { - status = "disabled"; - }; - - scaler13:scaler@59103f4 { - status = "disabled"; - }; - - scaler20:scaler@5910800 { - work_mode = <0>; - }; - - scaler21:scaler@59107fc { - status = "disabled"; - }; - - scaler22:scaler@59107f8 { - status = "disabled"; - }; - - scaler23:scaler@59107f4 { - status = "disabled"; - }; - - scaler30:scaler@5910c00 { - work_mode = <0>; - }; - - scaler31:scaler@5910bfc { - status = "disabled"; - }; - - scaler32:scaler@5910bf8 { - status = "disabled"; - }; - - scaler33:scaler@5910bf4 { - status = "disabled"; - }; - scaler40:scaler@16 { - status = "okay"; - }; - scaler50:scaler@17 { - status = "okay"; - }; - - actuator0: actuator@2108180 { - device_type = "actuator0"; - actuator0_name = "dw9714_act"; - actuator0_slave = <0x18>; - actuator0_af_pwdn = <>; - actuator0_afvdd = "afvcc-csi"; - actuator0_afvdd_vol = <2800000>; - status = "disabled"; - }; - - flash0: flash@2108190 { - device_type = "flash0"; - flash0_type = <2>; - flash0_en = <&r_pio PL 11 GPIO_ACTIVE_LOW>; - flash0_mode = <>; - flash0_flvdd = ""; - flash0_flvdd_vol = <>; - device_id = <0>; - status = "disabled"; - }; - - sensor0:sensor@5812000 { - device_type = "sensor0"; - sensor0_mname = "tp2815_mipi"; - sensor0_twi_cci_id = <2>; - sensor0_twi_addr = <0x88>; - sensor0_mclk_id = <0>; - sensor0_pos = "rear"; - sensor0_isp_used = <0>; - sensor0_fmt = <0>; - sensor0_stby_mode = <0>; - sensor0_vflip = <0>; - sensor0_hflip = <0>; - sensor0_cameravdd-supply = <>; - sensor0_cameravdd_vol = <>; - sensor0_iovdd-supply = <>; - sensor0_iovdd_vol = <>; - sensor0_avdd-supply = <>; - sensor0_avdd_vol = <>; - sensor0_dvdd-supply = <>; - sensor0_dvdd_vol = <>; - sensor0_power_en = <>; - sensor0_reset = <&pio PK 11 GPIO_ACTIVE_LOW>; - sensor0_pwdn = <>; - status = "okay"; - }; - - sensor1:sensor@5812010 { - device_type = "sensor1"; - sensor1_mname = "nvp6158"; - sensor1_twi_cci_id = <3>; - sensor1_twi_addr = <0x64>; - sensor1_mclk_id = <3>; - sensor1_pos = "front"; - sensor1_isp_used = <0>; - sensor1_fmt = <0>; - sensor1_stby_mode = <0>; - sensor1_vflip = <0>; - sensor1_hflip = <0>; - sensor1_iovdd-supply = <>; - sensor1_iovdd_vol = <>; - sensor1_avdd-supply = <>; - sensor1_avdd_vol = <>; - sensor1_dvdd-supply = <>; - sensor1_dvdd_vol = <>; - sensor1_power_en = <>; - sensor1_reset = <&pio PK 10 GPIO_ACTIVE_LOW>; - sensor1_pwdn = <>; - status = "okay"; - }; - - vinc00:vinc@5830000 { - vinc0_csi_sel = <0>; - vinc0_mipi_sel = <0>; - vinc0_isp_sel = <4>; - vinc0_isp_tx_ch = <0>; - vinc0_tdm_rx_sel = <0>; - vinc0_rear_sensor_sel = <0>; - vinc0_front_sensor_sel = <0>; - vinc0_sensor_list = <0>; - device_id = <0>; - work_mode = <0x0>; - status = "okay"; - }; - - vinc01:vinc@582fffc { - vinc1_csi_sel = <1>; - vinc1_mipi_sel = <2>; - vinc1_isp_sel = <1>; - vinc1_isp_tx_ch = <0>; - vinc1_tdm_rx_sel = <1>; - vinc1_rear_sensor_sel = <1>; - vinc1_front_sensor_sel = <1>; - vinc1_sensor_list = <0>; - device_id = <1>; - status = "disabled"; - }; - - vinc02:vinc@582fff8 { - vinc2_csi_sel = <2>; - vinc2_mipi_sel = <0xff>; - vinc2_isp_sel = <2>; - vinc2_isp_tx_ch = <2>; - vinc2_tdm_rx_sel = <2>; - vinc2_rear_sensor_sel = <0>; - vinc2_front_sensor_sel = <0>; - vinc2_sensor_list = <0>; - device_id = <2>; - status = "disabled"; - }; - - vinc03:vinc@582fff4 { - vinc3_csi_sel = <0>; - vinc3_mipi_sel = <0xff>; - vinc3_isp_sel = <0>; - vinc3_isp_tx_ch = <0>; - vinc3_tdm_rx_sel = <0>; - vinc3_rear_sensor_sel = <1>; - vinc3_front_sensor_sel = <1>; - vinc3_sensor_list = <0>; - device_id = <3>; - status = "disabled"; - }; - - vinc10:vinc@5831000 { - vinc4_csi_sel = <0>; - vinc4_mipi_sel = <0>; - vinc4_isp_sel = <4>; - vinc4_isp_tx_ch = <1>; - vinc4_tdm_rx_sel = <0>; - vinc4_rear_sensor_sel = <0>; - vinc4_front_sensor_sel = <0>; - vinc4_sensor_list = <0>; - device_id = <4>; - work_mode = <0x0>; - status = "okay"; - }; - - vinc11:vinc@5830ffc { - vinc5_csi_sel = <2>; - vinc5_mipi_sel = <0xff>; - vinc5_isp_sel = <1>; - vinc5_isp_tx_ch = <1>; - vinc5_tdm_rx_sel = <1>; - vinc5_rear_sensor_sel = <0>; - vinc5_front_sensor_sel = <0>; - vinc5_sensor_list = <0>; - device_id = <5>; - status = "disabled"; - }; - - vinc12:vinc@5830ff8 { - vinc6_csi_sel = <2>; - vinc6_mipi_sel = <0xff>; - vinc6_isp_sel = <0>; - vinc6_isp_tx_ch = <0>; - vinc6_tdm_rx_sel = <0>; - vinc6_rear_sensor_sel = <0>; - vinc6_front_sensor_sel = <0>; - vinc6_sensor_list = <0>; - device_id = <6>; - status = "disabled"; - }; - - vinc13:vinc@5830ff4 { - vinc7_csi_sel = <2>; - vinc7_mipi_sel = <0xff>; - vinc7_isp_sel = <0>; - vinc7_isp_tx_ch = <0>; - vinc7_tdm_rx_sel = <0>; - vinc7_rear_sensor_sel = <0>; - vinc7_front_sensor_sel = <0>; - vinc7_sensor_list = <0>; - device_id = <7>; - status = "disabled"; - }; - - vinc20:vinc@5832000 { - vinc8_csi_sel = <0>; - vinc8_mipi_sel = <0>; - vinc8_isp_sel = <4>; - vinc8_isp_tx_ch = <2>; - vinc8_tdm_rx_sel = <0>; - vinc8_rear_sensor_sel = <0>; - vinc8_front_sensor_sel = <0>; - vinc8_sensor_list = <0>; - device_id = <8>; - work_mode = <0x0>; - status = "okay"; - }; - - vinc21:vinc@5831ffc { - vinc9_csi_sel = <2>; - vinc9_mipi_sel = <0xff>; - vinc9_isp_sel = <0>; - vinc9_isp_tx_ch = <0>; - vinc9_tdm_rx_sel = <0>; - vinc9_rear_sensor_sel = <0>; - vinc9_front_sensor_sel = <0>; - vinc9_sensor_list = <0>; - device_id = <9>; - status = "disabled"; - }; - - vinc22:vinc@5831ff8 { - vinc10_csi_sel = <2>; - vinc10_mipi_sel = <0xff>; - vinc10_isp_sel = <0>; - vinc10_isp_tx_ch = <0>; - vinc10_tdm_rx_sel = <0>; - vinc10_rear_sensor_sel = <0>; - vinc10_front_sensor_sel = <0>; - vinc10_sensor_list = <0>; - device_id = <10>; - status = "disabled"; - }; - - vinc23:vinc@5831ff4 { - vinc11_csi_sel = <2>; - vinc11_mipi_sel = <0xff>; - vinc11_isp_sel = <0>; - vinc11_isp_tx_ch = <0>; - vinc11_tdm_rx_sel = <0>; - vinc11_rear_sensor_sel = <0>; - vinc11_front_sensor_sel = <0>; - vinc11_sensor_list = <0>; - device_id = <11>; - status = "disabled"; - }; - - vinc30:vinc@5833000 { - vinc12_csi_sel = <0>; - vinc12_mipi_sel = <0>; - vinc12_isp_sel = <4>; - vinc12_isp_tx_ch = <3>; - vinc12_tdm_rx_sel = <0>; - vinc12_rear_sensor_sel = <0>; - vinc12_front_sensor_sel = <0>; - vinc12_sensor_list = <0>; - device_id = <12>; - work_mode = <0x0>; - status = "okay"; - }; - - vinc31:vinc@5832ffc { - vinc13_csi_sel = <2>; - vinc13_mipi_sel = <0xff>; - vinc13_isp_sel = <0>; - vinc13_isp_tx_ch = <0>; - vinc13_tdm_rx_sel = <0>; - vinc13_rear_sensor_sel = <0>; - vinc13_front_sensor_sel = <0>; - vinc13_sensor_list = <0>; - device_id = <13>; - status = "disabled"; - }; - - vinc32:vinc@5832ff8 { - vinc14_csi_sel = <2>; - vinc14_mipi_sel = <0xff>; - vinc14_isp_sel = <0>; - vinc14_isp_tx_ch = <0>; - vinc14_tdm_rx_sel = <0>; - vinc14_rear_sensor_sel = <0>; - vinc14_front_sensor_sel = <0>; - vinc14_sensor_list = <0>; - device_id = <14>; - status = "disabled"; - }; - - vinc33:vinc@5832ff4 { - vinc15_csi_sel = <2>; - vinc15_mipi_sel = <0xff>; - vinc15_isp_sel = <0>; - vinc15_isp_tx_ch = <0>; - vinc15_tdm_rx_sel = <0>; - vinc15_rear_sensor_sel = <0>; - vinc15_front_sensor_sel = <0>; - vinc15_sensor_list = <0>; - device_id = <15>; - status = "disabled"; - }; - - vinc40:vinc@5834000 { - vinc16_csi_sel = <3>; - vinc16_mipi_sel = <0xff>; - vinc16_isp_sel = <5>; - vinc16_isp_tx_ch = <0>; - vinc16_tdm_rx_sel = <0>; - vinc16_rear_sensor_sel = <1>; - vinc16_front_sensor_sel = <1>; - vinc16_sensor_list = <0>; - device_id = <16>; - status = "okay"; - }; - - vinc50:vinc@5835000 { - vinc17_csi_sel = <3>; - vinc17_mipi_sel = <0xff>; - vinc17_isp_sel = <5>; - vinc17_isp_tx_ch = <1>; - vinc17_tdm_rx_sel = <0>; - vinc17_rear_sensor_sel = <1>; - vinc17_front_sensor_sel = <1>; - vinc17_sensor_list = <0>; - device_id = <17>; - status = "okay"; - }; -}; - -&twi6 { - clock-frequency = <400000>; - pinctrl-0 = <&s_twi0_pins_default>; - pinctrl-1 = <&s_twi0_pins_sleep>; - pinctrl-names = "default", "sleep"; - device_type = "twi6"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - no_suspend = <1>; - status = "okay"; - - axp1530: axp1530@36{ - compatible = "ext,axp1530"; - status = "okay"; - reg = <0x36>; - - wakeup-source; - - regulators{ - reg_ext_axp1530_dcdc1: dcdc1 { - regulator-name = "axp1530-dcdc1"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3400000>; - regulator-step-delay-us = <25>; - regulator-final-delay-us = <50>; - regulator-always-on; - }; - - reg_ext_axp1530_dcdc2: dcdc2 { - regulator-name = "axp1530-dcdc2"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1540000>; - regulator-step-delay-us = <25>; - regulator-final-delay-us = <50>; - regulator-ramp-delay = <200>; /* FIXME */ - regulator-always-on; - }; - - reg_ext_axp1530_dcdc3: dcdc3 { - regulator-name = "axp1530-dcdc3"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1840000>; - regulator-step-delay-us = <25>; - regulator-final-delay-us = <50>; - regulator-always-on; - }; - - reg_ext_axp1530_aldo1: ldo1 { - regulator-name = "axp1530-aldo1"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-step-delay-us = <25>; - regulator-final-delay-us = <50>; - }; - - reg_ext_axp1530_dldo1: ldo2 { - regulator-name = "axp1530-dldo1"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-step-delay-us = <25>; - regulator-final-delay-us = <50>; - }; - }; - virtual-ext-dcdc1 { - compatible = "xpower-vregulator,ext-dcdc1"; - dcdc1-supply = <®_ext_axp1530_dcdc1>; - }; - virtual-ext-dcdc2 { - compatible = "xpower-vregulator,ext-dcdc2"; - dcdc2-supply = <®_ext_axp1530_dcdc2>; - }; - virtual-ext-dcdc3 { - compatible = "xpower-vregulator,ext-dcdc3"; - dcdc3-supply = <®_ext_axp1530_dcdc3>; - }; - virtual-ext-aldo1 { - compatible = "xpower-vregulator,ext-aldo1"; - aldo1-supply = <®_ext_axp1530_aldo1>; - }; - virtual-ext-dldo1 { - compatible = "xpower-vregulator,ext-dldo1"; - dldo1-supply = <®_ext_axp1530_dldo1>; - }; - - }; - - pmu0: pmu@34 { - compatible = "x-powers,axp2202"; - reg = <0x34>; - status = "okay"; - interrupts = <0 IRQ_TYPE_LEVEL_LOW>; - interrupt-parent = <&nmi_intc>; - x-powers,drive-vbus-en; - pmu_reset = <0>; - pmu_irq_wakeup = <1>; - pmu_hot_shutdown = <1>; - pmu_over_current = <1>; - pmu_hot_shutdown_value = <125>; - wakeup-source; - - usb_power_supply: usb_power_supply { - compatible = "x-powers,axp2202-usb-power-supply"; - status = "okay"; - - pmu_usbpc_vol = <4600>; - pmu_usbpc_cur = <500>; - pmu_usbad_vol = <4000>; - pmu_usbad_cur = <2500>; - pmu_usb_typec_used = <1>; - wakeup_usb_in; - wakeup_usb_out; - wakeup_typec_in; - wakeup_typec_out; - - det_acin_supply = <&gpio_power_supply>; - pmu_acin_usbid_drv = <&pio PH 12 GPIO_ACTIVE_LOW>; - pmu_vbus_det_gpio = <&pio PH 13 GPIO_ACTIVE_LOW>; - }; - - gpio_power_supply: gpio_power_supply { - compatible = "x-powers,gpio-supply"; - status = "disabled"; - pmu_acin_det_gpio = <&pio PH 14 GPIO_ACTIVE_LOW>; - det_usb_supply = <&usb_power_supply>; - }; - - bat_power_supply: bat-power-supply { - compatible = "x-powers,axp2202-bat-power-supply"; - param = <&axp2202_parameter>; - status = "disabled"; - - pmu_chg_ic_temp = <0>; - - pmu_battery_rdc= <147>; - pmu_battery_cap = <1771>; - pmu_runtime_chgcur = <1000>; - pmu_suspend_chgcur = <1500>; - pmu_shutdown_chgcur = <1500>; - pmu_init_chgvol = <4200>; - pmu_battery_warning_level1 = <15>; - pmu_battery_warning_level2 = <0>; - pmu_chgled_func = <0>; - pmu_chgled_type = <0>; - pmu_bat_para1 = <0>; - pmu_bat_para2 = <0>; - pmu_bat_para3 = <0>; - pmu_bat_para4 = <0>; - pmu_bat_para5 = <0>; - pmu_bat_para6 = <0>; - pmu_bat_para7 = <2>; - pmu_bat_para8 = <3>; - pmu_bat_para9 = <4>; - pmu_bat_para10 = <6>; - pmu_bat_para11 = <9>; - pmu_bat_para12 = <14>; - pmu_bat_para13 = <26>; - pmu_bat_para14 = <38>; - pmu_bat_para15 = <49>; - pmu_bat_para16 = <52>; - pmu_bat_para17 = <56>; - pmu_bat_para18 = <60>; - pmu_bat_para19 = <64>; - pmu_bat_para20 = <70>; - pmu_bat_para21 = <77>; - pmu_bat_para22 = <83>; - pmu_bat_para23 = <87>; - pmu_bat_para24 = <90>; - pmu_bat_para25 = <95>; - pmu_bat_para26 = <99>; - pmu_bat_para27 = <99>; - pmu_bat_para28 = <100>; - pmu_bat_para29 = <100>; - pmu_bat_para30 = <100>; - pmu_bat_para31 = <100>; - pmu_bat_para32 = <100>; - - pmu_bat_temp_enable = <1>; - pmu_jetia_en = <1>; - pmu_bat_charge_ltf = <1738>; //-5 - pmu_bat_charge_htf = <150>; //60 - pmu_bat_shutdown_ltf = <2125>; //-10 - pmu_bat_shutdown_htf = <130>; //65 - pmu_jetia_cool = <1390>; //0 - pmu_jetia_warm = <206>; //50 - pmu_jcool_ifall = <2>;//75% - pmu_jwarm_ifall = <2>;//75% - pmu_bat_temp_para1 = <4592>; //SDNT-25 - pmu_bat_temp_para2 = <2781>; //-15 - pmu_bat_temp_para3 = <2125>; //-10 - pmu_bat_temp_para4 = <1738>; //-5 - pmu_bat_temp_para5 = <1390>;//0 - pmu_bat_temp_para6 = <1118>; //5 - pmu_bat_temp_para7 = <906>; //10 - pmu_bat_temp_para8 = <606>; //20 - pmu_bat_temp_para9 = <415>; //30 - pmu_bat_temp_para10 = <290>; //40 - pmu_bat_temp_para11 = <244>; //45 - pmu_bat_temp_para12 = <206>; //50 - pmu_bat_temp_para13 = <175>; //55 - pmu_bat_temp_para14 = <150>; //60 - pmu_bat_temp_para15 = <110>; //70 - pmu_bat_temp_para16 = <83>; //80 - - wakeup_bat_out; - /* wakeup_bat_in; */ - /* wakeup_bat_charging; */ - /* wakeup_bat_charge_over; */ - /* wakeup_low_warning1; */ - /* wakeup_low_warning2; */ - /* wakeup_bat_untemp_work; */ - /* wakeup_bat_ovtemp_work; */ - /* wakeup_bat_untemp_chg; */ - /* wakeup_bat_ovtemp_chg; */ - }; - - powerkey0: powerkey@0 { - status = "okay"; - compatible = "x-powers,axp2101-pek"; - pmu_powkey_off_time = <6000>; - pmu_powkey_off_func = <0>; - pmu_powkey_off_en = <1>; - pmu_powkey_long_time = <1500>; - pmu_powkey_on_time = <512>; - wakeup_rising; - wakeup_falling; - }; - - regulator0: regulators@0 { - reg_dcdc1: dcdc1 { - regulator-name = "axp2202-dcdc1"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1540000>; - regulator-ramp-delay = <250>; - regulator-enable-ramp-delay = <1000>; - regulator-boot-on; - regulator-always-on; - }; - reg_dcdc2: dcdc2 { - regulator-name = "axp2202-dcdc2"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3400000>; - regulator-ramp-delay = <250>; - regulator-enable-ramp-delay = <1000>; - regulator-boot-on; - regulator-always-on; - }; - reg_dcdc3: dcdc3 { - regulator-name = "axp2202-dcdc3"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1840000>; - regulator-ramp-delay = <250>; - regulator-enable-ramp-delay = <1000>; - regulator-always-on; - }; - reg_dcdc4: dcdc4 { - regulator-name = "axp2202-dcdc4"; - regulator-min-microvolt = <1000000>; - regulator-max-microvolt = <3700000>; - regulator-ramp-delay = <250>; - regulator-enable-ramp-delay = <1000>; - }; - reg_rtcldo: rtcldo { - /* RTC_LDO is a fixed, always-on regulator */ - regulator-name = "axp2202-rtcldo"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-boot-on; - regulator-always-on; - }; - reg_aldo1: aldo1 { - regulator-name = "axp2202-aldo1"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - }; - reg_aldo2: aldo2 { - regulator-name = "axp2202-aldo2"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - }; - reg_aldo3: aldo3 { - regulator-name = "axp2202-aldo3"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - regulator-always-on; - regulator-boot-on; - }; - reg_aldo4: aldo4 { - regulator-name = "axp2202-aldo4"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - regulator-always-on; - regulator-boot-on; - }; - reg_bldo1: bldo1 { - regulator-name = "axp2202-bldo1"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - regulator-always-on; - regulator-boot-on; - }; - reg_bldo2: bldo2 { - regulator-name = "axp2202-bldo2"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - regulator-boot-on; - regulator-always-on; - }; - reg_bldo3: bldo3 { - regulator-name = "axp2202-bldo3"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - }; - reg_bldo4: bldo4 { - regulator-name = "axp2202-bldo4"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - }; - reg_cldo1: cldo1 { - regulator-name = "axp2202-cldo1"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - }; - reg_cldo2: cldo2 { - regulator-name = "axp2202-cldo2"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - }; - reg_cldo3: cldo3 { - regulator-name = "axp2202-cldo3"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-ramp-delay = <2500>; - regulator-enable-ramp-delay = <1000>; - regulator-boot-on; - regulator-always-on; - }; - reg_cldo4: cldo4 { - regulator-name = "axp2202-cldo4"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - regulator-boot-on; - regulator-always-on; - }; - reg_cpusldo: cpusldo { - /* cpus */ - regulator-name = "axp2202-cpusldo"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1400000>; - regulator-boot-on; - regulator-always-on; - }; - reg_vmid: vmid { - regulator-name = "axp2202-vmid"; - regulator-enable-ramp-delay = <1000>; - }; - reg_drivevbus: drivevbus { - regulator-name = "axp2202-drivevbus"; - regulator-enable-ramp-delay = <1000>; - drivevbusin-supply = <®_vmid>; - }; - }; - - virtual-dcdc1 { - compatible = "xpower-vregulator,dcdc1"; - dcdc1-supply = <®_dcdc1>; - }; - virtual-dcdc2 { - compatible = "xpower-vregulator,dcdc2"; - dcdc2-supply = <®_dcdc2>; - }; - virtual-dcdc3 { - compatible = "xpower-vregulator,dcdc3"; - dcdc3-supply = <®_dcdc3>; - }; - virtual-dcdc4 { - compatible = "xpower-vregulator,dcdc4"; - dcdc4-supply = <®_dcdc4>; - }; - virtual-rtcldo { - compatible = "xpower-vregulator,rtcldo"; - rtcldo-supply = <®_rtcldo>; - }; - virtual-aldo1 { - compatible = "xpower-vregulator,aldo1"; - aldo1-supply = <®_aldo1>; - }; - virtual-aldo2 { - compatible = "xpower-vregulator,aldo2"; - aldo2-supply = <®_aldo2>; - }; - virtual-aldo3 { - compatible = "xpower-vregulator,aldo3"; - aldo3-supply = <®_aldo3>; - }; - virtual-aldo4 { - compatible = "xpower-vregulator,aldo4"; - aldo4-supply = <®_aldo4>; - }; - virtual-bldo1 { - compatible = "xpower-vregulator,bldo1"; - bldo1-supply = <®_bldo1>; - }; - virtual-bldo2 { - compatible = "xpower-vregulator,bldo2"; - bldo2-supply = <®_bldo2>; - }; - virtual-bldo3 { - compatible = "xpower-vregulator,bldo3"; - bldo3-supply = <®_bldo3>; - }; - virtual-bldo4 { - compatible = "xpower-vregulator,bldo4"; - bldo4-supply = <®_bldo4>; - }; - virtual-cldo1 { - compatible = "xpower-vregulator,cldo1"; - cldo1-supply = <®_cldo1>; - }; - virtual-cldo2 { - compatible = "xpower-vregulator,cldo2"; - cldo2-supply = <®_cldo2>; - }; - virtual-cldo3 { - compatible = "xpower-vregulator,cldo3"; - cldo3-supply = <®_cldo3>; - }; - virtual-cldo4 { - compatible = "xpower-vregulator,cldo4"; - cldo4-supply = <®_cldo4>; - }; - virtual-cpusldo { - compatible = "xpower-vregulator,cpusldo"; - cpusldo-supply = <®_cpusldo>; - }; - virtual-drivevbus { - compatible = "xpower-vregulator,drivevbus"; - drivevbus-supply = <®_drivevbus>; - }; - axp_gpio0: axp_gpio@0 { - gpio-controller; - #size-cells = <0>; - #gpio-cells = <6>; - status = "okay"; - }; - }; -}; - -/{ - axp2202_parameter:axp2202-parameter { - select = "battery-model"; - - battery-model { - parameter = /bits/ 8 <0x01 0xf5 0x40 0x00 0x1b 0x1e 0x28 0x0f - 0x0c 0x1e 0x32 0x02 0x14 0x05 0x0a 0x04 - 0x74 0xfb 0xc8 0x0d 0x43 0x10 0x36 0xfb - 0x46 0x01 0xea 0x0d 0x2a 0x06 0x36 0x05 - 0xf4 0x0a 0xb5 0x0f 0x42 0x0e 0xe6 0x09 - 0x9a 0x0e 0x42 0x0e 0x3b 0x04 0x2d 0x04 - 0x23 0x09 0x18 0x0e 0x09 0x0e 0x04 0x08 - 0xf7 0x0d 0xda 0x0d 0xd0 0x03 0xbb 0x03 - 0x9d 0x08 0x7f 0x0d 0x6a 0x0d 0x55 0x07 - 0xc2 0x57 0x2b 0x27 0x1e 0x0d 0x14 0x08 - 0xc5 0x98 0x7e 0x66 0x4e 0x44 0x38 0x1a - 0x12 0x0a 0xf6 0x00 0x00 0xf6 0x00 0xf6 - 0x00 0xfb 0x00 0x00 0xfb 0x00 0x00 0xfb - 0x00 0x00 0xf6 0x00 0x00 0xf6 0x00 0xf6 - 0x00 0xfb 0x00 0x00 0xfb 0x00 0x00 0xfb - 0x00 0x00 0xf6 0x00 0x00 0xf6 0x00 0xf6>; - }; - }; -}; - -&twi7 { - clock-frequency = <400000>; - pinctrl-0 = <&s_twi1_pins_default>; - pinctrl-1 = <&s_twi1_pins_sleep>; - pinctrl-names = "default", "sleep"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - twi-supply = <®_aldo3>; - status = "okay"; -}; - -&twi8 { - clock-frequency = <400000>; - pinctrl-0 = <&s_twi2_pins_default>; - pinctrl-1 = <&s_twi2_pins_sleep>; - pinctrl-names = "default", "sleep"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - twi-supply = <®_aldo3>; - status = "okay"; -}; - -&sdc2 { - non-removable; - bus-width = <8>; - mmc-ddr-1_8v; - mmc-hs200-1_8v; - mmc-hs400-1_8v; - no-sdio; - no-sd; - ctl-spec-caps = <0x308>; - cap-mmc-highspeed; - sunxi-power-save-mode; - sunxi-dis-signal-vol-sw; - mmc-bootpart-noacc; - /*cap-hsq;*/ - cqe-on; - ctl-cmdq-md = <0x2>; - max-frequency = <150000000>; - cd-gpios = <&pio PC 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; - /*broken-cd;*/ - vmmc-supply = <®_cldo3>; - /*emmc io vol 3.3v*/ - /*vqmmc-supply = <®_aldo1>;*/ - /*emmc io vol 1.8v*/ - vqmmc-supply = <®_cldo1>; - status = "okay"; -}; - -&sdc0 { - bus-width = <4>; - cd-gpios = <&pio PF 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; - non-removable; - /*broken-cd;*/ - /*cd-inverted*/ - /*data3-detect;*/ - /*card-pwr-gpios = <&pio PH 14 1 1 2 0xffffffff>;*/ - cd-used-24M; - cd-set-debounce = <0x1>; - cap-sd-highspeed; - sd-uhs-sdr50; - sd-uhs-ddr50; - sd-uhs-sdr104; - no-sdio; - no-mmc; - sunxi-power-save-mode; - /*sunxi-dis-signal-vol-sw;*/ - max-frequency = <150000000>; - ctl-spec-caps = <0x408>; - sunxi-dly-208M = <0xff 1 0xff 0xff 0xff 0xff>; - vmmc-supply = <®_cldo3>; - vqmmc33sw-supply = <®_cldo3>; - vdmmc33sw-supply = <®_cldo3>; - vqmmc18sw-supply = <®_bldo3>; - vdmmc18sw-supply = <®_bldo3>; - status = "okay"; -}; - -&sdc1 { - bus-width = <4>; - no-mmc; - no-sd; - cap-sd-highspeed; - /*sd-uhs-sdr12*/ - sd-uhs-sdr25; - sd-uhs-sdr50; - sd-uhs-ddr50; - sd-uhs-sdr104; - /*sunxi-power-save-mode;*/ - sunxi-dis-signal-vol-sw; - cap-sdio-irq; - keep-power-in-suspend; - ignore-pm-notify; - max-frequency = <150000000>; - ctl-spec-caps = <0x408>; - status = "okay"; -}; - -&rfkill { - compatible = "allwinner,sunxi-rfkill"; - chip_en; - power_en; - pinctrl-0; - pinctrl-names; - status = "okay"; - - /* wlan session */ - wlan { - compatible = "allwinner,sunxi-wlan"; - clocks; - clock-names; - wlan_power = "axp2202-aldo3", "axp2202-bldo1"; /* vcc-pl/vcc-pg/vcc-pm */ - wlan_power_vol= <3300000>, <1800000>; - wlan_busnum = <0x1>; - wlan_regon = <&r_pio PM 1 GPIO_ACTIVE_HIGH>; - wlan_hostwake = <&r_pio PM 0 GPIO_ACTIVE_HIGH>; - wakeup-source; - }; - - /* bt session */ - bt { - compatible = "allwinner,sunxi-bt"; - clocks; - clock-names; - bt_power = "axp2202-aldo3", "axp2202-bldo1"; /* vcc-pl/vcc-pg/vcc-pm */ - bt_power_vol = <3300000>, <1800000>; - bt_rst_n = <&r_pio PM 2 GPIO_ACTIVE_LOW>; - }; -}; - -&addr_mgt { - compatible = "allwinner,sunxi-addr_mgt"; - type_addr_wifi = <0x0>; - type_addr_bt = <0x0>; - type_addr_eth = <0x0>; - status = "okay"; -}; - -&btlpm { - compatible = "allwinner,sunxi-btlpm"; - uart_index = <0x1>; - bt_wake = <&r_pio PM 3 GPIO_ACTIVE_HIGH>; - bt_hostwake = <&r_pio PM 4 GPIO_ACTIVE_HIGH>; - wakeup-source; - status = "okay"; -}; - -/* - *usb_port_type: usb mode. 0-device, 1-host, 2-otg. - *usb_detect_type: usb hotplug detect mode. 0-none, 1-vbus/id detect, 2-id/dpdm detect. - *usb_detect_mode: 0-thread scan, 1-id gpio interrupt. - *usb_id_gpio: gpio for id detect. - *usb_det_vbus_gpio: gpio for id detect. gpio or "axp_ctrl"; - *usb_wakeup_suspend:0-SUPER_STANDBY, 1-USB_STANDBY. - */ -&usbc0 { - device_type = "usbc0"; - usb_port_type = <0x2>; - usb_detect_type = <0x2>; - usb_detect_mode = <0x0>; - usb_id_gpio; - usb_det_vbus_gpio = "axp_ctrl"; - det_vbus_supply = <&usb_power_supply>; - usb_regulator_io = "nocare"; - usb_wakeup_suspend = <1>; - usb_luns = <3>; - usb_serial_unique = <0>; - usb_serial_number = "20080411"; - rndis_wceis = <1>; - wakeup-source; - status = "okay"; -}; - -&udc { - det_vbus_supply = <&usb_power_supply>; - phy_range = <0x153>; - status = "okay"; -}; - -&ehci0 { - drvvbus-supply = <®_usb0_vbus>; - phy_range = <0x153>; - status = "okay"; -}; - -&ohci0 { - drvvbus-supply = <®_usb0_vbus>; - phy_range = <0x153>; - status = "okay"; -}; - -&usbc1 { - device_type = "usbc1"; - usb_regulator_io = "nocare"; - usb_wakeup_suspend = <0>; - status = "okay"; -}; - -&ehci1 { - drvvbus-supply = <®_usb1_vbus>; - phy_range = <0x153>; - status = "okay"; -}; - -&ohci1 { - drvvbus-supply = <®_usb1_vbus>; - phy_range = <0x153>; - status = "okay"; }; /* @@ -2575,7 +19,7 @@ */ &combophy { - clk-freq-100M; + resets = <&ccu RST_BUS_PCIE_USB3>; phy_use_sel = <0>; /* 0:PCIE; 1:USB3 */ status = "okay"; }; @@ -2584,881 +28,7 @@ reset-gpios = <&pio PH 11 GPIO_ACTIVE_HIGH>; wake-gpios = <&pio PH 12 GPIO_ACTIVE_HIGH>; pcie3v3-supply = <®_bldo1>; + pcie1v8-supply = <®_bldo4>; clk-freq-100M; status = "okay"; -}; - -&gpu { - gpu_idle = <1>; - dvfs_status = <1>; - mali-supply = <®_dcdc2>; -}; - -/*---------------------------------------------------------------------------------- -disp init configuration - -disp_mode (0:screen0) -screenx_output_type (0:none; 1:lcd; 2:tv; 3:hdmi;5:vdpo) -screenx_output_mode (used for hdmi output, 0:480i 1:576i 2:480p 3:576p 4:720p50) - (5:720p60 6:1080i50 7:1080i60 8:1080p24 9:1080p50 10:1080p60) -screenx_output_format (for hdmi, 0:RGB 1:yuv444 2:yuv422 3:yuv420) -screenx_output_bits (for hdmi, 0:8bit 1:10bit 2:12bit 2:16bit) -screenx_output_eotf (for hdmi, 0:reserve 4:SDR 16:HDR10 18:HLG) -screenx_output_cs (for hdmi, 0:undefined 257:BT709 260:BT601 263:BT2020) -screenx_output_dvi_hdmi (for hdmi, 0:undefined 1:dvi mode 2:hdmi mode) -screen0_output_range (for hdmi, 0:default 1:full 2:limited) -screen0_output_scan (for hdmi, 0:no data 1:overscan 2:underscan) -screen0_output_aspect_ratio (for hdmi, 8-same as original picture 9-4:3 10-16:9 11-14:9) -fbx format (4:RGB655 5:RGB565 6:RGB556 7:ARGB1555 8:RGBA5551 9:RGB888 10:ARGB8888 12:ARGB4444) -fbx pixel sequence (0:ARGB 1:BGRA 2:ABGR 3:RGBA) -fb0_scaler_mode_enable(scaler mode enable, used FE) -fbx_width,fbx_height (framebuffer horizontal/vertical pixels, fix to output resolution while equal 0) -lcdx_backlight (lcd init backlight,the range:[0,256],default:197 -lcdx_yy (lcd init screen bright/contrast/saturation/hue, value:0~100, default:50/50/57/50) -lcd0_contrast (LCD contrast, 0~100) -lcd0_saturation (LCD saturation, 0~100) -lcd0_hue (LCD hue, 0~100) -framebuffer software rotation setting: -disp_rotation_used: (0:disable; 1:enable,you must set fbX_width to lcd_y, -set fbX_height to lcd_x) -degreeX: (X:screen index; 0:0 degree; 1:90 degree; 3:270 degree) -degreeX_Y: (X:screen index; Y:layer index 0~15; 0:0 degree; 1:90 degree; 3:270 degree) -devX_output_type : config output type in bootGUI framework in UBOOT-2018. - (0:none; 1:lcd; 2:tv; 4:hdmi;) -devX_output_mode : config output resolution(see include/video/sunxi_display2.h) of bootGUI framework in UBOOT-2018 -devX_screen_id : config display index of bootGUI framework in UBOOT-2018 -devX_do_hpd : whether do hpd detectation or not in UBOOT-2018 -chn_cfg_mode : Hardware DE channel allocation config. 0:single display with 6 - channel, 1:dual display with 4 channel in main display and 2 channel in second - display, 2:dual display with 3 channel in main display and 3 channel in second - in display. -----------------------------------------------------------------------------------*/ -&disp { - disp_init_enable = <1>; - disp_mode = <0>; - - screen0_output_type = <1>; - screen0_output_mode = <4>; - screen0_to_lcd_index = <0>; - - screen1_output_type = <3>; - screen1_output_mode = <5>; - screen1_to_lcd_index = <2>; - - screen1_output_format = <0>; - screen1_output_bits = <0>; - screen1_output_eotf = <4>; - screen1_output_cs = <257>; - screen1_output_dvi_hdmi = <2>; - screen1_output_range = <2>; - screen1_output_scan = <0>; - screen1_output_aspect_ratio = <8>; - - dev0_output_type = <1>; - dev0_output_mode = <4>; - dev0_screen_id = <0>; - dev0_do_hpd = <0>; - - dev1_output_type = <4>; - dev1_output_mode = <10>; - dev1_screen_id = <1>; - dev1_do_hpd = <1>; - - def_output_dev = <0>; - hdmi_mode_check = <1>; - - display_device_num = <3>; - - primary_display_type = "LCD"; - primary_de_id = <0>; - primary_framebuffer_width = <1280>; - primary_framebuffer_height = <800>; - primary_dpix = <213>; - primary_dpiy = <213>; - - extend0_display_type = "HDMI"; - extend0_de_id = <1>; - extend0_framebuffer_width = <1920>; - extend0_framebuffer_height = <1080>; - extend0_dpix = <160>; - extend0_dpiy = <160>; - - extend1_display_type = "DP"; - extend1_de_id = <1>; - extend1_framebuffer_width = <1920>; - extend1_framebuffer_height = <1080>; - extend1_dpix = <160>; - extend1_dpiy = <160>; - - fb_format = <0>; - fb_num = <2>; - /**/ - fb0_map = <0 1 0 16>; - fb0_width = <1280>; - fb0_height = <800>; - /**/ - fb1_map = <1 1 0 16>; - fb1_width = <1920>; - fb1_height = <1080>; - /**/ - fb2_map = <1 0 0 16>; - fb2_width = <1280>; - fb2_height = <720>; - /**/ - fb3_map = <1 1 0 16>; - fb3_width = <300>; - fb3_height = <300>; - - chn_cfg_mode = <3>; - disp_para_zone = <1>; - - /* dual display clock constraints: - 1. two tcons cannot share a parent clock. - 2. when dsi uses ccu clock, combphy and corresponding tcon use the - same parent clock. - */ - assigned-clocks = <&ccu CLK_DE>, - <&ccu CLK_VO0_TCONLCD0>, - <&ccu CLK_VO0_TCONLCD1>, - <&ccu CLK_VO1_TCONLCD0>, - <&ccu CLK_TCONTV>, - <&ccu CLK_TCONTV1>, - <&ccu CLK_COMBPHY0>, - <&ccu CLK_COMBPHY1>, - <&ccu CLK_DSI0>, - <&ccu CLK_DSI1>, - <&ccu CLK_EDP>; - assigned-clock-parents = <&ccu CLK_PLL_VIDEO3_4X>, - <&ccu CLK_PLL_VIDEO0_4X>, - <&ccu CLK_PLL_VIDEO1_4X>, - <&ccu CLK_PLL_VIDEO1_4X>, - <&ccu CLK_PLL_VIDEO1_4X>, - <&ccu CLK_PLL_VIDEO1_4X>, - <&ccu CLK_PLL_VIDEO0_4X>, - <&ccu CLK_PLL_VIDEO1_4X>, - <&ccu CLK_PLL_PERI0_150M>, - <&ccu CLK_PLL_PERI0_150M>, - <&ccu CLK_PLL_VIDEO1_4X>; - assigned-clock-rates = <600000000>; - - cldo3-supply = <®_cldo3>; - dcdc4-supply = <®_dcdc4>; - cldo1-supply = <®_cldo1>; - - pwms = <&pwm0 4 5000000 0>, <&pwm0 5 5000000 0>; - pwm-names = "lvds0_backlight", "lvds2_backlight"; - - power-domains = <&pd1 A523_PCK_DE>, <&pd1 A523_PCK_VO0>, <&pd1 A523_PCK_VO1>; - power-domain-names = "pd_de", "pd_vo0", "pd_vo1"; - - pinctrl-names = "active", "sleep"; - pinctrl-0 = <&pwm0_0_pin_active>; - pinctrl-1 = <&pwm0_0_pin_sleep>; -}; - -&lcd0 { - lcd_used = <1>; - - lcd_driver_name = "bp101wx1"; - lcd_backlight = <50>; - lcd_if = <3>; - - lcd_x = <1280>; - lcd_y = <800>; - lcd_width = <150>; - lcd_height = <94>; - lcd_dclk_freq = <75>; - - lcd_pwm_used = <1>; - lcd_pwm_ch = <4>; - lcd_pwm_freq = <50000>; - lcd_pwm_pol = <0>; - lcd_pwm_max_limit = <255>; - lcd_pwm_name = "lvds0_backlight"; - - lcd_hbp = <88>; - lcd_ht = <1451>; - lcd_hspw = <18>; - lcd_vbp = <23>; - lcd_vt = <860>; - lcd_vspw = <10>; - - lcd_lvds_if = <0>; - lcd_lvds_colordepth = <0>; - lcd_lvds_mode = <0>; - lcd_frm = <0>; - lcd_hv_clk_phase = <0>; - lcd_hv_sync_polarity= <0>; - lcd_gamma_en = <0>; - lcd_bright_curve_en = <0>; - lcd_cmap_en = <0>; - lcd_fsync_en = <0>; - lcd_fsync_act_time = <1000>; - lcd_fsync_dis_time = <1000>; - lcd_fsync_pol = <0>; - lcd_start_delay = <5>; - deu_mode = <0>; - lcdgamma4iep = <22>; - smart_color = <90>; - - lcd_pin_power = "cldo3"; - lcd_power = "dcdc4"; - lcd_power1 = "cldo1"; - lcd_gpio_0 = <&pio PI 2 GPIO_ACTIVE_HIGH>; //reset - lcd_bl_en = <&pio PI 2 GPIO_ACTIVE_HIGH>; - - pinctrl-0 = <&lvds0_pins_a>; - pinctrl-1 = <&lvds0_pins_b>; - lvds0_pinctrl-0 = <&lvds0_pins_a>; - lvds0_pinctrl-1 = <&lvds0_pins_b>; - lvds1_pinctrl-0 = <&lvds1_pins_a>; - lvds1_pinctrl-1 = <&lvds1_pins_b>; - dsi0_pinctrl-0 = <&dsi0_4lane_pins_a>; - dsi0_pinctrl-1 = <&dsi0_4lane_pins_b>; - dual_dsi_pinctrl-0 = <&dsi0_4lane_pins_a>, <&dsi1_4lane_pins_a>; - dual_dsi_pinctrl-1 = <&dsi0_4lane_pins_b>, <&dsi1_4lane_pins_b>; - dual_lvds0_pinctrl-0 = <&lvds0_pins_a>, <&lvds1_pins_a>; - dual_lvds0_pinctrl-1 = <&lvds0_pins_b>, <&lvds1_pins_b>; -}; - -&lcd1 { - lcd_used = <1>; - status = "okay"; - lcd_driver_name = "SQ101D_Q5DI404_84H501"; - lcd_backlight = <200>; - lcd_if = <4>; - - lcd_x = <1200>; - lcd_y = <1920>; - lcd_width = <136>; - lcd_height = <217>; - lcd_dclk_freq = <157>; - - lcd_pwm_used = <1>; - lcd_pwm_ch = <0>; - lcd_pwm_freq = <50000>; - lcd_pwm_pol = <0>; - lcd_pwm_max_limit = <255>; - - lcd_hbp = <50>; - lcd_ht = <1330>; - lcd_hspw = <10>; - lcd_vbp = <20>; - lcd_vt = <1960>; - lcd_vspw = <4>; - - lcd_frm = <0>; - lcd_gamma_en = <0>; - lcd_bright_curve_en = <0>; - lcd_cmap_en = <0>; - lcd_start_delay = <5>; - - deu_mode = <0>; - lcdgamma4iep = <22>; - smart_color = <90>; - - lcd_dsi_if = <0>; - lcd_dsi_lane = <4>; - lcd_dsi_format = <0>; - lcd_dsi_te = <0>; - lcd_dsi_eotp = <0>; - - lcd_power1 = "cldo4"; - lcd_power2 = "cldo1"; - - // lcd_gpio_2 = <&pio PD 22 GPIO_ACTIVE_HIGH>; //reset - - pinctrl-0 = <&dsi1_4lane_pins_a>; - pinctrl-1 = <&dsi1_4lane_pins_b>; - - // lcd_bl_en = <&pio PH 16 GPIO_ACTIVE_HIGH>; - lcd_bl_0_percent = <5>; -}; - -&lcd2 { - lcd_used = <0>; - - lcd_driver_name = "bp101wx1"; - lcd_backlight = <50>; - lcd_if = <3>; - - lcd_x = <1280>; - lcd_y = <800>; - lcd_width = <150>; - lcd_height = <94>; - lcd_dclk_freq = <75>; - - lcd_pwm_used = <1>; - lcd_pwm_ch = <5>; - lcd_pwm_freq = <50000>; - lcd_pwm_pol = <0>; - lcd_pwm_max_limit = <255>; - lcd_pwm_name = "lvds2_backlight"; - - lcd_hbp = <88>; - lcd_ht = <1451>; - lcd_hspw = <18>; - lcd_vbp = <23>; - lcd_vt = <860>; - lcd_vspw = <10>; - - lcd_lvds_if = <0>; - lcd_lvds_colordepth = <0>; - lcd_lvds_mode = <0>; - lcd_frm = <0>; - lcd_hv_clk_phase = <0>; - lcd_hv_sync_polarity= <0>; - lcd_gamma_en = <0>; - lcd_bright_curve_en = <0>; - lcd_cmap_en = <0>; - lcd_fsync_en = <0>; - lcd_fsync_pol = <0>; - lcd_start_delay = <5>; - deu_mode = <0>; - lcdgamma4iep = <22>; - smart_color = <90>; - - lcd_pin_power = "cldo3"; - lcd_power = "dcdc4"; - /* lvds_power & other interface power */ - lcd_bl_en = <&pio PI 5 GPIO_ACTIVE_HIGH>; - pinctrl-0 = <&lvds2_pins_a>; - pinctrl-1 = <&lvds2_pins_b>; - lvds2_pinctrl-0 = <&lvds2_pins_a>; - lvds2_pinctrl-1 = <&lvds2_pins_b>; - lvds3_pinctrl-0 = <&lvds3_pins_a>; - lvds3_pinctrl-1 = <&lvds3_pins_b>; - dual_lvds1_pinctrl-0 = <&lvds2_pins_a>, <&lvds3_pins_a>; - dual_lvds1_pinctrl-1 = <&lvds2_pins_b>, <&lvds3_pins_b>; -}; - -&edp0 { - // use if hardware reset pin is need - /* edp_hw_reset_pin = <&pio PH XX GPIO_ACTIVE_LOW>; */ - - edp_ssc_en = <0>; - edp_ssc_mode = <0>; - edp_psr_support = <0>; - edp_colordepth = <8>; /* 6/8/10/12/16 */ - edp_color_fmt = <0>; /* 0:RGB 1: YUV444 2: YUV422 */ - - lane0_sw = <0>; - lane0_pre = <0>; - lane1_sw = <0>; - lane1_pre = <0>; - lane2_sw = <0>; - lane2_pre = <0>; - lane3_sw = <0>; - lane3_pre = <0>; - efficient_training = <0>; - - sink_capacity_prefer = <1>; - edid_timings_prefer = <1>; - timings_fixed = <1>; - - edp_panel_used = <1>; - edp_panel_driver = "general_panel"; - edp_bl_en = <&pio PI 5 GPIO_ACTIVE_HIGH>; - edp_pwm_used = <1>; - edp_pwm_ch = <5>; - edp_pwm_freq = <50000>; - edp_pwm_pol = <0>; - edp_default_backlight = <200>; - edp_panel_power_0 = "edp-panel"; - - vcc-edp-supply = <®_bldo3>; - vdd-edp-supply = <®_dcdc2>; - edp-panel-supply = <®_dcdc4>; - status = "disabled"; - -}; - -&ve { - ve-supply = <®_dcdc2>; - - enable_setup_ve_freq = <0>; /* default disable */ - ve_freq_value = <624>; /* setup to 624MHz */ -}; - -/* audio dirver module -> audio codec */ -&codec { - tx-hub-en; - rx-sync-en; - - dac-vol = <63>; /* default value:63 range:0->63 */ - dacl-vol = <160>; /* default value:160 range:0->255 */ - dacr-vol = <160>; /* default value:160 range:0->255 */ - adc1-vol = <160>; /* default value:160 range:0->255 */ - adc2-vol = <160>; /* default value:160 range:0->255 */ - adc3-vol = <160>; /* default value:160 range:0->255 */ - lineout-gain = <31>; /* default value:31 range:0->31 */ - hpout-gain = <7>; /* default value:7 range:0->7 */ - adc1-gain = <31>; /* default value:31 range:0->31 */ - adc2-gain = <31>; /* default value:31 range:0->31 */ - adc3-gain = <31>; /* default value:31 range:0->31 */ - - /* to do: avcc-1.8 vdd33-3.3 cpvin-1.8 */ - avcc-external; - avcc-supply = <®_aldo4>; - avcc-vol = <1800000>; - vdd-external; - vdd-supply = <®_cldo3>; - vdd-vol = <3300000>; - cpvin-external; - cpvin-supply = <®_bldo3>; - cpvin-vol = <1800000>; - - pa-pin-max = <1>; - pa-pin-0 = <&r_pio PL 7 GPIO_ACTIVE_HIGH>; - pa-pin-level-0 = <1>; - pa-pin-msleep-0 = <0>; - - jack-det-level = <0>; - jack-det-threshold = <8>; - jack-det-debouce-time = <250>; - - /* extcon = <&usb_power_supply>; - * jack-swpin-mic-sel = <&pio PH 8 GPIO_ACTIVE_HIGH>; - * jack-swpin-hp-en = <&pio PH 15 GPIO_ACTIVE_HIGH>; - * jack-swpin-hp-sel = <&pio PH 11 GPIO_ACTIVE_HIGH>; - * jack-swmode-hp-off = <0x00>; - * jack-swmode-hp-usb = <0x11>; - * jack-swmode-hp-audio = <0x10>; - * jack-det-level = <1>; - * jack-det-threshold = <8>; - * jack-det-debouce-time = <250>; - */ - - status = "okay"; -}; - -&codec_plat { - status = "okay"; -}; - -&codec_mach { - soundcard-mach,jack-support = <1>; - status = "okay"; - soundcard-mach,cpu { - sound-dai = <&codec_plat>; - }; - soundcard-mach,codec { - sound-dai = <&codec>; - }; -}; - -&hdmi_codec { - extcon = <&hdmi>; - status = "okay"; -}; - -&edp_codec { - status = "disabled"; -}; - -/* audio dirver module -> owa */ -&owa_plat { - pinctrl-used; - pinctrl-names = "default","sleep"; - pinctrl-0 = <&owa_pins_a>; - pinctrl-1 = <&owa_pins_b>; - tx-hub-en; - status = "disabled"; -}; - -&owa_mach { - status = "disabled"; - soundcard-mach,cpu { - sound-dai = <&owa_plat>; - }; - soundcard-mach,codec { - }; -}; - -/* audio dirver module -> DMIC */ -&dmic_plat { - rx-chmap = <0x76543210>; - data-vol = <0xB0>; - rxdelaytime = <0>; - /* pinctrl-used; */ - /* pinctrl-names = "default","sleep"; */ - /* pinctrl-0 = <&dmic_pins_a>; */ - /* pinctrl-1 = <&dmic_pins_b>; */ - rx-sync-en; - status = "disabled"; -}; - -&dmic_mach { - status = "disabled"; - soundcard-mach,cpu { - sound-dai = <&dmic_plat>; - }; - soundcard-mach,codec { - }; -}; - -/* audio dirver module -> I2S/PCM */ -&i2s0_plat { - tdm-num = <0>; - tx-pin = <0>; - rx-pin = <0>; - pinctrl-used; - pinctrl-names = "default","sleep"; - pinctrl-0 = <&i2s0_pins_a &i2s0_pins_c &i2s0_pins_d>; - pinctrl-1 = <&i2s0_pins_b>; - tx-hub-en; - rx-sync-en; - status = "disabled"; -}; - -&i2s0_mach { - soundcard-mach,format = "i2s"; - soundcard-mach,frame-master = <&i2s0_cpu>; - soundcard-mach,bitclock-master = <&i2s0_cpu>; - /* soundcard-mach,frame-inversion; */ - /* soundcard-mach,bitclock-inversion; */ - soundcard-mach,slot-num = <2>; - soundcard-mach,slot-width = <32>; - soundcard-mach,capture-only; - status = "disabled"; - i2s0_cpu: soundcard-mach,cpu { - sound-dai = <&i2s0_plat>; - /* note: pll freq = 24.576M or 22.5792M * pll-fs */ - soundcard-mach,pll-fs = <1>; - /* note: - * mclk freq = mclk-fs * 12.288M or 11.2896M (when mclk-fp ture) - * mclk freq = mclk-fs * pcm rate (when mclk-fp false) - */ - soundcard-mach,mclk-fp; - soundcard-mach,mclk-fs = <1>; - }; - i2s0_codec: soundcard-mach,codec { - }; -}; - -&i2s1_plat { - tdm-num = <1>; - tx-pin = <0>; - rx-pin = <0>; - /* pinctrl-used; */ - /* pinctrl-names= "default","sleep"; */ - /* pinctrl-0 = <&i2s1_pins_a &i2s1_pins_c &i2s1_pins_d>; */ - /* pinctrl-1 = <&i2s1_pins_b>; */ - tx-hub-en; - rx-sync-en; - status = "disabled"; -}; - -&i2s1_mach { - soundcard-mach,format = "i2s"; - soundcard-mach,frame-master = <&i2s1_cpu>; - soundcard-mach,bitclock-master = <&i2s1_cpu>; - /* soundcard-mach,frame-inversion; */ - /* soundcard-mach,bitclock-inversion; */ - soundcard-mach,slot-num = <2>; - soundcard-mach,slot-width = <32>; - status = "disabled"; - i2s1_cpu: soundcard-mach,cpu { - sound-dai = <&i2s1_plat>; - soundcard-mach,pll-fs = <1>; - soundcard-mach,mclk-fs = <0>; - }; - i2s1_codec: soundcard-mach,codec { - }; -}; - -&i2s2_plat { - tdm-num = <2>; - tx-pin = <0 1 2 3>; - /* e.g. - * tx-pin0-map0 = <0xFEDC3210> -> tx_pin_map[0][0] (Dout0-slot[7:0] map channel[15:12, 3:0]) - * tx-pin0-map1 = <0x3210FEDC> -> tx_pin_map[0][1] (Dout0-slot[15:8] map channel[3:0, 15:12]) - * tx-pin1-map0 = <0x76543210> -> tx_pin_map[1][0] (Dout1-slot[7:0] map channel[7:0]) - */ - tx-pin0-map0 = <0x76543210>; - tx-pin0-map1 = <0xFEDCBA98>; - tx-pin1-map0 = <0x76543210>; - tx-pin1-map1 = <0xFEDCBA98>; - tx-pin2-map0 = <0x76543210>; - tx-pin2-map1 = <0xFEDCBA98>; - tx-pin3-map0 = <0x76543210>; - tx-pin3-map1 = <0xFEDCBA98>; - rx-pin = <0>; - /* pinctrl-used; */ - /* pinctrl-names= "default","sleep"; */ - /* pinctrl-0 = <&i2s2_pins_a &i2s2_pins_c &i2s2_pins_d &i2s2_pins_e>; */ - /* pinctrl-1 = <&i2s2_pins_b>; */ - tx-hub-en; - rx-sync-en; - /* edp not need dai-type */ - dai-type = "hdmi"; - status = "okay"; -}; - -&i2s2_mach { - soundcard-mach,format = "i2s"; - soundcard-mach,frame-master = <&i2s2_cpu>; - soundcard-mach,bitclock-master = <&i2s2_cpu>; - /* soundcard-mach,frame-inversion; */ - /* soundcard-mach,bitclock-inversion; */ - soundcard-mach,slot-num = <2>; - soundcard-mach,slot-width = <32>; - soundcard-mach,playback-only; - status = "okay"; - i2s2_cpu: soundcard-mach,cpu { - sound-dai = <&i2s2_plat>; - soundcard-mach,pll-fs = <1>; - /* edp mclk: 512fs */ - soundcard-mach,mclk-fs = <0>; - }; - i2s2_codec: soundcard-mach,codec { - sound-dai = <&hdmi_codec>; - }; -}; - -&i2s3_plat { - tdm-num = <3>; - tx-pin = <0>; - rx-pin = <0>; - /* pinctrl-used; */ - /* pinctrl-names= "default","sleep"; */ - /* pinctrl-0 = <&i2s3_pins_a &i2s3_pins_c &i2s3_pins_d>; */ - /* pinctrl-1 = <&i2s3_pins_b>; */ - tx-hub-en; - rx-sync-en; - status = "disabled"; -}; - -&i2s3_mach { - soundcard-mach,format = "i2s"; - soundcard-mach,frame-master = <&i2s3_cpu>; - soundcard-mach,bitclock-master = <&i2s3_cpu>; - /* soundcard-mach,frame-inversion; */ - /* soundcard-mach,bitclock-inversion; */ - soundcard-mach,slot-num = <2>; - soundcard-mach,slot-width = <32>; - status = "disabled"; - i2s3_cpu: soundcard-mach,cpu { - sound-dai = <&i2s3_plat>; - soundcard-mach,pll-fs = <1>; - soundcard-mach,mclk-fs = <0>; - }; - i2s3_codec: soundcard-mach,codec { - }; -}; - -&hdmi { - hdmi_used = <1>; - bldo3-supply = <®_bldo3>; - hdmi_power0 = "bldo3"; - hdmi_power_cnt = <1>; - hdmi_hdcp_enable = <1>; - hdmi_hdcp22_enable = <0>; - hdmi_cts_compatibility = <0>; - hdmi_cec_support = <1>; - hdmi_cec_super_standby = <1>; - hdmi_skip_bootedid = <1>; - - ddc_en_io_ctrl = <0>; - power_io_ctrl = <0>; - - status = "okay"; -}; - -&cpu0 { - cpu-supply = <®_dcdc1>; -}; - -&dsufreq { - dsu-supply = <®_dcdc1>; -}; - -&mdio0 { - status = "okay"; - gmac0_phy0: ethernet-phy@1 { - reset-gpios = <&pio PH 8 GPIO_ACTIVE_LOW>; - }; -}; - -&gmac0 { - phy-mode = "rgmii"; - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&gmac0_pins_default>; - pinctrl-1 = <&gmac0_pins_sleep>; - sunxi,phy-clk-type = <0>; - tx-delay = <3>; - rx-delay = <4>; - - gmac3v3-supply = <®_cldo4>; - status = "okay"; -}; - - -&gmac1 { - phy-mode = "rgmii"; - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&gmac1_pins_default>; - pinctrl-1 = <&gmac1_pins_sleep>; - aw,soc-phy25m; - tx-delay = <3>; - rx-delay = <4>; - dwmac3v3-supply = <®_cldo4>; - status = "okay"; - mdio1: mdio1@1 { - gmac1_phy0: ethernet-phy@1 { - reset-gpios = <&pio PJ 16 GPIO_ACTIVE_LOW>; - }; - }; - -}; - -&npu { - npu-supply = <®_ext_axp1530_dcdc3>; - status = "okay"; -}; - -&dram { - dram_para00 = <0x00000000>; - dram_para01 = <0x00000000>; - dram_para02 = <0x00000000>; - dram_para03 = <0x00000000>; - dram_para04 = <0x00000000>; - dram_para05 = <0x00000000>; - dram_para06 = <0x00000000>; - dram_para07 = <0x00000000>; - dram_para08 = <0x00000000>; - dram_para09 = <0x00000000>; - dram_para10 = <0x00000000>; - dram_para11 = <0x00000000>; - dram_para12 = <0x00000000>; - dram_para13 = <0x00000000>; - dram_para14 = <0x00000000>; - dram_para15 = <0x00000000>; - dram_para16 = <0x00000000>; - dram_para17 = <0x00000000>; - dram_para18 = <0x00000000>; - dram_para19 = <0x00000000>; - dram_para20 = <0x00000000>; - dram_para21 = <0x00000000>; - dram_para22 = <0x00000000>; - dram_para23 = <0x00000000>; - dram_para24 = <0x00000000>; - dram_para25 = <0x00000000>; - dram_para26 = <0x00000000>; - dram_para27 = <0x00000000>; - dram_para28 = <0x00000000>; - dram_para29 = <0x00000000>; - dram_para30 = <0x00000000>; - dram_para31 = <0x00000000>; - dram_para32 = <0x00000000>; - dram_para33 = <0x00000000>; - dram_para34 = <0x00000000>; - dram_para35 = <0x00000000>; - dram_para36 = <0x00000000>; - dram_para37 = <0x00000000>; - dram_para38 = <0x00000000>; - dram_para39 = <0x00000000>; - dram_para40 = <0x00000000>; - dram_para41 = <0x00000000>; - dram_para42 = <0x00000000>; - dram_para43 = <0x00000000>; - dram_para44 = <0x00000000>; - dram_para45 = <0x00000000>; - dram_para46 = <0x00000000>; - dram_para47 = <0x00000000>; - dram_para48 = <0x00000000>; - dram_para49 = <0x00000000>; - dram_para50 = <0x00000000>; - dram_para51 = <0x00000000>; - dram_para52 = <0x00000000>; - dram_para53 = <0x00000000>; - dram_para54 = <0x00000000>; - dram_para55 = <0x00000000>; - dram_para56 = <0x00000000>; - dram_para57 = <0x00000000>; - dram_para58 = <0x00000000>; - dram_para59 = <0x00000000>; - dram_para60 = <0x00000000>; - dram_para61 = <0x00000000>; - dram_para62 = <0x00000000>; - dram_para63 = <0x00000000>; - dram_para64 = <0x00000000>; - dram_para65 = <0x00000000>; - dram_para66 = <0x00000000>; - dram_para67 = <0x00000000>; - dram_para68 = <0x00000000>; - dram_para69 = <0x00000000>; - dram_para70 = <0x00000000>; - dram_para71 = <0x00000000>; - dram_para72 = <0x00000000>; - dram_para73 = <0x00000000>; - dram_para74 = <0x00000000>; - dram_para75 = <0x00000000>; - dram_para76 = <0x00000000>; - dram_para77 = <0x00000000>; - dram_para78 = <0x00000000>; - dram_para79 = <0x00000000>; - dram_para80 = <0x00000000>; - dram_para81 = <0x00000000>; - dram_para82 = <0x00000000>; - dram_para83 = <0x00000000>; - dram_para84 = <0x00000000>; - dram_para85 = <0x00000000>; - dram_para86 = <0x00000000>; - dram_para87 = <0x00000000>; - dram_para88 = <0x00000000>; - dram_para89 = <0x00000000>; - dram_para90 = <0x00000000>; - dram_para91 = <0x00000000>; - dram_para92 = <0x00000000>; - dram_para93 = <0x00000000>; - dram_para94 = <0x00000000>; - dram_para95 = <0x00000000>; -}; - -&cpul_thermal_zone { - cpul_trips: trips { - cpul_crit: cpu_crit@0 { - temperature = <115000>; - type = "critical"; - hysteresis = <0>; - }; - }; -}; - -&cpub_thermal_zone { - cpub_trips: trips { - cpub_crit: cpu_crit@0 { - temperature = <115000>; - type = "critical"; - hysteresis = <0>; - }; - }; -}; - -&gpu_thermal_zone { - gpu_trips: trips { - gpu_crit: gpu_crit@0 { - temperature = <115000>; - type = "critical"; - hysteresis = <0>; - }; - }; -}; - -&pd1 { - /* pk */ - pd1_vi@A523_PCK_VI { - ppu-always-on; - }; - - /* pd */ - pd1_vo0@A523_PCK_VO0 { - ppu-always-on; - }; - - /* pj */ - pd1_vo1@A523_PCK_VO1 { - ppu-always-on; - }; -}; +}; \ No newline at end of file diff --git a/arch/arm64/boot/dts/allwinner/sun55i-t527-longanpi-4b-usb3.dts b/arch/arm64/boot/dts/allwinner/sun55i-t527-longanpi-4b-usb3.dts index f4bdd824de..c4b0e266b1 100644 --- a/arch/arm64/boot/dts/allwinner/sun55i-t527-longanpi-4b-usb3.dts +++ b/arch/arm64/boot/dts/allwinner/sun55i-t527-longanpi-4b-usb3.dts @@ -4,3453 +4,20 @@ /dts-v1/; -#include "sun55i-t527.dtsi" +#include "sun55i-t527-longanpi-4b.dtsi" /{ - board = "T527", "T527-LM4B"; + board = "T527", "T527-LM4B(USB3 Mode)"; compatible = "allwinner,t527", "arm,sun55iw3p1", "Sipeed,T527-LM4B"; - - aliases { - pmu0 = &pmu0; - serial0 = &uart0; - hdmi = &hdmi; - reg-axp1530 = ®_ext_axp1530_dcdc1; - axp1530 = &axp1530; - cpu-ext = &cpu4; - standby-param = &standby_param; - arisc-config = &arisc_config; - cir_param = &cir_param; - }; - - reg_usb0_vbus: usb0-vbus { - compatible = "regulator-fixed"; - regulator-name = "usb0-vbus"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - regulator-enable-ramp-delay = <1000>; - gpio = <&pio PB 12 GPIO_ACTIVE_HIGH>; - enable-active-high; - }; - - reg_usb1_vbus: usb1-vbus { - compatible = "regulator-fixed"; - regulator-name = "usb1-vbus"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - regulator-enable-ramp-delay = <1000>; - gpio = <&pio PB 3 GPIO_ACTIVE_HIGH>; - enable-active-high; - }; - - standby_param: standby_param { - vdd-cpu = <0x00000001>; - vdd-cpub = <0x00000001>; - vdd-sys = <0x00000002>; - vcc-pll = <0x00000080>; - vcc-io = <0x00004000>; - - osc24m-on = <0x0>; - }; - - cir_param: cir_param { - gpio_group = <1>; /* 0:PL 1:PM */ - gpio_pin = <11>; - gpio_function = <2>; - count = <15>; - ir_power_key_code0 = <0x40>; - ir_addr_code0 = <0xfe01>; - ir_power_key_code1 = <0x1a>; - ir_addr_code1 = <0xfb04>; - ir_power_key_code2 = <0xf2>; - ir_addr_code2 = <0x2992>; - ir_power_key_code3 = <0x57>; - ir_addr_code3 = <0x9f00>; - ir_power_key_code4 = <0xdc>; - ir_addr_code4 = <0x4cb3>; - ir_power_key_code5 = <0x18>; - ir_addr_code5 = <0xff00>; - ir_power_key_code6 = <0xdc>; - ir_addr_code6 = <0xdd22>; - ir_power_key_code7 = <0x0d>; - ir_addr_code7 = <0xbc00>; - ir_power_key_code8 = <0x4d>; - ir_addr_code8 = <0x4040>; - ir_power_key_code9 = <0x08>; - ir_addr_code9 = <0xfb04>; - ir_power_key_code10 = <0x00>; - ir_addr_code10 = <0xfc03>; - ir_power_key_code11 = <0x00>; - ir_addr_code11 = <0xbf00>; - ir_power_key_code12 = <0xea>; - ir_addr_code12 = <0xfb04>; - ir_power_key_code13 = <0x42>; - ir_addr_code13 = <0xbf00>; - ir_power_key_code14 = <0x0f>; - ir_addr_code14 = <0xff00>; - }; - - arisc_config: arisc_config { - s_uart_config { - pins = "PL2", "PL3"; - function = <2>, <2>; - status = "disabled"; - }; - }; - - reserved-memory { - dsp0ddr_reserved: dsp0ddr@4a000000 { - reg = <0x0 0x4a000000 0x0 0x00a00000>; - no-map; - }; - - riscvsram0_reserved: riscvsram0@7280000 { - reg = <0x0 0x07280000 0x0 0x40000>; - no-map; - }; - - riscvsram1_reserved: riscvsram1@72c0000 { - reg = <0x0 0x072c0000 0x0 0x40000>; - no-map; - }; - - /* - * The name should be "vdev%dbuffer". - * Its size should be not less than - * RPMSG_BUF_SIZE * (num of buffers in a vring) * 2 - * = 512 * (num of buffers in a vring) * 2 - */ - dsp_vdev0buffer: vdev0buffer@4ac00000 { - compatible = "shared-dma-pool"; - reg = <0x0 0x4ac00000 0x0 0x40000>; - no-map; - }; - - /* - * The name should be "vdev%dvring%d". - * The size of each should be not less than - * PAGE_ALIGN(vring_size(num, align)) - * = PAGE_ALIGN(16 * num + 6 + 2 * num + (pads for align) + 6 + 8 * num) - * - * (Please refer to the vring layout in include/uapi/linux/virtio_ring.h) - */ - dsp_vdev0vring0: vdev0vring0@4ac40000 { - reg = <0x0 0x4ac40000 0x0 0x2000>; - no-map; - }; - dsp_vdev0vring1: vdev0vring1@4ac42000 { - reg = <0x0 0x4ac42000 0x0 0x2000>; - no-map; - }; - - /* - * The name should be "vdev%dbuffer". - * Its size should be not less than - * RPMSG_BUF_SIZE * (num of buffers in a vring) * 2 - * = 512 * (num of buffers in a vring) * 2 - */ - rv_vdev0buffer: vdev0buffer@4ae00000 { - compatible = "shared-dma-pool"; - reg = <0x0 0x4ae00000 0x0 0x40000>; - no-map; - }; - - /* - * The name should be "vdev%dvring%d". - * The size of each should be not less than - * PAGE_ALIGN(vring_size(num, align)) - * = PAGE_ALIGN(16 * num + 6 + 2 * num + (pads for align) + 6 + 8 * num) - * - * (Please refer to the vring layout in include/uapi/linux/virtio_ring.h) - */ - rv_vdev0vring0: vdev0vring0@4ae40000 { - reg = <0x0 0x4ae40000 0x0 0x2000>; - no-map; - }; - rv_vdev0vring1: vdev0vring1@4ae42000 { - reg = <0x0 0x4ae42000 0x0 0x2000>; - no-map; - }; - - /* - * mcu ram addr - */ - mcu0iram_reserved: mcu0iram@20000 { - reg = <0x0 0x20000 0x0 0x10000>; - no-map; - }; - mcu0dram0_reserved: mcu0dram0@30000 { - reg = <0x0 0x30000 0x0 0x8000>; - no-map; - }; - mcu0dram1_reserved: mcu0dram1@38000 { - reg = <0x0 0x38000 0x0 0x8000>; - no-map; - }; - - dsp0_rpbuf_reserved: dsp0_rpbuf@4ae44000 { - compatible = "shared-dma-pool"; - no-map; - reg = <0x0 0x4ae44000 0x0 0x8000>; - }; - - dsp_share_space@4ab00000 { - no-map; - reg = <0x0 0x4ab00000 0x0 0x10000>; - }; - }; - - rpbuf_controller0: rpbuf_controller@0 { - compatible = "allwinner,rpbuf-controller"; - remoteproc = <&dsp0_rproc>; - ctrl_id = <0>; - memory-region = <&dsp0_rpbuf_reserved>; - status = "okay"; - }; - - edp_panel_backlight: edp_backlight { - compatible = "pwm-backlight"; - status = "disabled"; - brightness-levels = < - 0 1 2 3 4 5 6 7 - 8 9 10 11 12 13 14 15 - 16 17 18 19 20 21 22 23 - 24 25 26 27 28 29 30 31 - 32 33 34 35 36 37 38 39 - 40 41 42 43 44 45 46 47 - 48 49 50 51 52 53 54 55 - 56 57 58 59 60 61 62 63 - 64 65 66 67 68 69 70 71 - 72 73 74 75 76 77 78 79 - 80 81 82 83 84 85 86 87 - 88 89 90 91 92 93 94 95 - 96 97 98 99 100 101 102 103 - 104 105 106 107 108 109 110 111 - 112 113 114 115 116 117 118 119 - 120 121 122 123 124 125 126 127 - 128 129 130 131 132 133 134 135 - 136 137 138 139 140 141 142 143 - 144 145 146 147 148 149 150 151 - 152 153 154 155 156 157 158 159 - 160 161 162 163 164 165 166 167 - 168 169 170 171 172 173 174 175 - 176 177 178 179 180 181 182 183 - 184 185 186 187 188 189 190 191 - 192 193 194 195 196 197 198 199 - 200 201 202 203 204 205 206 207 - 208 209 210 211 212 213 214 215 - 216 217 218 219 220 221 222 223 - 224 225 226 227 228 229 230 231 - 232 233 234 235 236 237 238 239 - 240 241 242 243 244 245 246 247 - 248 249 250 251 252 253 254 255>; - default-brightness-level = <200>; - enable-gpios = <&pio PI 5 GPIO_ACTIVE_HIGH>; - /* power-supply = <®_backlight_12v>; */ - pwms = <&pwm0 5 5000000 0>; - }; - - edp_panel: edp_panel { - compatible = "edp-general-panel"; - status = "okay"; - power0-supply = <®_dcdc4>; - - backlight = <&edp_panel_backlight>; - - panel-timing { - clock-frequency = <348577920>; /* pixel clock */ - hactive = <2560>; - hback-porch = <120>; - hfront-porch = <88>; - hsync-len = <32>; - vactive = <1600>; - vback-porch = <71>; - vfront-porch = <28>; - vsync-len = <5>; - /* hor_sync_polarity */ - hsync-active = <1>; - /* ver_sync_polarity */ - vsync-active = <1>; - - // unused now - /* - de-active = <1>; - pixelclk-active = <1>; - syncclk-active = <0>; - interlaced; - doublescan; - doubleclk; - */ - }; - ports { - #address-cells = <1>; - #size-cells = <0>; - panel_in: port@0 { - #address-cells = <1>; - #size-cells = <0>; - reg = <0>; - edp_panel_in: endpoint@0 { - reg = <0>; - remote-endpoint = <&edp_panel_out>; - }; - }; - }; - }; - - lvds_panel0_backlight: backlight0 { - compatible = "pwm-backlight"; - status = "okay"; - brightness-levels = < - 0 1 2 3 4 5 6 7 - 8 9 10 11 12 13 14 15 - 16 17 18 19 20 21 22 23 - 24 25 26 27 28 29 30 31 - 32 33 34 35 36 37 38 39 - 40 41 42 43 44 45 46 47 - 48 49 50 51 52 53 54 55 - 56 57 58 59 60 61 62 63 - 64 65 66 67 68 69 70 71 - 72 73 74 75 76 77 78 79 - 80 81 82 83 84 85 86 87 - 88 89 90 91 92 93 94 95 - 96 97 98 99 100 101 102 103 - 104 105 106 107 108 109 110 111 - 112 113 114 115 116 117 118 119 - 120 121 122 123 124 125 126 127 - 128 129 130 131 132 133 134 135 - 136 137 138 139 140 141 142 143 - 144 145 146 147 148 149 150 151 - 152 153 154 155 156 157 158 159 - 160 161 162 163 164 165 166 167 - 168 169 170 171 172 173 174 175 - 176 177 178 179 180 181 182 183 - 184 185 186 187 188 189 190 191 - 192 193 194 195 196 197 198 199 - 200 201 202 203 204 205 206 207 - 208 209 210 211 212 213 214 215 - 216 217 218 219 220 221 222 223 - 224 225 226 227 228 229 230 231 - 232 233 234 235 236 237 238 239 - 240 241 242 243 244 245 246 247 - 248 249 250 251 252 253 254 255>; - default-brightness-level = <200>; - enable-gpios = <&pio PI 2 GPIO_ACTIVE_HIGH>; - pwms = <&pwm0 4 50000 0>; - }; - - lvds_panel0: panel@0 { - compatible = "BP101WX1"; - status = "okay"; - reg = <0>; - power0-supply = <®_cldo3>; - power1-supply = <®_dcdc4>; - power2-supply = <®_cldo1>; - - backlight = <&lvds_panel0_backlight>; - - lcd_if = <3>; - lcd_width = <150>; - lcd_height = <94>; - - pinctrl-0 = <&lvds0_pins_a>; - pinctrl-1 = <&lvds0_pins_b>; - pinctrl-names = "active","sleep"; - - panel-timing { - clock-frequency = <74871600>; /* pixel clock */ - hback-porch = <88>; - hactive = <1280>; - hfront-porch = <83>; - hsync-len = <18>; - vback-porch = <23>; - vactive = <800>; - vfront-porch = <37>; - vsync-len = <10>; - - // unused now - /* - hsync-active = <0>; - vsync-active = <0>; - de-active = <1>; - pixelclk-active = <1>; - */ - }; - ports { - #address-cells = <1>; - #size-cells = <0>; - lvds_panel0_in: port@0 { - #address-cells = <1>; - #size-cells = <0>; - reg = <0>; - lvds_panel0_in_lcd0: endpoint@0 { - reg = <0>; - remote-endpoint = <&tcon0_out_panel>; - }; - }; - }; - }; - - lvds_panel1: panel@1 { - compatible = "BP101WX1"; - status = "disabled"; - reg = <1>; - power0-supply = <®_cldo3>; - power1-supply = <®_dcdc4>; - - backlight = <&lvds_panel1_backlight>; - - lcd_if = <3>; - lcd_width = <150>; - lcd_height = <94>; - - pinctrl-0 = <&lvds2_pins_a>; - pinctrl-1 = <&lvds2_pins_b>; - pinctrl-names = "active","sleep"; - - panel-timing { - clock-frequency = <74871600>; /* pixel clock */ - hback-porch = <88>; - hactive = <1280>; - hfront-porch = <83>; - hsync-len = <18>; - vback-porch = <23>; - vactive = <800>; - vfront-porch = <37>; - vsync-len = <10>; - // unused now - /* - hsync-active = <0>; - vsync-active = <0>; - de-active = <1>; - pixelclk-active = <1>; - */ - }; - ports { - #address-cells = <1>; - #size-cells = <0>; - lvds_panel1_in: port@0 { - #address-cells = <1>; - #size-cells = <0>; - reg = <0>; - lvds_panel1_in_lcd2: endpoint@0 { - reg = <0>; - remote-endpoint = <&tcon4_out_panel>; - }; - }; - }; - }; - - lvds_panel1_backlight: backlight1 { - compatible = "pwm-backlight"; - status = "disabled"; - brightness-levels = < - 0 1 2 3 4 5 6 7 - 8 9 10 11 12 13 14 15 - 16 17 18 19 20 21 22 23 - 24 25 26 27 28 29 30 31 - 32 33 34 35 36 37 38 39 - 40 41 42 43 44 45 46 47 - 48 49 50 51 52 53 54 55 - 56 57 58 59 60 61 62 63 - 64 65 66 67 68 69 70 71 - 72 73 74 75 76 77 78 79 - 80 81 82 83 84 85 86 87 - 88 89 90 91 92 93 94 95 - 96 97 98 99 100 101 102 103 - 104 105 106 107 108 109 110 111 - 112 113 114 115 116 117 118 119 - 120 121 122 123 124 125 126 127 - 128 129 130 131 132 133 134 135 - 136 137 138 139 140 141 142 143 - 144 145 146 147 148 149 150 151 - 152 153 154 155 156 157 158 159 - 160 161 162 163 164 165 166 167 - 168 169 170 171 172 173 174 175 - 176 177 178 179 180 181 182 183 - 184 185 186 187 188 189 190 191 - 192 193 194 195 196 197 198 199 - 200 201 202 203 204 205 206 207 - 208 209 210 211 212 213 214 215 - 216 217 218 219 220 221 222 223 - 224 225 226 227 228 229 230 231 - 232 233 234 235 236 237 238 239 - 240 241 242 243 244 245 246 247 - 248 249 250 251 252 253 254 255>; - default-brightness-level = <200>; - enable-gpios = <&pio PI 5 GPIO_ACTIVE_HIGH>; - pwms = <&pwm0 5 5000000 0>; - }; -}; - -&de { - chn_cfg_mode = <3>; - status = "okay"; -}; - -&vo0 { - status = "okay"; -}; - -&vo1 { - status = "okay"; -}; - -/* HDMI DRM */ -&tv0 { - status = "okay"; -}; - -&dlcd0 { - status = "okay"; - panel = <&lvds_panel0>; - ports { - tcon0_out: port@1 { - tcon0_out_panel: endpoint@2 { - reg = <2>; - remote-endpoint = <&lvds_panel0_in_lcd0>; - }; - }; - }; - -}; - -&dlcd2 { - status = "disabled"; - panel = <&lvds_panel1>; - ports { - tcon4_out: port@1 { - tcon4_out_panel: endpoint@0 { - reg = <0>; - remote-endpoint = <&lvds_panel1_in_lcd2>; - }; - }; - }; -}; - -&dsi0combophy { - status = "okay"; -}; - -&dsi1combophy { - status = "okay"; -}; - -&drm_edp { - status = "disabled"; - - edp_ssc_en = <0>; - edp_ssc_mode = <0>; - edp_psr_support = <0>; - edp_colordepth = <8>; /* 6/8/10/12/16 */ - edp_color_fmt = <0>; /* 0:RGB 1: YUV444 2: YUV422 */ - - lane1_sw = <0>; - lane1_pre = <0>; - lane2_sw = <0>; - lane2_pre = <0>; - lane3_sw = <0>; - lane3_pre = <0>; - efficient_training = <0>; - - sink_capacity_prefer = <1>; - edid_timings_prefer = <1>; - timings_fixed = <1>; - - vcc-edp-supply = <®_bldo3>; - vdd-edp-supply = <®_dcdc2>; - panel = <&edp_panel>; - ports { - edp_out: port@1 { - edp_panel_out: endpoint@0 { - reg = <0>; - remote-endpoint = <&edp_panel_in>; - }; - }; - }; -}; - -&r_pio { - uart8_pins_a: uart8_pins@0 { - pins = "PL2", "PL3"; - function = "s_uart0"; - }; - - uart8_pins_b: uart8_pins@1 { - pins = "PL2", "PL3"; - function = "gpio_in"; - }; - - uart9_pins_a: uart9_pins@0 { - pins = "PM0", "PM1"; - function = "s_uart1"; - }; - - uart9_pins_b: uart9_pins@1 { - pins = "PM0", "PM1"; - function = "gpio_in"; - }; - - s_twi0_pins_default: s_twi0@0 { - pins = "PL0", "PL1"; - function = "s_twi0"; - drive-strength = <10>; - bias-pull-up; - }; - - s_twi0_pins_sleep: s_twi0@1 { - pins = "PL0", "PL1"; - function = "gpio_in"; - }; - - s_twi1_pins_default: s_twi1@0 { - pins = "PL8", "PL9"; - function = "s_twi1"; - drive-strength = <10>; - bias-pull-up; - }; - - s_twi1_pins_sleep: s_twi1@1 { - pins = "PL8", "PL9"; - function = "gpio_in"; - }; - - s_twi2_pins_default: s_twi2@0 { - pins = "PL12", "PL13"; - function = "s_twi2"; - drive-strength = <10>; - bias-pull-up; - }; - - s_twi2_pins_sleep: s_twi2@1 { - pins = "PL12", "PL13"; - function = "gpio_in"; - }; - - s_irrx_pins_default: s_irrx@0 { - pins = "PL11"; - function = "s_cir"; - }; - - s_irrx_pins_sleep: s_irrx@1 { - pins = "PL11"; - function = "gpio_in"; - }; -}; - -&pio { - vcc-pg-supply = <®_pio1_8>; - vcc-pf-supply = <®_pio1_8>; - vcc-pfo-supply = <®_pio3_3>; - vcc-pd-supply = <®_dcdc4>; - vcc-pe-supply = <®_pio1_8>; - vcc-pi-supply = <®_dcdc4>; - vcc-pj-supply = <®_dcdc4>; - vcc-pk-supply = <®_dcdc4>; - uart0_pins_a: uart0_pins@0 { - pins = "", ""; - function = "uart0"; - }; - - uart0_pins_b: uart0_pins@1 { - pins = "", ""; - function = "gpio_in"; - }; - - uart2_pins_a: uart2_pins@0 { - pins = "PB0", "PB1"; - function = "uart2"; - }; - - uart2_pins_b: uart2_pins@1 { - pins = "PB0", "PB1"; - function = "gpio_in"; - }; - - uart3_pins_a: uart3_pins@0 { - pins = "PD14", "PD15"; - function = "uart3"; - }; - - uart3_pins_b: uart3_pins@1 { - pins = "PD14", "PD15"; - function = "gpio_in"; - }; - - uart4_pins_a: uart4_pins@0 { - pins = "PD18", "PD19"; - function = "uart4"; - }; - - uart4_pins_b: uart4_pins@1 { - pins = "PD18", "PD19"; - function = "gpio_in"; - }; - - uart5_pins_a: uart5_pins@0 { - pins = "PE11", "PE12"; - function = "uart5"; - }; - - uart5_pins_b: uart5_pins@1 { - pins = "PE11", "PE12"; - function = "gpio_in"; - }; - - uart6_pins_a: uart6_pins@0 { - pins = "PI6", "PI7"; - function = "uart6"; - }; - - uart6_pins_b: uart6_pins@1 { - pins = "PI6", "PI7"; - function = "gpio_in"; - }; - - uart7_pins_a: uart7_pins@0 { - pins = "PB11", "PB12"; - function = "uart7"; - }; - - uart7_pins_b: uart7_pins@1 { - pins = "PB11", "PB12"; - function = "gpio_in"; - }; - - pwm0_0_pin_active: pwm0_0@0 { - pins = "PD23"; - function = "pwm0_0"; - }; - - pwm0_0_pin_sleep: pwm0_0@1 { - pins = "PD23"; - function = "gpio_in"; - bias-pull-down; - }; - - pwm0_1_pin_active: pwm0_1@0 { - pins = "PD22"; - function = "pwm0_1"; - }; - - pwm0_1_pin_sleep: pwm0_1@1 { - pins = "PD22"; - function = "gpio_in"; - bias-pull-down; - }; - - pwm0_2_pin_active: pwm0_2@0 { - pins = "PB11"; - function = "pwm0_2"; - }; - - pwm0_2_pin_sleep: pwm0_2@1 { - pins = "PB11"; - function = "gpio_in"; - bias-pull-down; - }; - - pwm0_3_pin_active: pwm0_3@0 { - pins = "PB12"; - function = "pwm0_3"; - }; - - pwm0_3_pin_sleep: pwm0_3@1 { - pins = "PB12"; - function = "gpio_in"; - bias-pull-down; - }; - - pwm0_4_pin_active: pwm0_4@0 { - pins = "PI3"; - function = "pwm0_4"; - }; - - pwm0_4_pin_sleep: pwm0_4@1 { - pins = "PI3"; - function = "gpio_in"; - bias-pull-down; - }; - - pwm0_5_pin_active: pwm0_5@0 { - pins = "PI4"; - function = "pwm0_5"; - }; - - pwm0_5_pin_sleep: pwm0_5@1 { - pins = "PI4"; - function = "gpio_in"; - bias-pull-down; - }; - - ledc_pins_a: ledc@0 { - pins = "PG0"; - function = "ledc"; - drive-strength = <10>; - }; - - ledc_pins_b: ledc@1 { - pins = "PG0"; - function = "gpio_in"; - }; - - irrx_pins_default: irrx@0 { - pins = "PI8"; - function = "cir"; - }; - - irrx_pins_sleep: irrx@1 { - pins = "PI8"; - function = "gpio_in"; - }; - - irtx_pins_default: irtx@0 { - pins = "PH18"; - function = "cir"; - }; - - irtx_pins_sleep: irtx@1 { - pins = "PH18"; - function = "gpio_in"; - }; - - twi0_pins_default: twi0@0 { - pins = "PD22", "PD23"; - function = "twi0"; - drive-strength = <10>; - bias-pull-up; - }; - - twi0_pins_sleep: twi0@1 { - pins = "PD22", "PD23"; - function = "gpio_in"; - }; - - twi1_pins_default: twi1@0 { - pins = "PL8", "PL9"; - function = "twi1"; - drive-strength = <10>; - bias-pull-up; - }; - - twi1_pins_sleep: twi1@1 { - pins = "PL8", "PL9"; - function = "gpio_in"; - }; - - twi2_pins_default: twi2@0 { - pins = "PE1", "PE2"; - function = "twi2"; - drive-strength = <20>; - bias-pull-up; - }; - - twi2_pins_sleep: twi2@1 { - pins = "PE1", "PE2"; - function = "gpio_in"; - }; - - twi3_pins_default: twi3@0 { - pins = "PE3", "PE4"; - function = "twi3"; - drive-strength = <20>; - bias-pull-up; - }; - - twi3_pins_sleep: twi3@1 { - pins = "PE3", "PE4"; - function = "gpio_in"; - }; - - twi4_pins_default: twi4@0 { - pins = "PE13", "PE14"; - function = "twi4"; - drive-strength = <10>; - bias-pull-up; - }; - - twi4_pins_sleep: twi4@1 { - pins = "PE13", "PE14"; - function = "gpio_in"; - }; - - twi5_pins_default: twi5@0 { - pins = "PI8", "PI9"; - function = "twi5"; - drive-strength = <10>; - bias-pull-up; - }; - - twi5_pins_sleep: twi5@1 { - pins = "PI8", "PI9"; - function = "gpio_in"; - }; - - owa_pins_a: owa@0 { - pins = "PI10"; - function = "owa"; - drive-strength = <20>; - bias-disable; - }; - - owa_pins_b: owa@1 { - pins = "PI10"; - function = "io_disabled"; - drive-strength = <20>; - bias-disable; - }; - - i2s0_pins_a: i2s0@0 { - pins = "PB4", "PB5", "PB6"; - function = "i2s0"; - drive-strength = <20>; - bias-disable; - }; - - i2s0_pins_b: i2s0@1 { - pins = "PB4", "PB5", "PB6", "PB7", "PB8"; - function = "io_disabled"; - drive-strength = <20>; - bias-disable; - }; - - i2s0_pins_c: i2s0@2 { - pins = "PB7"; - function = "i2s0_dout"; - drive-strength = <20>; - bias-disable; - }; - - i2s0_pins_d: i2s0@3 { - pins = "PB8"; - function = "i2s0_din"; - drive-strength = <20>; - bias-disable; - }; - - i2s1_pins_a: i2s1@0 { - pins = "PG10", "PG11", "PG12"; - function = "i2s1"; - drive-strength = <20>; - bias-disable; - }; - - i2s1_pins_b: i2s1@1 { - pins = "PG10", "PG11", "PG12", "PG13", "PG14"; - function = "io_disabled"; - drive-strength = <20>; - bias-disable; - }; - - i2s1_pins_c: i2s1@2 { - pins = "PG13"; - function = "i2s1_dout"; - drive-strength = <20>; - bias-disable; - }; - - i2s1_pins_d: i2s1@3 { - pins = "PG14"; - function = "i2s1_din"; - drive-strength = <20>; - bias-disable; - }; - - i2s2_pins_a: i2s2@0 { - pins = "PH9", "PH10"; - function = "i2s2"; - drive-strength = <20>; - bias-disable; - }; - - i2s2_pins_b: i2s2@1 { - pins = "PH2", "PH3", "PH8", "PH9", "PH10", "PH11", "PH12"; - function = "io_disabled"; - drive-strength = <20>; - bias-disable; - }; - - i2s2_pins_c: i2s2@2 { - pins = "PH2", "PH3", "PH12"; - function = "i2s2_din"; - drive-strength = <20>; - bias-disable; - }; - - i2s2_pins_d: i2s2@3 { - pins = "PH11"; - function = "i2s2_dout"; - drive-strength = <20>; - bias-disable; - }; - - i2s2_pins_e: i2s2@4 { - pins = "PH8"; - function = "i2s2_mclk"; - drive-strength = <20>; - bias-disable; - }; - - i2s3_pins_a: i2s3@0 { - pins = "PF3", "PF5", "PF6"; - function = "i2s3"; - drive-strength = <20>; - bias-disable; - }; - - i2s3_pins_b: i2s3@1 { - pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6"; - function = "io_disabled"; - drive-strength = <20>; - bias-disable; - }; - - i2s3_pins_c: i2s3@2 { - pins = "PF0", "PF2", "PF4"; - function = "i2s3_din"; - drive-strength = <20>; - bias-disable; - }; - - i2s3_pins_d: i2s3@3 { - pins = "PF1"; - function = "i2s3_dout"; - drive-strength = <20>; - bias-disable; - }; - - rgb24_pins_a: rgb24@0 { - pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", \ - "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", \ - "PD20", "PD21", "PD22","PD23","PD24","PD25","PD26","PD27"; - function = "dpss"; - drive-strength = <30>; - }; - - rgb24_pins_b: rgb24@1 { - pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", \ - "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", \ - "PD20", "PD21", "PD22", "PD23","PD24","PD25","PD26","PD27"; - function = "gpio_in"; - }; - - lvds0_pins_a: lvds0@0 { - pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9"; - function = "lvds0"; - drive-strength = <30>; - }; - - lvds0_pins_b: lvds0@1 { - pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9"; - function = "gpio_in"; - }; - - gmac0_pins_default: gmac0@0 { - pins = "PH0", "PH1", "PH2", "PH3", - "PH4", "PH5", "PH6", "PH7", - "PH9", "PH10","PH13","PH14", - "PH15","PH16","PH17","PH18"; - drive-strength = <40>; - function = "gmac0"; - bias-pull-up; - }; - - gmac0_pins_sleep: gmac0@1 { - pins = "PH0", "PH1", "PH2", "PH3", - "PH4", "PH5", "PH6", "PH7", - "PH9", "PH10","PH13","PH14", - "PH15","PH16","PH17","PH18"; - function = "gpio_in"; - }; - - gmac1_pins_default: gmac1@0 { - pins = "PJ0", "PJ1", "PJ2", "PJ3", - "PJ4", "PJ5", "PJ6", "PJ7", - "PJ8", "PJ9", "PJ10", "PJ11", - "PJ12","PJ13", "PJ14", "PJ15"; - drive-strength = <40>; - function = "gmac1"; - bias-pull-up; - }; - - gmac1_pins_sleep: gmac1@1 { - pins = "PJ0", "PJ1", "PJ2", "PJ3", - "PJ4", "PJ5", "PJ6", "PJ7", - "PJ8", "PJ9", "PJ10", "PJ11", - "PJ12","PJ13", "PJ14", "PJ15"; - function = "gpio_in"; - }; -}; - -&soc { - auto_print@54321 { - reg = <0x0 0x54321 0x0 0x0>; - device_type = "auto_print"; - status = "okay"; - }; - - car_reverse: car-reverse { - compatible = "allwinner,sunxi-car-reverse"; - - /* video source setting*/ - video_channel = <0>; - video_source = <0>; - format_type = <0>; - video_source_width = <1920>; - video_source_height = <1080>; - src_size_adaptive = <1>; - /* display setting */ - overview_type = <1>; - screen_width = <1280>; - screen_height = <800>; - screen_size_adaptive = <1>; - discard_frame = <0>; - di_used = <0>; - g2d_used = <1>; - rotation = <0>; - /* auxiliary line setting */ - auxiliary_line_type = <1>; - aux_angle = <0>; - aux_lr = <0>; - reverse_int_pin = <&pio PI 15 GPIO_ACTIVE_HIGH>; - status = "disabled"; - }; - - gpio_leds { - compatible = "allwinner,sunxi-gpio-leds"; - supply-num = <1>; - gpio1-supply = <®_bldo1>; - gpio-pins = <&pio PG 10 GPIO_ACTIVE_LOW>, <&pio PC 7 GPIO_ACTIVE_LOW>; - pin-names = "normal_led", "standby_led"; - init-status = , ; - status = "disabled"; - }; - - dsp0_rproc: dsp0_rproc@0 { - mboxes = <&msgbox 4>; - mbox-names = "arm-kick"; - memory-region = <&dsp0ddr_reserved>, <&dsp_vdev0buffer>, <&dsp_vdev0vring0>, <&dsp_vdev0vring1>, - <&mcu0iram_reserved>, <&mcu0dram0_reserved>, <&mcu0dram1_reserved>; - memory-mappings = - /* < DA len PA > */ - /* local SRAM via external bus */ - < 0x20000 0x20000 0x20000 >, - /* local SRAM via internal bus */ - < 0x400000 0x10000 0x20000 >, - < 0x420000 0x8000 0x30000 >, - < 0x440000 0x8000 0x38000 >, - /* DDR front 256MB */ - < 0x10000000 0x10000000 0x40000000 >, - /* local SRAM via internal bus */ - < 0x20020000 0x10000 0x400000 >, - < 0x20030000 0x8000 0x420000 >, - < 0x20038000 0x8000 0x440000 >, - - /* DDR front 256MB */ - < 0x30000000 0x10000000 0x40000000 >, - /* DDR front 1GB */ - < 0x40000000 0x40000000 0x40000000 >, - /* DDR front 1GB */ - < 0x80000000 0x40000000 0x40000000 >, - /* DDR front 1GB */ - < 0xC0000000 0x40000000 0x40000000 >; - status = "okay"; - }; - - e906_rproc: e906_rproc@7130000 { - mboxes = <&msgbox 8>; - mbox-names = "arm-kick"; - memory-region = <&riscvsram0_reserved>, <&riscvsram1_reserved>, <&rv_vdev0buffer>, <&rv_vdev0vring0>, <&rv_vdev0vring1>; - memory-mappings = - /* < DA len PA > */ - /* DSP RAM */ - < 0x20000 0x20000 0x20000 >, - /* SRAM A2 */ - < 0x40000 0x24000 0x40000 >, - /* DDR */ - < 0x8000000 0x37f00000 0x8000000 >, - /* SRAM SPACE 0 */ - < 0x3ffc0000 0x40000 0x07280000 >, - /* SRAM SPACE 1 */ - < 0x40000000 0x40000 0x072c0000 >, - /* DRAM SPACE */ - < 0x40040000 0x3ffc0000 0x40040000>; - status = "okay"; - }; - -}; - -&uart0 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart0_pins_a>; - pinctrl-1 = <&uart0_pins_b>; - uart-supply = <®_cldo3>; - status = "okay"; -}; - -&uart1 { - status = "okay"; -}; - -&uart2 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart2_pins_a>; - pinctrl-1 = <&uart2_pins_b>; - status = "disabled"; -}; - -&uart3 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart3_pins_a>; - pinctrl-1 = <&uart3_pins_b>; - status = "disabled"; -}; - -&uart4 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart4_pins_a>; - pinctrl-1 = <&uart4_pins_b>; - status = "disabled"; -}; - -&uart5 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart5_pins_a>; - pinctrl-1 = <&uart5_pins_b>; - status = "disabled"; -}; - -&uart6 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart6_pins_a>; - pinctrl-1 = <&uart6_pins_b>; - status = "okay"; -}; - -&uart7 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart7_pins_a>; - pinctrl-1 = <&uart7_pins_b>; - status = "disabled"; -}; - -&uart8 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart8_pins_a>; - pinctrl-1 = <&uart8_pins_b>; - status = "disabled"; -}; - -&uart9 { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&uart9_pins_a>; - pinctrl-1 = <&uart9_pins_b>; - status = "disabled"; -}; - -&lradc { - key_cnt = <5>; - key0 = <210 0x73>; - key1 = <410 0x72>; - key2 = <590 0x8B>; - key3 = <750 0x1c>; - key4 = <880 0x66>; - key_debounce; - debounce_value = <50>; - status = "okay"; -}; - -&irrx { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&irrx_pins_default>; - pinctrl-1 = <&irrx_pins_sleep>; - status = "disabled"; -}; - -&s_irrx { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&s_irrx_pins_default>; - pinctrl-1 = <&s_irrx_pins_sleep>; - status = "okay"; }; -&irtx { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&irtx_pins_default>; - pinctrl-1 = <&irtx_pins_sleep>; - status = "disabled"; -}; - -&gpadc0 { - channel_num = <2>; - channel_select = <3>; - channel_data_select = <3>; - channel_compare_select = <3>; - channel_cld_select = <3>; - channel_chd_select = <3>; - channel0_compare_lowdata = <1700000>; - channel0_compare_higdata = <1200000>; - channel1_compare_lowdata = <460000>; - channel1_compare_higdata = <1200000>; - status = "disabled"; -}; - -&gpadc1 { - channel_num = <2>; - channel_select = <3>; - channel_data_select = <3>; - channel_compare_select = <3>; - channel_cld_select = <3>; - channel_chd_select = <3>; - channel0_compare_lowdata = <1700000>; - channel0_compare_higdata = <1200000>; - channel1_compare_lowdata = <460000>; - channel1_compare_higdata = <1200000>; - status = "disabled"; -}; - -&pwm0_0 { - pinctrl-names = "active", "sleep"; - pinctrl-0 = <&pwm0_0_pin_active>; - pinctrl-1 = <&pwm0_0_pin_sleep>; - status = "okay"; -}; - -&pwm0_1 { - pinctrl-names = "active", "sleep"; - pinctrl-0 = <&pwm0_1_pin_active>; - pinctrl-1 = <&pwm0_1_pin_sleep>; - status = "disabled"; -}; - -&pwm0_2 { - pinctrl-names = "active", "sleep"; - pinctrl-0 = <&pwm0_2_pin_active>; - pinctrl-1 = <&pwm0_2_pin_sleep>; - status = "disabled"; -}; - -&pwm0_3 { - pinctrl-names = "active", "sleep"; - pinctrl-0 = <&pwm0_3_pin_active>; - pinctrl-1 = <&pwm0_3_pin_sleep>; - status = "disabled"; -}; - -&pwm0_4 { - pinctrl-names = "active", "sleep"; - pinctrl-0 = <&pwm0_4_pin_active>; - pinctrl-1 = <&pwm0_4_pin_sleep>; - status = "okay"; -}; - -&pwm0_5 { - pinctrl-names = "active", "sleep"; - pinctrl-0 = <&pwm0_5_pin_active>; - pinctrl-1 = <&pwm0_5_pin_sleep>; - status = "okay"; -}; - -&ledc { - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&ledc_pins_a>; - pinctrl-1 = <&ledc_pins_b>; - led_count = <34>; - output_mode = "GRB"; - reset_ns = <84>; - t1h_ns = <800>; - t1l_ns = <320>; - t0h_ns = <300>; - t0l_ns = <800>; - wait_time0_ns = <84>; - wait_time1_ns = <84>; - wait_data_time_ns = <600000>; - status = "disabled"; -}; - -&twi0 { - clock-frequency = <400000>; - pinctrl-0 = <&twi0_pins_default>; - pinctrl-1 = <&twi0_pins_sleep>; - pinctrl-names = "default", "sleep"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - twi-supply = <®_dcdc4>; - status = "okay"; -}; - -&twi1 { - clock-frequency = <400000>; - pinctrl-0 = <&twi1_pins_default>; - pinctrl-1 = <&twi1_pins_sleep>; - pinctrl-names = "default", "sleep"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - status = "okay"; -}; - -&twi2 { - clock-frequency = <400000>; - pinctrl-0 = <&twi2_pins_default>; - pinctrl-1 = <&twi2_pins_sleep>; - pinctrl-names = "default", "sleep"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - twi-supply = <®_dcdc4>; - status = "okay"; -}; - -&twi3 { - clock-frequency = <400000>; - pinctrl-0 = <&twi3_pins_default>; - pinctrl-1 = <&twi3_pins_sleep>; - pinctrl-names = "default", "sleep"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - twi-supply = <®_dcdc4>; - status = "okay"; -}; - -&twi4 { - clock-frequency = <400000>; - pinctrl-0 = <&twi4_pins_default>; - pinctrl-1 = <&twi4_pins_sleep>; - pinctrl-names = "default", "sleep"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - twi-supply = <®_dcdc4>; - status = "okay"; -}; - -&twi5 { - clock-frequency = <400000>; - pinctrl-0 = <&twi5_pins_default>; - pinctrl-1 = <&twi5_pins_sleep>; - pinctrl-names = "default", "sleep"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - twi-supply = <®_dcdc4>; - status = "okay"; -}; - -&csi_mclk3_pins_a { - pins = "PK13"; - function = "ncsi"; -}; - -&csi_mclk3_pins_b { - pins = "PK13"; -}; - -&mipib_4lane_pins_a { - pins = "PK6", "PK7", "PK8", "PK9"; -}; - -&mipib_4lane_pins_b { - pins = "PK6", "PK7", "PK8", "PK9"; -}; - -&vind0 { - csi_top = <360000000>; - csi_isp = <300000000>; - vind_mclkpin-supply = <®_bldo3>; /* vcc-pe */ - vind_mclkpin_vol = <1800000>; - vind_mcsipin-supply = <®_bldo3>; /* vcc-pk */ - vind_mcsipin_vol = <1800000>; - vind_mipipin-supply = <®_bldo3>; /* vcc-mcsi */ - vind_mipipin_vol = <1800000>; - status = "okay"; - - csi3:csi@5823000 { - pinctrl-names = "default","sleep"; - pinctrl-0 = <&ncsi_bt1120_pins_a>; - pinctrl-1 = <&ncsi_bt1120_pins_b>; - status = "okay"; - }; - - tdm0:tdm@5908000 { - work_mode = <0>; - }; - - isp00:isp@5900000 { - work_mode = <0>; - }; - - isp01:isp@58ffffc { - status = "disabled"; - }; - - isp02:isp@58ffff8 { - status = "disabled"; - }; - - isp03:isp@58ffff4 { - status = "disabled"; - }; - - isp10:isp@4 { - status = "okay"; - }; - - isp20:isp@5 { - status = "okay"; - }; - - scaler00:scaler@5910000 { - work_mode = <0>; - }; - - scaler01:scaler@590fffc { - status = "disabled"; - }; - - scaler02:scaler@590fff8 { - status = "disabled"; - }; - - scaler03:scaler@590fff4 { - status = "disabled"; - }; - - scaler10:scaler@5910400 { - work_mode = <0>; - }; - - scaler11:scaler@59103fc { - status = "disabled"; - }; - - scaler12:scaler@59103f8 { - status = "disabled"; - }; - - scaler13:scaler@59103f4 { - status = "disabled"; - }; - - scaler20:scaler@5910800 { - work_mode = <0>; - }; - - scaler21:scaler@59107fc { - status = "disabled"; - }; - - scaler22:scaler@59107f8 { - status = "disabled"; - }; - - scaler23:scaler@59107f4 { - status = "disabled"; - }; - - scaler30:scaler@5910c00 { - work_mode = <0>; - }; - - scaler31:scaler@5910bfc { - status = "disabled"; - }; - - scaler32:scaler@5910bf8 { - status = "disabled"; - }; - - scaler33:scaler@5910bf4 { - status = "disabled"; - }; - scaler40:scaler@16 { - status = "okay"; - }; - scaler50:scaler@17 { - status = "okay"; - }; - - actuator0: actuator@2108180 { - device_type = "actuator0"; - actuator0_name = "dw9714_act"; - actuator0_slave = <0x18>; - actuator0_af_pwdn = <>; - actuator0_afvdd = "afvcc-csi"; - actuator0_afvdd_vol = <2800000>; - status = "disabled"; - }; - - flash0: flash@2108190 { - device_type = "flash0"; - flash0_type = <2>; - flash0_en = <&r_pio PL 11 GPIO_ACTIVE_LOW>; - flash0_mode = <>; - flash0_flvdd = ""; - flash0_flvdd_vol = <>; - device_id = <0>; - status = "disabled"; - }; - - sensor0:sensor@5812000 { - device_type = "sensor0"; - sensor0_mname = "tp2815_mipi"; - sensor0_twi_cci_id = <2>; - sensor0_twi_addr = <0x88>; - sensor0_mclk_id = <0>; - sensor0_pos = "rear"; - sensor0_isp_used = <0>; - sensor0_fmt = <0>; - sensor0_stby_mode = <0>; - sensor0_vflip = <0>; - sensor0_hflip = <0>; - sensor0_cameravdd-supply = <>; - sensor0_cameravdd_vol = <>; - sensor0_iovdd-supply = <>; - sensor0_iovdd_vol = <>; - sensor0_avdd-supply = <>; - sensor0_avdd_vol = <>; - sensor0_dvdd-supply = <>; - sensor0_dvdd_vol = <>; - sensor0_power_en = <>; - sensor0_reset = <&pio PK 11 GPIO_ACTIVE_LOW>; - sensor0_pwdn = <>; - status = "okay"; - }; - - sensor1:sensor@5812010 { - device_type = "sensor1"; - sensor1_mname = "nvp6158"; - sensor1_twi_cci_id = <3>; - sensor1_twi_addr = <0x64>; - sensor1_mclk_id = <3>; - sensor1_pos = "front"; - sensor1_isp_used = <0>; - sensor1_fmt = <0>; - sensor1_stby_mode = <0>; - sensor1_vflip = <0>; - sensor1_hflip = <0>; - sensor1_iovdd-supply = <>; - sensor1_iovdd_vol = <>; - sensor1_avdd-supply = <>; - sensor1_avdd_vol = <>; - sensor1_dvdd-supply = <>; - sensor1_dvdd_vol = <>; - sensor1_power_en = <>; - sensor1_reset = <&pio PK 10 GPIO_ACTIVE_LOW>; - sensor1_pwdn = <>; - status = "okay"; - }; - - vinc00:vinc@5830000 { - vinc0_csi_sel = <0>; - vinc0_mipi_sel = <0>; - vinc0_isp_sel = <4>; - vinc0_isp_tx_ch = <0>; - vinc0_tdm_rx_sel = <0>; - vinc0_rear_sensor_sel = <0>; - vinc0_front_sensor_sel = <0>; - vinc0_sensor_list = <0>; - device_id = <0>; - work_mode = <0x0>; - status = "okay"; - }; - - vinc01:vinc@582fffc { - vinc1_csi_sel = <1>; - vinc1_mipi_sel = <2>; - vinc1_isp_sel = <1>; - vinc1_isp_tx_ch = <0>; - vinc1_tdm_rx_sel = <1>; - vinc1_rear_sensor_sel = <1>; - vinc1_front_sensor_sel = <1>; - vinc1_sensor_list = <0>; - device_id = <1>; - status = "disabled"; - }; - - vinc02:vinc@582fff8 { - vinc2_csi_sel = <2>; - vinc2_mipi_sel = <0xff>; - vinc2_isp_sel = <2>; - vinc2_isp_tx_ch = <2>; - vinc2_tdm_rx_sel = <2>; - vinc2_rear_sensor_sel = <0>; - vinc2_front_sensor_sel = <0>; - vinc2_sensor_list = <0>; - device_id = <2>; - status = "disabled"; - }; - - vinc03:vinc@582fff4 { - vinc3_csi_sel = <0>; - vinc3_mipi_sel = <0xff>; - vinc3_isp_sel = <0>; - vinc3_isp_tx_ch = <0>; - vinc3_tdm_rx_sel = <0>; - vinc3_rear_sensor_sel = <1>; - vinc3_front_sensor_sel = <1>; - vinc3_sensor_list = <0>; - device_id = <3>; - status = "disabled"; - }; - - vinc10:vinc@5831000 { - vinc4_csi_sel = <0>; - vinc4_mipi_sel = <0>; - vinc4_isp_sel = <4>; - vinc4_isp_tx_ch = <1>; - vinc4_tdm_rx_sel = <0>; - vinc4_rear_sensor_sel = <0>; - vinc4_front_sensor_sel = <0>; - vinc4_sensor_list = <0>; - device_id = <4>; - work_mode = <0x0>; - status = "okay"; - }; - - vinc11:vinc@5830ffc { - vinc5_csi_sel = <2>; - vinc5_mipi_sel = <0xff>; - vinc5_isp_sel = <1>; - vinc5_isp_tx_ch = <1>; - vinc5_tdm_rx_sel = <1>; - vinc5_rear_sensor_sel = <0>; - vinc5_front_sensor_sel = <0>; - vinc5_sensor_list = <0>; - device_id = <5>; - status = "disabled"; - }; - - vinc12:vinc@5830ff8 { - vinc6_csi_sel = <2>; - vinc6_mipi_sel = <0xff>; - vinc6_isp_sel = <0>; - vinc6_isp_tx_ch = <0>; - vinc6_tdm_rx_sel = <0>; - vinc6_rear_sensor_sel = <0>; - vinc6_front_sensor_sel = <0>; - vinc6_sensor_list = <0>; - device_id = <6>; - status = "disabled"; - }; - - vinc13:vinc@5830ff4 { - vinc7_csi_sel = <2>; - vinc7_mipi_sel = <0xff>; - vinc7_isp_sel = <0>; - vinc7_isp_tx_ch = <0>; - vinc7_tdm_rx_sel = <0>; - vinc7_rear_sensor_sel = <0>; - vinc7_front_sensor_sel = <0>; - vinc7_sensor_list = <0>; - device_id = <7>; - status = "disabled"; - }; - - vinc20:vinc@5832000 { - vinc8_csi_sel = <0>; - vinc8_mipi_sel = <0>; - vinc8_isp_sel = <4>; - vinc8_isp_tx_ch = <2>; - vinc8_tdm_rx_sel = <0>; - vinc8_rear_sensor_sel = <0>; - vinc8_front_sensor_sel = <0>; - vinc8_sensor_list = <0>; - device_id = <8>; - work_mode = <0x0>; - status = "okay"; - }; - - vinc21:vinc@5831ffc { - vinc9_csi_sel = <2>; - vinc9_mipi_sel = <0xff>; - vinc9_isp_sel = <0>; - vinc9_isp_tx_ch = <0>; - vinc9_tdm_rx_sel = <0>; - vinc9_rear_sensor_sel = <0>; - vinc9_front_sensor_sel = <0>; - vinc9_sensor_list = <0>; - device_id = <9>; - status = "disabled"; - }; - - vinc22:vinc@5831ff8 { - vinc10_csi_sel = <2>; - vinc10_mipi_sel = <0xff>; - vinc10_isp_sel = <0>; - vinc10_isp_tx_ch = <0>; - vinc10_tdm_rx_sel = <0>; - vinc10_rear_sensor_sel = <0>; - vinc10_front_sensor_sel = <0>; - vinc10_sensor_list = <0>; - device_id = <10>; - status = "disabled"; - }; - - vinc23:vinc@5831ff4 { - vinc11_csi_sel = <2>; - vinc11_mipi_sel = <0xff>; - vinc11_isp_sel = <0>; - vinc11_isp_tx_ch = <0>; - vinc11_tdm_rx_sel = <0>; - vinc11_rear_sensor_sel = <0>; - vinc11_front_sensor_sel = <0>; - vinc11_sensor_list = <0>; - device_id = <11>; - status = "disabled"; - }; - - vinc30:vinc@5833000 { - vinc12_csi_sel = <0>; - vinc12_mipi_sel = <0>; - vinc12_isp_sel = <4>; - vinc12_isp_tx_ch = <3>; - vinc12_tdm_rx_sel = <0>; - vinc12_rear_sensor_sel = <0>; - vinc12_front_sensor_sel = <0>; - vinc12_sensor_list = <0>; - device_id = <12>; - work_mode = <0x0>; - status = "okay"; - }; - - vinc31:vinc@5832ffc { - vinc13_csi_sel = <2>; - vinc13_mipi_sel = <0xff>; - vinc13_isp_sel = <0>; - vinc13_isp_tx_ch = <0>; - vinc13_tdm_rx_sel = <0>; - vinc13_rear_sensor_sel = <0>; - vinc13_front_sensor_sel = <0>; - vinc13_sensor_list = <0>; - device_id = <13>; - status = "disabled"; - }; - - vinc32:vinc@5832ff8 { - vinc14_csi_sel = <2>; - vinc14_mipi_sel = <0xff>; - vinc14_isp_sel = <0>; - vinc14_isp_tx_ch = <0>; - vinc14_tdm_rx_sel = <0>; - vinc14_rear_sensor_sel = <0>; - vinc14_front_sensor_sel = <0>; - vinc14_sensor_list = <0>; - device_id = <14>; - status = "disabled"; - }; - - vinc33:vinc@5832ff4 { - vinc15_csi_sel = <2>; - vinc15_mipi_sel = <0xff>; - vinc15_isp_sel = <0>; - vinc15_isp_tx_ch = <0>; - vinc15_tdm_rx_sel = <0>; - vinc15_rear_sensor_sel = <0>; - vinc15_front_sensor_sel = <0>; - vinc15_sensor_list = <0>; - device_id = <15>; - status = "disabled"; - }; - - vinc40:vinc@5834000 { - vinc16_csi_sel = <3>; - vinc16_mipi_sel = <0xff>; - vinc16_isp_sel = <5>; - vinc16_isp_tx_ch = <0>; - vinc16_tdm_rx_sel = <0>; - vinc16_rear_sensor_sel = <1>; - vinc16_front_sensor_sel = <1>; - vinc16_sensor_list = <0>; - device_id = <16>; - status = "okay"; - }; - - vinc50:vinc@5835000 { - vinc17_csi_sel = <3>; - vinc17_mipi_sel = <0xff>; - vinc17_isp_sel = <5>; - vinc17_isp_tx_ch = <1>; - vinc17_tdm_rx_sel = <0>; - vinc17_rear_sensor_sel = <1>; - vinc17_front_sensor_sel = <1>; - vinc17_sensor_list = <0>; - device_id = <17>; - status = "okay"; - }; -}; - -&twi6 { - clock-frequency = <400000>; - pinctrl-0 = <&s_twi0_pins_default>; - pinctrl-1 = <&s_twi0_pins_sleep>; - pinctrl-names = "default", "sleep"; - device_type = "twi6"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - no_suspend = <1>; - status = "okay"; - - axp1530: axp1530@36{ - compatible = "ext,axp1530"; - status = "okay"; - reg = <0x36>; - - wakeup-source; - - regulators{ - reg_ext_axp1530_dcdc1: dcdc1 { - regulator-name = "axp1530-dcdc1"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3400000>; - regulator-step-delay-us = <25>; - regulator-final-delay-us = <50>; - regulator-always-on; - }; - - reg_ext_axp1530_dcdc2: dcdc2 { - regulator-name = "axp1530-dcdc2"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1540000>; - regulator-step-delay-us = <25>; - regulator-final-delay-us = <50>; - regulator-ramp-delay = <200>; /* FIXME */ - regulator-always-on; - }; - - reg_ext_axp1530_dcdc3: dcdc3 { - regulator-name = "axp1530-dcdc3"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1840000>; - regulator-step-delay-us = <25>; - regulator-final-delay-us = <50>; - regulator-always-on; - }; - - reg_ext_axp1530_aldo1: ldo1 { - regulator-name = "axp1530-aldo1"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-step-delay-us = <25>; - regulator-final-delay-us = <50>; - }; - - reg_ext_axp1530_dldo1: ldo2 { - regulator-name = "axp1530-dldo1"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-step-delay-us = <25>; - regulator-final-delay-us = <50>; - }; - }; - virtual-ext-dcdc1 { - compatible = "xpower-vregulator,ext-dcdc1"; - dcdc1-supply = <®_ext_axp1530_dcdc1>; - }; - virtual-ext-dcdc2 { - compatible = "xpower-vregulator,ext-dcdc2"; - dcdc2-supply = <®_ext_axp1530_dcdc2>; - }; - virtual-ext-dcdc3 { - compatible = "xpower-vregulator,ext-dcdc3"; - dcdc3-supply = <®_ext_axp1530_dcdc3>; - }; - virtual-ext-aldo1 { - compatible = "xpower-vregulator,ext-aldo1"; - aldo1-supply = <®_ext_axp1530_aldo1>; - }; - virtual-ext-dldo1 { - compatible = "xpower-vregulator,ext-dldo1"; - dldo1-supply = <®_ext_axp1530_dldo1>; - }; - - }; - - pmu0: pmu@34 { - compatible = "x-powers,axp2202"; - reg = <0x34>; - status = "okay"; - interrupts = <0 IRQ_TYPE_LEVEL_LOW>; - interrupt-parent = <&nmi_intc>; - x-powers,drive-vbus-en; - pmu_reset = <0>; - pmu_irq_wakeup = <1>; - pmu_hot_shutdown = <1>; - pmu_over_current = <1>; - pmu_hot_shutdown_value = <125>; - wakeup-source; - - usb_power_supply: usb_power_supply { - compatible = "x-powers,axp2202-usb-power-supply"; - status = "okay"; - - pmu_usbpc_vol = <4600>; - pmu_usbpc_cur = <500>; - pmu_usbad_vol = <4000>; - pmu_usbad_cur = <2500>; - pmu_usb_typec_used = <1>; - wakeup_usb_in; - wakeup_usb_out; - wakeup_typec_in; - wakeup_typec_out; - - det_acin_supply = <&gpio_power_supply>; - pmu_acin_usbid_drv = <&pio PH 12 GPIO_ACTIVE_LOW>; - pmu_vbus_det_gpio = <&pio PH 13 GPIO_ACTIVE_LOW>; - }; - - gpio_power_supply: gpio_power_supply { - compatible = "x-powers,gpio-supply"; - status = "disabled"; - pmu_acin_det_gpio = <&pio PH 14 GPIO_ACTIVE_LOW>; - det_usb_supply = <&usb_power_supply>; - }; - - bat_power_supply: bat-power-supply { - compatible = "x-powers,axp2202-bat-power-supply"; - param = <&axp2202_parameter>; - status = "disabled"; - - pmu_chg_ic_temp = <0>; - - pmu_battery_rdc= <147>; - pmu_battery_cap = <1771>; - pmu_runtime_chgcur = <1000>; - pmu_suspend_chgcur = <1500>; - pmu_shutdown_chgcur = <1500>; - pmu_init_chgvol = <4200>; - pmu_battery_warning_level1 = <15>; - pmu_battery_warning_level2 = <0>; - pmu_chgled_func = <0>; - pmu_chgled_type = <0>; - pmu_bat_para1 = <0>; - pmu_bat_para2 = <0>; - pmu_bat_para3 = <0>; - pmu_bat_para4 = <0>; - pmu_bat_para5 = <0>; - pmu_bat_para6 = <0>; - pmu_bat_para7 = <2>; - pmu_bat_para8 = <3>; - pmu_bat_para9 = <4>; - pmu_bat_para10 = <6>; - pmu_bat_para11 = <9>; - pmu_bat_para12 = <14>; - pmu_bat_para13 = <26>; - pmu_bat_para14 = <38>; - pmu_bat_para15 = <49>; - pmu_bat_para16 = <52>; - pmu_bat_para17 = <56>; - pmu_bat_para18 = <60>; - pmu_bat_para19 = <64>; - pmu_bat_para20 = <70>; - pmu_bat_para21 = <77>; - pmu_bat_para22 = <83>; - pmu_bat_para23 = <87>; - pmu_bat_para24 = <90>; - pmu_bat_para25 = <95>; - pmu_bat_para26 = <99>; - pmu_bat_para27 = <99>; - pmu_bat_para28 = <100>; - pmu_bat_para29 = <100>; - pmu_bat_para30 = <100>; - pmu_bat_para31 = <100>; - pmu_bat_para32 = <100>; - - pmu_bat_temp_enable = <1>; - pmu_jetia_en = <1>; - pmu_bat_charge_ltf = <1738>; //-5 - pmu_bat_charge_htf = <150>; //60 - pmu_bat_shutdown_ltf = <2125>; //-10 - pmu_bat_shutdown_htf = <130>; //65 - pmu_jetia_cool = <1390>; //0 - pmu_jetia_warm = <206>; //50 - pmu_jcool_ifall = <2>;//75% - pmu_jwarm_ifall = <2>;//75% - pmu_bat_temp_para1 = <4592>; //SDNT-25 - pmu_bat_temp_para2 = <2781>; //-15 - pmu_bat_temp_para3 = <2125>; //-10 - pmu_bat_temp_para4 = <1738>; //-5 - pmu_bat_temp_para5 = <1390>;//0 - pmu_bat_temp_para6 = <1118>; //5 - pmu_bat_temp_para7 = <906>; //10 - pmu_bat_temp_para8 = <606>; //20 - pmu_bat_temp_para9 = <415>; //30 - pmu_bat_temp_para10 = <290>; //40 - pmu_bat_temp_para11 = <244>; //45 - pmu_bat_temp_para12 = <206>; //50 - pmu_bat_temp_para13 = <175>; //55 - pmu_bat_temp_para14 = <150>; //60 - pmu_bat_temp_para15 = <110>; //70 - pmu_bat_temp_para16 = <83>; //80 - - wakeup_bat_out; - /* wakeup_bat_in; */ - /* wakeup_bat_charging; */ - /* wakeup_bat_charge_over; */ - /* wakeup_low_warning1; */ - /* wakeup_low_warning2; */ - /* wakeup_bat_untemp_work; */ - /* wakeup_bat_ovtemp_work; */ - /* wakeup_bat_untemp_chg; */ - /* wakeup_bat_ovtemp_chg; */ - }; - - powerkey0: powerkey@0 { - status = "okay"; - compatible = "x-powers,axp2101-pek"; - pmu_powkey_off_time = <6000>; - pmu_powkey_off_func = <0>; - pmu_powkey_off_en = <1>; - pmu_powkey_long_time = <1500>; - pmu_powkey_on_time = <512>; - wakeup_rising; - wakeup_falling; - }; - - regulator0: regulators@0 { - reg_dcdc1: dcdc1 { - regulator-name = "axp2202-dcdc1"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1540000>; - regulator-ramp-delay = <250>; - regulator-enable-ramp-delay = <1000>; - regulator-boot-on; - regulator-always-on; - }; - reg_dcdc2: dcdc2 { - regulator-name = "axp2202-dcdc2"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3400000>; - regulator-ramp-delay = <250>; - regulator-enable-ramp-delay = <1000>; - regulator-boot-on; - regulator-always-on; - }; - reg_dcdc3: dcdc3 { - regulator-name = "axp2202-dcdc3"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1840000>; - regulator-ramp-delay = <250>; - regulator-enable-ramp-delay = <1000>; - regulator-always-on; - }; - reg_dcdc4: dcdc4 { - regulator-name = "axp2202-dcdc4"; - regulator-min-microvolt = <1000000>; - regulator-max-microvolt = <3700000>; - regulator-ramp-delay = <250>; - regulator-enable-ramp-delay = <1000>; - }; - reg_rtcldo: rtcldo { - /* RTC_LDO is a fixed, always-on regulator */ - regulator-name = "axp2202-rtcldo"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-boot-on; - regulator-always-on; - }; - reg_aldo1: aldo1 { - regulator-name = "axp2202-aldo1"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - }; - reg_aldo2: aldo2 { - regulator-name = "axp2202-aldo2"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - }; - reg_aldo3: aldo3 { - regulator-name = "axp2202-aldo3"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - regulator-always-on; - regulator-boot-on; - }; - reg_aldo4: aldo4 { - regulator-name = "axp2202-aldo4"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - regulator-always-on; - regulator-boot-on; - }; - reg_bldo1: bldo1 { - regulator-name = "axp2202-bldo1"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - regulator-always-on; - regulator-boot-on; - }; - reg_bldo2: bldo2 { - regulator-name = "axp2202-bldo2"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - regulator-boot-on; - regulator-always-on; - }; - reg_bldo3: bldo3 { - regulator-name = "axp2202-bldo3"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - }; - reg_bldo4: bldo4 { - regulator-name = "axp2202-bldo4"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - }; - reg_cldo1: cldo1 { - regulator-name = "axp2202-cldo1"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - }; - reg_cldo2: cldo2 { - regulator-name = "axp2202-cldo2"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - }; - reg_cldo3: cldo3 { - regulator-name = "axp2202-cldo3"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-ramp-delay = <2500>; - regulator-enable-ramp-delay = <1000>; - regulator-boot-on; - regulator-always-on; - }; - reg_cldo4: cldo4 { - regulator-name = "axp2202-cldo4"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <3500000>; - regulator-enable-ramp-delay = <1000>; - regulator-boot-on; - regulator-always-on; - }; - reg_cpusldo: cpusldo { - /* cpus */ - regulator-name = "axp2202-cpusldo"; - regulator-min-microvolt = <500000>; - regulator-max-microvolt = <1400000>; - regulator-boot-on; - regulator-always-on; - }; - reg_vmid: vmid { - regulator-name = "axp2202-vmid"; - regulator-enable-ramp-delay = <1000>; - }; - reg_drivevbus: drivevbus { - regulator-name = "axp2202-drivevbus"; - regulator-enable-ramp-delay = <1000>; - drivevbusin-supply = <®_vmid>; - }; - }; - - virtual-dcdc1 { - compatible = "xpower-vregulator,dcdc1"; - dcdc1-supply = <®_dcdc1>; - }; - virtual-dcdc2 { - compatible = "xpower-vregulator,dcdc2"; - dcdc2-supply = <®_dcdc2>; - }; - virtual-dcdc3 { - compatible = "xpower-vregulator,dcdc3"; - dcdc3-supply = <®_dcdc3>; - }; - virtual-dcdc4 { - compatible = "xpower-vregulator,dcdc4"; - dcdc4-supply = <®_dcdc4>; - }; - virtual-rtcldo { - compatible = "xpower-vregulator,rtcldo"; - rtcldo-supply = <®_rtcldo>; - }; - virtual-aldo1 { - compatible = "xpower-vregulator,aldo1"; - aldo1-supply = <®_aldo1>; - }; - virtual-aldo2 { - compatible = "xpower-vregulator,aldo2"; - aldo2-supply = <®_aldo2>; - }; - virtual-aldo3 { - compatible = "xpower-vregulator,aldo3"; - aldo3-supply = <®_aldo3>; - }; - virtual-aldo4 { - compatible = "xpower-vregulator,aldo4"; - aldo4-supply = <®_aldo4>; - }; - virtual-bldo1 { - compatible = "xpower-vregulator,bldo1"; - bldo1-supply = <®_bldo1>; - }; - virtual-bldo2 { - compatible = "xpower-vregulator,bldo2"; - bldo2-supply = <®_bldo2>; - }; - virtual-bldo3 { - compatible = "xpower-vregulator,bldo3"; - bldo3-supply = <®_bldo3>; - }; - virtual-bldo4 { - compatible = "xpower-vregulator,bldo4"; - bldo4-supply = <®_bldo4>; - }; - virtual-cldo1 { - compatible = "xpower-vregulator,cldo1"; - cldo1-supply = <®_cldo1>; - }; - virtual-cldo2 { - compatible = "xpower-vregulator,cldo2"; - cldo2-supply = <®_cldo2>; - }; - virtual-cldo3 { - compatible = "xpower-vregulator,cldo3"; - cldo3-supply = <®_cldo3>; - }; - virtual-cldo4 { - compatible = "xpower-vregulator,cldo4"; - cldo4-supply = <®_cldo4>; - }; - virtual-cpusldo { - compatible = "xpower-vregulator,cpusldo"; - cpusldo-supply = <®_cpusldo>; - }; - virtual-drivevbus { - compatible = "xpower-vregulator,drivevbus"; - drivevbus-supply = <®_drivevbus>; - }; - axp_gpio0: axp_gpio@0 { - gpio-controller; - #size-cells = <0>; - #gpio-cells = <6>; - status = "okay"; - }; - }; -}; - -/{ - axp2202_parameter:axp2202-parameter { - select = "battery-model"; - - battery-model { - parameter = /bits/ 8 <0x01 0xf5 0x40 0x00 0x1b 0x1e 0x28 0x0f - 0x0c 0x1e 0x32 0x02 0x14 0x05 0x0a 0x04 - 0x74 0xfb 0xc8 0x0d 0x43 0x10 0x36 0xfb - 0x46 0x01 0xea 0x0d 0x2a 0x06 0x36 0x05 - 0xf4 0x0a 0xb5 0x0f 0x42 0x0e 0xe6 0x09 - 0x9a 0x0e 0x42 0x0e 0x3b 0x04 0x2d 0x04 - 0x23 0x09 0x18 0x0e 0x09 0x0e 0x04 0x08 - 0xf7 0x0d 0xda 0x0d 0xd0 0x03 0xbb 0x03 - 0x9d 0x08 0x7f 0x0d 0x6a 0x0d 0x55 0x07 - 0xc2 0x57 0x2b 0x27 0x1e 0x0d 0x14 0x08 - 0xc5 0x98 0x7e 0x66 0x4e 0x44 0x38 0x1a - 0x12 0x0a 0xf6 0x00 0x00 0xf6 0x00 0xf6 - 0x00 0xfb 0x00 0x00 0xfb 0x00 0x00 0xfb - 0x00 0x00 0xf6 0x00 0x00 0xf6 0x00 0xf6 - 0x00 0xfb 0x00 0x00 0xfb 0x00 0x00 0xfb - 0x00 0x00 0xf6 0x00 0x00 0xf6 0x00 0xf6>; - }; - }; -}; - -&twi7 { - clock-frequency = <400000>; - pinctrl-0 = <&s_twi1_pins_default>; - pinctrl-1 = <&s_twi1_pins_sleep>; - pinctrl-names = "default", "sleep"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - twi-supply = <®_aldo3>; - status = "okay"; -}; - -&twi8 { - clock-frequency = <400000>; - pinctrl-0 = <&s_twi2_pins_default>; - pinctrl-1 = <&s_twi2_pins_sleep>; - pinctrl-names = "default", "sleep"; - /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ - twi_drv_used = <1>; - twi-supply = <®_aldo3>; - status = "okay"; -}; - -&sdc2 { - non-removable; - bus-width = <8>; - mmc-ddr-1_8v; - mmc-hs200-1_8v; - mmc-hs400-1_8v; - no-sdio; - no-sd; - ctl-spec-caps = <0x308>; - cap-mmc-highspeed; - sunxi-power-save-mode; - sunxi-dis-signal-vol-sw; - mmc-bootpart-noacc; - /*cap-hsq;*/ - cqe-on; - ctl-cmdq-md = <0x2>; - max-frequency = <150000000>; - cd-gpios = <&pio PC 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; - /*broken-cd;*/ - vmmc-supply = <®_cldo3>; - /*emmc io vol 3.3v*/ - /*vqmmc-supply = <®_aldo1>;*/ - /*emmc io vol 1.8v*/ - vqmmc-supply = <®_cldo1>; - status = "okay"; -}; - -&sdc0 { - bus-width = <4>; - cd-gpios = <&pio PF 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; - non-removable; - /*broken-cd;*/ - /*cd-inverted*/ - /*data3-detect;*/ - /*card-pwr-gpios = <&pio PH 14 1 1 2 0xffffffff>;*/ - cd-used-24M; - cd-set-debounce = <0x1>; - cap-sd-highspeed; - sd-uhs-sdr50; - sd-uhs-ddr50; - sd-uhs-sdr104; - no-sdio; - no-mmc; - sunxi-power-save-mode; - /*sunxi-dis-signal-vol-sw;*/ - max-frequency = <150000000>; - ctl-spec-caps = <0x408>; - sunxi-dly-208M = <0xff 1 0xff 0xff 0xff 0xff>; - vmmc-supply = <®_cldo3>; - vqmmc33sw-supply = <®_cldo3>; - vdmmc33sw-supply = <®_cldo3>; - vqmmc18sw-supply = <®_bldo3>; - vdmmc18sw-supply = <®_bldo3>; - status = "okay"; -}; - -&sdc1 { - bus-width = <4>; - no-mmc; - no-sd; - cap-sd-highspeed; - /*sd-uhs-sdr12*/ - sd-uhs-sdr25; - sd-uhs-sdr50; - sd-uhs-ddr50; - sd-uhs-sdr104; - /*sunxi-power-save-mode;*/ - sunxi-dis-signal-vol-sw; - cap-sdio-irq; - keep-power-in-suspend; - ignore-pm-notify; - max-frequency = <150000000>; - ctl-spec-caps = <0x408>; - status = "okay"; -}; - -&rfkill { - compatible = "allwinner,sunxi-rfkill"; - chip_en; - power_en; - pinctrl-0; - pinctrl-names; - status = "okay"; - - /* wlan session */ - wlan { - compatible = "allwinner,sunxi-wlan"; - clocks; - clock-names; - wlan_power = "axp2202-aldo3", "axp2202-bldo1"; /* vcc-pl/vcc-pg/vcc-pm */ - wlan_power_vol= <3300000>, <1800000>; - wlan_busnum = <0x1>; - wlan_regon = <&r_pio PM 1 GPIO_ACTIVE_HIGH>; - wlan_hostwake = <&r_pio PM 0 GPIO_ACTIVE_HIGH>; - wakeup-source; - }; - - /* bt session */ - bt { - compatible = "allwinner,sunxi-bt"; - clocks; - clock-names; - bt_power = "axp2202-aldo3", "axp2202-bldo1"; /* vcc-pl/vcc-pg/vcc-pm */ - bt_power_vol = <3300000>, <1800000>; - bt_rst_n = <&r_pio PM 2 GPIO_ACTIVE_LOW>; - }; -}; - -&addr_mgt { - compatible = "allwinner,sunxi-addr_mgt"; - type_addr_wifi = <0x0>; - type_addr_bt = <0x0>; - type_addr_eth = <0x0>; - status = "okay"; -}; - -&btlpm { - compatible = "allwinner,sunxi-btlpm"; - uart_index = <0x1>; - bt_wake = <&r_pio PM 3 GPIO_ACTIVE_HIGH>; - bt_hostwake = <&r_pio PM 4 GPIO_ACTIVE_HIGH>; - wakeup-source; - status = "okay"; -}; - -/* - *usb_port_type: usb mode. 0-device, 1-host, 2-otg. - *usb_detect_type: usb hotplug detect mode. 0-none, 1-vbus/id detect, 2-id/dpdm detect. - *usb_detect_mode: 0-thread scan, 1-id gpio interrupt. - *usb_id_gpio: gpio for id detect. - *usb_det_vbus_gpio: gpio for id detect. gpio or "axp_ctrl"; - *usb_wakeup_suspend:0-SUPER_STANDBY, 1-USB_STANDBY. - */ -&usbc0 { - device_type = "usbc0"; - usb_port_type = <0x2>; - usb_detect_type = <0x2>; - usb_detect_mode = <0x0>; - usb_id_gpio; - usb_det_vbus_gpio = "axp_ctrl"; - det_vbus_supply = <&usb_power_supply>; - usb_regulator_io = "nocare"; - usb_wakeup_suspend = <1>; - usb_luns = <3>; - usb_serial_unique = <0>; - usb_serial_number = "20080411"; - rndis_wceis = <1>; - wakeup-source; - status = "okay"; -}; - -&udc { - det_vbus_supply = <&usb_power_supply>; - phy_range = <0x153>; - status = "okay"; -}; - -&ehci0 { - drvvbus-supply = <®_usb0_vbus>; - phy_range = <0x153>; - status = "okay"; -}; - -&ohci0 { - drvvbus-supply = <®_usb0_vbus>; - phy_range = <0x153>; - status = "okay"; -}; - -&usbc1 { - device_type = "usbc1"; - usb_regulator_io = "nocare"; - usb_wakeup_suspend = <0>; - status = "okay"; -}; - -&ehci1 { - drvvbus-supply = <®_usb1_vbus>; - phy_range = <0x153>; - status = "okay"; -}; - -&ohci1 { - drvvbus-supply = <®_usb1_vbus>; - phy_range = <0x153>; - status = "okay"; -}; - -/* - * clk-freq-24M : use Internal 24M reference clock - * clk-freq-100M: use Internal 100M reference clock - * - * Pick one of two. - */ - &combophy { - clk-freq-100M; + resets = <&ccu RST_BUS_PCIE_USB3>; phy_use_sel = <1>; /* 0:PCIE; 1:USB3 */ status = "okay"; }; -&gpu { - gpu_idle = <1>; - dvfs_status = <1>; - mali-supply = <®_dcdc2>; -}; - -/*---------------------------------------------------------------------------------- -disp init configuration - -disp_mode (0:screen0) -screenx_output_type (0:none; 1:lcd; 2:tv; 3:hdmi;5:vdpo) -screenx_output_mode (used for hdmi output, 0:480i 1:576i 2:480p 3:576p 4:720p50) - (5:720p60 6:1080i50 7:1080i60 8:1080p24 9:1080p50 10:1080p60) -screenx_output_format (for hdmi, 0:RGB 1:yuv444 2:yuv422 3:yuv420) -screenx_output_bits (for hdmi, 0:8bit 1:10bit 2:12bit 2:16bit) -screenx_output_eotf (for hdmi, 0:reserve 4:SDR 16:HDR10 18:HLG) -screenx_output_cs (for hdmi, 0:undefined 257:BT709 260:BT601 263:BT2020) -screenx_output_dvi_hdmi (for hdmi, 0:undefined 1:dvi mode 2:hdmi mode) -screen0_output_range (for hdmi, 0:default 1:full 2:limited) -screen0_output_scan (for hdmi, 0:no data 1:overscan 2:underscan) -screen0_output_aspect_ratio (for hdmi, 8-same as original picture 9-4:3 10-16:9 11-14:9) -fbx format (4:RGB655 5:RGB565 6:RGB556 7:ARGB1555 8:RGBA5551 9:RGB888 10:ARGB8888 12:ARGB4444) -fbx pixel sequence (0:ARGB 1:BGRA 2:ABGR 3:RGBA) -fb0_scaler_mode_enable(scaler mode enable, used FE) -fbx_width,fbx_height (framebuffer horizontal/vertical pixels, fix to output resolution while equal 0) -lcdx_backlight (lcd init backlight,the range:[0,256],default:197 -lcdx_yy (lcd init screen bright/contrast/saturation/hue, value:0~100, default:50/50/57/50) -lcd0_contrast (LCD contrast, 0~100) -lcd0_saturation (LCD saturation, 0~100) -lcd0_hue (LCD hue, 0~100) -framebuffer software rotation setting: -disp_rotation_used: (0:disable; 1:enable,you must set fbX_width to lcd_y, -set fbX_height to lcd_x) -degreeX: (X:screen index; 0:0 degree; 1:90 degree; 3:270 degree) -degreeX_Y: (X:screen index; Y:layer index 0~15; 0:0 degree; 1:90 degree; 3:270 degree) -devX_output_type : config output type in bootGUI framework in UBOOT-2018. - (0:none; 1:lcd; 2:tv; 4:hdmi;) -devX_output_mode : config output resolution(see include/video/sunxi_display2.h) of bootGUI framework in UBOOT-2018 -devX_screen_id : config display index of bootGUI framework in UBOOT-2018 -devX_do_hpd : whether do hpd detectation or not in UBOOT-2018 -chn_cfg_mode : Hardware DE channel allocation config. 0:single display with 6 - channel, 1:dual display with 4 channel in main display and 2 channel in second - display, 2:dual display with 3 channel in main display and 3 channel in second - in display. -----------------------------------------------------------------------------------*/ -&disp { - disp_init_enable = <1>; - disp_mode = <0>; - - screen0_output_type = <1>; - screen0_output_mode = <4>; - screen0_to_lcd_index = <0>; - - screen1_output_type = <3>; - screen1_output_mode = <5>; - screen1_to_lcd_index = <2>; - - screen1_output_format = <0>; - screen1_output_bits = <0>; - screen1_output_eotf = <4>; - screen1_output_cs = <257>; - screen1_output_dvi_hdmi = <2>; - screen1_output_range = <2>; - screen1_output_scan = <0>; - screen1_output_aspect_ratio = <8>; - - dev0_output_type = <1>; - dev0_output_mode = <4>; - dev0_screen_id = <0>; - dev0_do_hpd = <0>; - - dev1_output_type = <4>; - dev1_output_mode = <10>; - dev1_screen_id = <1>; - dev1_do_hpd = <1>; - - def_output_dev = <0>; - hdmi_mode_check = <1>; - - display_device_num = <3>; - - primary_display_type = "LCD"; - primary_de_id = <0>; - primary_framebuffer_width = <1280>; - primary_framebuffer_height = <800>; - primary_dpix = <213>; - primary_dpiy = <213>; - - extend0_display_type = "HDMI"; - extend0_de_id = <1>; - extend0_framebuffer_width = <1920>; - extend0_framebuffer_height = <1080>; - extend0_dpix = <160>; - extend0_dpiy = <160>; - - extend1_display_type = "DP"; - extend1_de_id = <1>; - extend1_framebuffer_width = <1920>; - extend1_framebuffer_height = <1080>; - extend1_dpix = <160>; - extend1_dpiy = <160>; - - fb_format = <0>; - fb_num = <2>; - /**/ - fb0_map = <0 1 0 16>; - fb0_width = <1280>; - fb0_height = <800>; - /**/ - fb1_map = <1 1 0 16>; - fb1_width = <1920>; - fb1_height = <1080>; - /**/ - fb2_map = <1 0 0 16>; - fb2_width = <1280>; - fb2_height = <720>; - /**/ - fb3_map = <1 1 0 16>; - fb3_width = <300>; - fb3_height = <300>; - - chn_cfg_mode = <3>; - disp_para_zone = <1>; - - /* dual display clock constraints: - 1. two tcons cannot share a parent clock. - 2. when dsi uses ccu clock, combphy and corresponding tcon use the - same parent clock. - */ - assigned-clocks = <&ccu CLK_DE>, - <&ccu CLK_VO0_TCONLCD0>, - <&ccu CLK_VO0_TCONLCD1>, - <&ccu CLK_VO1_TCONLCD0>, - <&ccu CLK_TCONTV>, - <&ccu CLK_TCONTV1>, - <&ccu CLK_COMBPHY0>, - <&ccu CLK_COMBPHY1>, - <&ccu CLK_DSI0>, - <&ccu CLK_DSI1>, - <&ccu CLK_EDP>; - assigned-clock-parents = <&ccu CLK_PLL_VIDEO3_4X>, - <&ccu CLK_PLL_VIDEO0_4X>, - <&ccu CLK_PLL_VIDEO1_4X>, - <&ccu CLK_PLL_VIDEO1_4X>, - <&ccu CLK_PLL_VIDEO1_4X>, - <&ccu CLK_PLL_VIDEO1_4X>, - <&ccu CLK_PLL_VIDEO0_4X>, - <&ccu CLK_PLL_VIDEO1_4X>, - <&ccu CLK_PLL_PERI0_150M>, - <&ccu CLK_PLL_PERI0_150M>, - <&ccu CLK_PLL_VIDEO1_4X>; - assigned-clock-rates = <600000000>; - - cldo3-supply = <®_cldo3>; - dcdc4-supply = <®_dcdc4>; - cldo1-supply = <®_cldo1>; - - pwms = <&pwm0 4 5000000 0>, <&pwm0 5 5000000 0>; - pwm-names = "lvds0_backlight", "lvds2_backlight"; - - power-domains = <&pd1 A523_PCK_DE>, <&pd1 A523_PCK_VO0>, <&pd1 A523_PCK_VO1>; - power-domain-names = "pd_de", "pd_vo0", "pd_vo1"; - - pinctrl-names = "active", "sleep"; - pinctrl-0 = <&pwm0_0_pin_active>; - pinctrl-1 = <&pwm0_0_pin_sleep>; -}; - -&lcd0 { - lcd_used = <1>; - - lcd_driver_name = "bp101wx1"; - lcd_backlight = <50>; - lcd_if = <3>; - - lcd_x = <1280>; - lcd_y = <800>; - lcd_width = <150>; - lcd_height = <94>; - lcd_dclk_freq = <75>; - - lcd_pwm_used = <1>; - lcd_pwm_ch = <4>; - lcd_pwm_freq = <50000>; - lcd_pwm_pol = <0>; - lcd_pwm_max_limit = <255>; - lcd_pwm_name = "lvds0_backlight"; - - lcd_hbp = <88>; - lcd_ht = <1451>; - lcd_hspw = <18>; - lcd_vbp = <23>; - lcd_vt = <860>; - lcd_vspw = <10>; - - lcd_lvds_if = <0>; - lcd_lvds_colordepth = <0>; - lcd_lvds_mode = <0>; - lcd_frm = <0>; - lcd_hv_clk_phase = <0>; - lcd_hv_sync_polarity= <0>; - lcd_gamma_en = <0>; - lcd_bright_curve_en = <0>; - lcd_cmap_en = <0>; - lcd_fsync_en = <0>; - lcd_fsync_act_time = <1000>; - lcd_fsync_dis_time = <1000>; - lcd_fsync_pol = <0>; - lcd_start_delay = <5>; - deu_mode = <0>; - lcdgamma4iep = <22>; - smart_color = <90>; - - lcd_pin_power = "cldo3"; - lcd_power = "dcdc4"; - lcd_power1 = "cldo1"; - lcd_gpio_0 = <&pio PI 2 GPIO_ACTIVE_HIGH>; //reset - lcd_bl_en = <&pio PI 2 GPIO_ACTIVE_HIGH>; - - pinctrl-0 = <&lvds0_pins_a>; - pinctrl-1 = <&lvds0_pins_b>; - lvds0_pinctrl-0 = <&lvds0_pins_a>; - lvds0_pinctrl-1 = <&lvds0_pins_b>; - lvds1_pinctrl-0 = <&lvds1_pins_a>; - lvds1_pinctrl-1 = <&lvds1_pins_b>; - dsi0_pinctrl-0 = <&dsi0_4lane_pins_a>; - dsi0_pinctrl-1 = <&dsi0_4lane_pins_b>; - dual_dsi_pinctrl-0 = <&dsi0_4lane_pins_a>, <&dsi1_4lane_pins_a>; - dual_dsi_pinctrl-1 = <&dsi0_4lane_pins_b>, <&dsi1_4lane_pins_b>; - dual_lvds0_pinctrl-0 = <&lvds0_pins_a>, <&lvds1_pins_a>; - dual_lvds0_pinctrl-1 = <&lvds0_pins_b>, <&lvds1_pins_b>; -}; - -&lcd1 { - lcd_used = <1>; - status = "okay"; - lcd_driver_name = "SQ101D_Q5DI404_84H501"; - lcd_backlight = <200>; - lcd_if = <4>; - - lcd_x = <1200>; - lcd_y = <1920>; - lcd_width = <136>; - lcd_height = <217>; - lcd_dclk_freq = <157>; - - lcd_pwm_used = <1>; - lcd_pwm_ch = <0>; - lcd_pwm_freq = <50000>; - lcd_pwm_pol = <0>; - lcd_pwm_max_limit = <255>; - - lcd_hbp = <50>; - lcd_ht = <1330>; - lcd_hspw = <10>; - lcd_vbp = <20>; - lcd_vt = <1960>; - lcd_vspw = <4>; - - lcd_frm = <0>; - lcd_gamma_en = <0>; - lcd_bright_curve_en = <0>; - lcd_cmap_en = <0>; - lcd_start_delay = <5>; - - deu_mode = <0>; - lcdgamma4iep = <22>; - smart_color = <90>; - - lcd_dsi_if = <0>; - lcd_dsi_lane = <4>; - lcd_dsi_format = <0>; - lcd_dsi_te = <0>; - lcd_dsi_eotp = <0>; - - lcd_power1 = "cldo4"; - lcd_power2 = "cldo1"; - - // lcd_gpio_2 = <&pio PD 22 GPIO_ACTIVE_HIGH>; //reset - - pinctrl-0 = <&dsi1_4lane_pins_a>; - pinctrl-1 = <&dsi1_4lane_pins_b>; - - // lcd_bl_en = <&pio PH 16 GPIO_ACTIVE_HIGH>; - lcd_bl_0_percent = <5>; -}; - -&lcd2 { - lcd_used = <0>; - - lcd_driver_name = "bp101wx1"; - lcd_backlight = <50>; - lcd_if = <3>; - - lcd_x = <1280>; - lcd_y = <800>; - lcd_width = <150>; - lcd_height = <94>; - lcd_dclk_freq = <75>; - - lcd_pwm_used = <1>; - lcd_pwm_ch = <5>; - lcd_pwm_freq = <50000>; - lcd_pwm_pol = <0>; - lcd_pwm_max_limit = <255>; - lcd_pwm_name = "lvds2_backlight"; - - lcd_hbp = <88>; - lcd_ht = <1451>; - lcd_hspw = <18>; - lcd_vbp = <23>; - lcd_vt = <860>; - lcd_vspw = <10>; - - lcd_lvds_if = <0>; - lcd_lvds_colordepth = <0>; - lcd_lvds_mode = <0>; - lcd_frm = <0>; - lcd_hv_clk_phase = <0>; - lcd_hv_sync_polarity= <0>; - lcd_gamma_en = <0>; - lcd_bright_curve_en = <0>; - lcd_cmap_en = <0>; - lcd_fsync_en = <0>; - lcd_fsync_pol = <0>; - lcd_start_delay = <5>; - deu_mode = <0>; - lcdgamma4iep = <22>; - smart_color = <90>; - - lcd_pin_power = "cldo3"; - lcd_power = "dcdc4"; - /* lvds_power & other interface power */ - lcd_bl_en = <&pio PI 5 GPIO_ACTIVE_HIGH>; - pinctrl-0 = <&lvds2_pins_a>; - pinctrl-1 = <&lvds2_pins_b>; - lvds2_pinctrl-0 = <&lvds2_pins_a>; - lvds2_pinctrl-1 = <&lvds2_pins_b>; - lvds3_pinctrl-0 = <&lvds3_pins_a>; - lvds3_pinctrl-1 = <&lvds3_pins_b>; - dual_lvds1_pinctrl-0 = <&lvds2_pins_a>, <&lvds3_pins_a>; - dual_lvds1_pinctrl-1 = <&lvds2_pins_b>, <&lvds3_pins_b>; -}; - -&edp0 { - // use if hardware reset pin is need - /* edp_hw_reset_pin = <&pio PH XX GPIO_ACTIVE_LOW>; */ - - edp_ssc_en = <0>; - edp_ssc_mode = <0>; - edp_psr_support = <0>; - edp_colordepth = <8>; /* 6/8/10/12/16 */ - edp_color_fmt = <0>; /* 0:RGB 1: YUV444 2: YUV422 */ - - lane0_sw = <0>; - lane0_pre = <0>; - lane1_sw = <0>; - lane1_pre = <0>; - lane2_sw = <0>; - lane2_pre = <0>; - lane3_sw = <0>; - lane3_pre = <0>; - efficient_training = <0>; - - sink_capacity_prefer = <1>; - edid_timings_prefer = <1>; - timings_fixed = <1>; - - edp_panel_used = <1>; - edp_panel_driver = "general_panel"; - edp_bl_en = <&pio PI 5 GPIO_ACTIVE_HIGH>; - edp_pwm_used = <1>; - edp_pwm_ch = <5>; - edp_pwm_freq = <50000>; - edp_pwm_pol = <0>; - edp_default_backlight = <200>; - edp_panel_power_0 = "edp-panel"; - - vcc-edp-supply = <®_bldo3>; - vdd-edp-supply = <®_dcdc2>; - edp-panel-supply = <®_dcdc4>; - status = "disabled"; - -}; - -&ve { - ve-supply = <®_dcdc2>; - - enable_setup_ve_freq = <0>; /* default disable */ - ve_freq_value = <624>; /* setup to 624MHz */ -}; - -/* audio dirver module -> audio codec */ -&codec { - tx-hub-en; - rx-sync-en; - - dac-vol = <63>; /* default value:63 range:0->63 */ - dacl-vol = <160>; /* default value:160 range:0->255 */ - dacr-vol = <160>; /* default value:160 range:0->255 */ - adc1-vol = <160>; /* default value:160 range:0->255 */ - adc2-vol = <160>; /* default value:160 range:0->255 */ - adc3-vol = <160>; /* default value:160 range:0->255 */ - lineout-gain = <31>; /* default value:31 range:0->31 */ - hpout-gain = <7>; /* default value:7 range:0->7 */ - adc1-gain = <31>; /* default value:31 range:0->31 */ - adc2-gain = <31>; /* default value:31 range:0->31 */ - adc3-gain = <31>; /* default value:31 range:0->31 */ - - /* to do: avcc-1.8 vdd33-3.3 cpvin-1.8 */ - avcc-external; - avcc-supply = <®_aldo4>; - avcc-vol = <1800000>; - vdd-external; - vdd-supply = <®_cldo3>; - vdd-vol = <3300000>; - cpvin-external; - cpvin-supply = <®_bldo3>; - cpvin-vol = <1800000>; - - pa-pin-max = <1>; - pa-pin-0 = <&r_pio PL 7 GPIO_ACTIVE_HIGH>; - pa-pin-level-0 = <1>; - pa-pin-msleep-0 = <0>; - - jack-det-level = <0>; - jack-det-threshold = <8>; - jack-det-debouce-time = <250>; - - /* extcon = <&usb_power_supply>; - * jack-swpin-mic-sel = <&pio PH 8 GPIO_ACTIVE_HIGH>; - * jack-swpin-hp-en = <&pio PH 15 GPIO_ACTIVE_HIGH>; - * jack-swpin-hp-sel = <&pio PH 11 GPIO_ACTIVE_HIGH>; - * jack-swmode-hp-off = <0x00>; - * jack-swmode-hp-usb = <0x11>; - * jack-swmode-hp-audio = <0x10>; - * jack-det-level = <1>; - * jack-det-threshold = <8>; - * jack-det-debouce-time = <250>; - */ - - status = "okay"; -}; - -&codec_plat { - status = "okay"; -}; - -&codec_mach { - soundcard-mach,jack-support = <1>; - status = "okay"; - soundcard-mach,cpu { - sound-dai = <&codec_plat>; - }; - soundcard-mach,codec { - sound-dai = <&codec>; - }; -}; - -&hdmi_codec { - extcon = <&hdmi>; +&xhci2 { + dr_mode = "host"; status = "okay"; -}; - -&edp_codec { - status = "disabled"; -}; - -/* audio dirver module -> owa */ -&owa_plat { - pinctrl-used; - pinctrl-names = "default","sleep"; - pinctrl-0 = <&owa_pins_a>; - pinctrl-1 = <&owa_pins_b>; - tx-hub-en; - status = "disabled"; -}; - -&owa_mach { - status = "disabled"; - soundcard-mach,cpu { - sound-dai = <&owa_plat>; - }; - soundcard-mach,codec { - }; -}; - -/* audio dirver module -> DMIC */ -&dmic_plat { - rx-chmap = <0x76543210>; - data-vol = <0xB0>; - rxdelaytime = <0>; - /* pinctrl-used; */ - /* pinctrl-names = "default","sleep"; */ - /* pinctrl-0 = <&dmic_pins_a>; */ - /* pinctrl-1 = <&dmic_pins_b>; */ - rx-sync-en; - status = "disabled"; -}; - -&dmic_mach { - status = "disabled"; - soundcard-mach,cpu { - sound-dai = <&dmic_plat>; - }; - soundcard-mach,codec { - }; -}; - -/* audio dirver module -> I2S/PCM */ -&i2s0_plat { - tdm-num = <0>; - tx-pin = <0>; - rx-pin = <0>; - pinctrl-used; - pinctrl-names = "default","sleep"; - pinctrl-0 = <&i2s0_pins_a &i2s0_pins_c &i2s0_pins_d>; - pinctrl-1 = <&i2s0_pins_b>; - tx-hub-en; - rx-sync-en; - status = "disabled"; -}; - -&i2s0_mach { - soundcard-mach,format = "i2s"; - soundcard-mach,frame-master = <&i2s0_cpu>; - soundcard-mach,bitclock-master = <&i2s0_cpu>; - /* soundcard-mach,frame-inversion; */ - /* soundcard-mach,bitclock-inversion; */ - soundcard-mach,slot-num = <2>; - soundcard-mach,slot-width = <32>; - soundcard-mach,capture-only; - status = "disabled"; - i2s0_cpu: soundcard-mach,cpu { - sound-dai = <&i2s0_plat>; - /* note: pll freq = 24.576M or 22.5792M * pll-fs */ - soundcard-mach,pll-fs = <1>; - /* note: - * mclk freq = mclk-fs * 12.288M or 11.2896M (when mclk-fp ture) - * mclk freq = mclk-fs * pcm rate (when mclk-fp false) - */ - soundcard-mach,mclk-fp; - soundcard-mach,mclk-fs = <1>; - }; - i2s0_codec: soundcard-mach,codec { - }; -}; - -&i2s1_plat { - tdm-num = <1>; - tx-pin = <0>; - rx-pin = <0>; - /* pinctrl-used; */ - /* pinctrl-names= "default","sleep"; */ - /* pinctrl-0 = <&i2s1_pins_a &i2s1_pins_c &i2s1_pins_d>; */ - /* pinctrl-1 = <&i2s1_pins_b>; */ - tx-hub-en; - rx-sync-en; - status = "disabled"; -}; - -&i2s1_mach { - soundcard-mach,format = "i2s"; - soundcard-mach,frame-master = <&i2s1_cpu>; - soundcard-mach,bitclock-master = <&i2s1_cpu>; - /* soundcard-mach,frame-inversion; */ - /* soundcard-mach,bitclock-inversion; */ - soundcard-mach,slot-num = <2>; - soundcard-mach,slot-width = <32>; - status = "disabled"; - i2s1_cpu: soundcard-mach,cpu { - sound-dai = <&i2s1_plat>; - soundcard-mach,pll-fs = <1>; - soundcard-mach,mclk-fs = <0>; - }; - i2s1_codec: soundcard-mach,codec { - }; -}; - -&i2s2_plat { - tdm-num = <2>; - tx-pin = <0 1 2 3>; - /* e.g. - * tx-pin0-map0 = <0xFEDC3210> -> tx_pin_map[0][0] (Dout0-slot[7:0] map channel[15:12, 3:0]) - * tx-pin0-map1 = <0x3210FEDC> -> tx_pin_map[0][1] (Dout0-slot[15:8] map channel[3:0, 15:12]) - * tx-pin1-map0 = <0x76543210> -> tx_pin_map[1][0] (Dout1-slot[7:0] map channel[7:0]) - */ - tx-pin0-map0 = <0x76543210>; - tx-pin0-map1 = <0xFEDCBA98>; - tx-pin1-map0 = <0x76543210>; - tx-pin1-map1 = <0xFEDCBA98>; - tx-pin2-map0 = <0x76543210>; - tx-pin2-map1 = <0xFEDCBA98>; - tx-pin3-map0 = <0x76543210>; - tx-pin3-map1 = <0xFEDCBA98>; - rx-pin = <0>; - /* pinctrl-used; */ - /* pinctrl-names= "default","sleep"; */ - /* pinctrl-0 = <&i2s2_pins_a &i2s2_pins_c &i2s2_pins_d &i2s2_pins_e>; */ - /* pinctrl-1 = <&i2s2_pins_b>; */ - tx-hub-en; - rx-sync-en; - /* edp not need dai-type */ - dai-type = "hdmi"; - status = "okay"; -}; - -&i2s2_mach { - soundcard-mach,format = "i2s"; - soundcard-mach,frame-master = <&i2s2_cpu>; - soundcard-mach,bitclock-master = <&i2s2_cpu>; - /* soundcard-mach,frame-inversion; */ - /* soundcard-mach,bitclock-inversion; */ - soundcard-mach,slot-num = <2>; - soundcard-mach,slot-width = <32>; - soundcard-mach,playback-only; - status = "okay"; - i2s2_cpu: soundcard-mach,cpu { - sound-dai = <&i2s2_plat>; - soundcard-mach,pll-fs = <1>; - /* edp mclk: 512fs */ - soundcard-mach,mclk-fs = <0>; - }; - i2s2_codec: soundcard-mach,codec { - sound-dai = <&hdmi_codec>; - }; -}; - -&i2s3_plat { - tdm-num = <3>; - tx-pin = <0>; - rx-pin = <0>; - /* pinctrl-used; */ - /* pinctrl-names= "default","sleep"; */ - /* pinctrl-0 = <&i2s3_pins_a &i2s3_pins_c &i2s3_pins_d>; */ - /* pinctrl-1 = <&i2s3_pins_b>; */ - tx-hub-en; - rx-sync-en; - status = "disabled"; -}; - -&i2s3_mach { - soundcard-mach,format = "i2s"; - soundcard-mach,frame-master = <&i2s3_cpu>; - soundcard-mach,bitclock-master = <&i2s3_cpu>; - /* soundcard-mach,frame-inversion; */ - /* soundcard-mach,bitclock-inversion; */ - soundcard-mach,slot-num = <2>; - soundcard-mach,slot-width = <32>; - status = "disabled"; - i2s3_cpu: soundcard-mach,cpu { - sound-dai = <&i2s3_plat>; - soundcard-mach,pll-fs = <1>; - soundcard-mach,mclk-fs = <0>; - }; - i2s3_codec: soundcard-mach,codec { - }; -}; - -&hdmi { - hdmi_used = <1>; - bldo3-supply = <®_bldo3>; - hdmi_power0 = "bldo3"; - hdmi_power_cnt = <1>; - hdmi_hdcp_enable = <1>; - hdmi_hdcp22_enable = <0>; - hdmi_cts_compatibility = <0>; - hdmi_cec_support = <1>; - hdmi_cec_super_standby = <1>; - hdmi_skip_bootedid = <1>; - - ddc_en_io_ctrl = <0>; - power_io_ctrl = <0>; - - status = "okay"; -}; - -&cpu0 { - cpu-supply = <®_dcdc1>; -}; - -&dsufreq { - dsu-supply = <®_dcdc1>; -}; - -&mdio0 { - status = "okay"; - gmac0_phy0: ethernet-phy@1 { - reset-gpios = <&pio PH 8 GPIO_ACTIVE_LOW>; - }; -}; - -&gmac0 { - phy-mode = "rgmii"; - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&gmac0_pins_default>; - pinctrl-1 = <&gmac0_pins_sleep>; - sunxi,phy-clk-type = <0>; - tx-delay = <3>; - rx-delay = <4>; - - gmac3v3-supply = <®_cldo4>; - status = "okay"; -}; - - -&gmac1 { - phy-mode = "rgmii"; - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&gmac1_pins_default>; - pinctrl-1 = <&gmac1_pins_sleep>; - aw,soc-phy25m; - tx-delay = <3>; - rx-delay = <4>; - dwmac3v3-supply = <®_cldo4>; - status = "okay"; - mdio1: mdio1@1 { - gmac1_phy0: ethernet-phy@1 { - reset-gpios = <&pio PJ 16 GPIO_ACTIVE_LOW>; - }; - }; - -}; - -&npu { - npu-supply = <®_ext_axp1530_dcdc3>; - status = "okay"; -}; - -&dram { - dram_para00 = <0x00000000>; - dram_para01 = <0x00000000>; - dram_para02 = <0x00000000>; - dram_para03 = <0x00000000>; - dram_para04 = <0x00000000>; - dram_para05 = <0x00000000>; - dram_para06 = <0x00000000>; - dram_para07 = <0x00000000>; - dram_para08 = <0x00000000>; - dram_para09 = <0x00000000>; - dram_para10 = <0x00000000>; - dram_para11 = <0x00000000>; - dram_para12 = <0x00000000>; - dram_para13 = <0x00000000>; - dram_para14 = <0x00000000>; - dram_para15 = <0x00000000>; - dram_para16 = <0x00000000>; - dram_para17 = <0x00000000>; - dram_para18 = <0x00000000>; - dram_para19 = <0x00000000>; - dram_para20 = <0x00000000>; - dram_para21 = <0x00000000>; - dram_para22 = <0x00000000>; - dram_para23 = <0x00000000>; - dram_para24 = <0x00000000>; - dram_para25 = <0x00000000>; - dram_para26 = <0x00000000>; - dram_para27 = <0x00000000>; - dram_para28 = <0x00000000>; - dram_para29 = <0x00000000>; - dram_para30 = <0x00000000>; - dram_para31 = <0x00000000>; - dram_para32 = <0x00000000>; - dram_para33 = <0x00000000>; - dram_para34 = <0x00000000>; - dram_para35 = <0x00000000>; - dram_para36 = <0x00000000>; - dram_para37 = <0x00000000>; - dram_para38 = <0x00000000>; - dram_para39 = <0x00000000>; - dram_para40 = <0x00000000>; - dram_para41 = <0x00000000>; - dram_para42 = <0x00000000>; - dram_para43 = <0x00000000>; - dram_para44 = <0x00000000>; - dram_para45 = <0x00000000>; - dram_para46 = <0x00000000>; - dram_para47 = <0x00000000>; - dram_para48 = <0x00000000>; - dram_para49 = <0x00000000>; - dram_para50 = <0x00000000>; - dram_para51 = <0x00000000>; - dram_para52 = <0x00000000>; - dram_para53 = <0x00000000>; - dram_para54 = <0x00000000>; - dram_para55 = <0x00000000>; - dram_para56 = <0x00000000>; - dram_para57 = <0x00000000>; - dram_para58 = <0x00000000>; - dram_para59 = <0x00000000>; - dram_para60 = <0x00000000>; - dram_para61 = <0x00000000>; - dram_para62 = <0x00000000>; - dram_para63 = <0x00000000>; - dram_para64 = <0x00000000>; - dram_para65 = <0x00000000>; - dram_para66 = <0x00000000>; - dram_para67 = <0x00000000>; - dram_para68 = <0x00000000>; - dram_para69 = <0x00000000>; - dram_para70 = <0x00000000>; - dram_para71 = <0x00000000>; - dram_para72 = <0x00000000>; - dram_para73 = <0x00000000>; - dram_para74 = <0x00000000>; - dram_para75 = <0x00000000>; - dram_para76 = <0x00000000>; - dram_para77 = <0x00000000>; - dram_para78 = <0x00000000>; - dram_para79 = <0x00000000>; - dram_para80 = <0x00000000>; - dram_para81 = <0x00000000>; - dram_para82 = <0x00000000>; - dram_para83 = <0x00000000>; - dram_para84 = <0x00000000>; - dram_para85 = <0x00000000>; - dram_para86 = <0x00000000>; - dram_para87 = <0x00000000>; - dram_para88 = <0x00000000>; - dram_para89 = <0x00000000>; - dram_para90 = <0x00000000>; - dram_para91 = <0x00000000>; - dram_para92 = <0x00000000>; - dram_para93 = <0x00000000>; - dram_para94 = <0x00000000>; - dram_para95 = <0x00000000>; -}; - -&cpul_thermal_zone { - cpul_trips: trips { - cpul_crit: cpu_crit@0 { - temperature = <115000>; - type = "critical"; - hysteresis = <0>; - }; - }; -}; - -&cpub_thermal_zone { - cpub_trips: trips { - cpub_crit: cpu_crit@0 { - temperature = <115000>; - type = "critical"; - hysteresis = <0>; - }; - }; -}; - -&gpu_thermal_zone { - gpu_trips: trips { - gpu_crit: gpu_crit@0 { - temperature = <115000>; - type = "critical"; - hysteresis = <0>; - }; - }; -}; - -&pd1 { - /* pk */ - pd1_vi@A523_PCK_VI { - ppu-always-on; - }; - - /* pd */ - pd1_vo0@A523_PCK_VO0 { - ppu-always-on; - }; - - /* pj */ - pd1_vo1@A523_PCK_VO1 { - ppu-always-on; - }; -}; +}; \ No newline at end of file diff --git a/arch/arm64/boot/dts/allwinner/sun55i-t527-longanpi-4b.dtsi b/arch/arm64/boot/dts/allwinner/sun55i-t527-longanpi-4b.dtsi new file mode 100644 index 0000000000..d3b23883d9 --- /dev/null +++ b/arch/arm64/boot/dts/allwinner/sun55i-t527-longanpi-4b.dtsi @@ -0,0 +1,3437 @@ +/* + * Allwinner Technology CO., Ltd. + */ + +/dts-v1/; + +#include "sun55i-t527.dtsi" + +/{ + aliases { + pmu0 = &pmu0; + serial0 = &uart0; + hdmi = &hdmi; + reg-axp1530 = ®_ext_axp1530_dcdc1; + axp1530 = &axp1530; + cpu-ext = &cpu4; + standby-param = &standby_param; + arisc-config = &arisc_config; + cir_param = &cir_param; + }; + + reg_usb0_vbus: usb0-vbus { + compatible = "regulator-fixed"; + regulator-name = "usb0-vbus"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + regulator-enable-ramp-delay = <1000>; + gpio = <&pio PB 12 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + reg_usb1_vbus: usb1-vbus { + compatible = "regulator-fixed"; + regulator-name = "usb1-vbus"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + regulator-enable-ramp-delay = <1000>; + gpio = <&pio PB 3 GPIO_ACTIVE_HIGH>; + enable-active-high; + }; + + standby_param: standby_param { + vdd-cpu = <0x00000001>; + vdd-cpub = <0x00000001>; + vdd-sys = <0x00000002>; + vcc-pll = <0x00000080>; + vcc-io = <0x00004000>; + + osc24m-on = <0x0>; + }; + + cir_param: cir_param { + gpio_group = <1>; /* 0:PL 1:PM */ + gpio_pin = <11>; + gpio_function = <2>; + count = <15>; + ir_power_key_code0 = <0x40>; + ir_addr_code0 = <0xfe01>; + ir_power_key_code1 = <0x1a>; + ir_addr_code1 = <0xfb04>; + ir_power_key_code2 = <0xf2>; + ir_addr_code2 = <0x2992>; + ir_power_key_code3 = <0x57>; + ir_addr_code3 = <0x9f00>; + ir_power_key_code4 = <0xdc>; + ir_addr_code4 = <0x4cb3>; + ir_power_key_code5 = <0x18>; + ir_addr_code5 = <0xff00>; + ir_power_key_code6 = <0xdc>; + ir_addr_code6 = <0xdd22>; + ir_power_key_code7 = <0x0d>; + ir_addr_code7 = <0xbc00>; + ir_power_key_code8 = <0x4d>; + ir_addr_code8 = <0x4040>; + ir_power_key_code9 = <0x08>; + ir_addr_code9 = <0xfb04>; + ir_power_key_code10 = <0x00>; + ir_addr_code10 = <0xfc03>; + ir_power_key_code11 = <0x00>; + ir_addr_code11 = <0xbf00>; + ir_power_key_code12 = <0xea>; + ir_addr_code12 = <0xfb04>; + ir_power_key_code13 = <0x42>; + ir_addr_code13 = <0xbf00>; + ir_power_key_code14 = <0x0f>; + ir_addr_code14 = <0xff00>; + }; + + arisc_config: arisc_config { + s_uart_config { + pins = "PL2", "PL3"; + function = <2>, <2>; + status = "disabled"; + }; + }; + + reserved-memory { + dsp0ddr_reserved: dsp0ddr@4a000000 { + reg = <0x0 0x4a000000 0x0 0x00a00000>; + no-map; + }; + + riscvsram0_reserved: riscvsram0@7280000 { + reg = <0x0 0x07280000 0x0 0x40000>; + no-map; + }; + + riscvsram1_reserved: riscvsram1@72c0000 { + reg = <0x0 0x072c0000 0x0 0x40000>; + no-map; + }; + + /* + * The name should be "vdev%dbuffer". + * Its size should be not less than + * RPMSG_BUF_SIZE * (num of buffers in a vring) * 2 + * = 512 * (num of buffers in a vring) * 2 + */ + dsp_vdev0buffer: vdev0buffer@4ac00000 { + compatible = "shared-dma-pool"; + reg = <0x0 0x4ac00000 0x0 0x40000>; + no-map; + }; + + /* + * The name should be "vdev%dvring%d". + * The size of each should be not less than + * PAGE_ALIGN(vring_size(num, align)) + * = PAGE_ALIGN(16 * num + 6 + 2 * num + (pads for align) + 6 + 8 * num) + * + * (Please refer to the vring layout in include/uapi/linux/virtio_ring.h) + */ + dsp_vdev0vring0: vdev0vring0@4ac40000 { + reg = <0x0 0x4ac40000 0x0 0x2000>; + no-map; + }; + dsp_vdev0vring1: vdev0vring1@4ac42000 { + reg = <0x0 0x4ac42000 0x0 0x2000>; + no-map; + }; + + /* + * The name should be "vdev%dbuffer". + * Its size should be not less than + * RPMSG_BUF_SIZE * (num of buffers in a vring) * 2 + * = 512 * (num of buffers in a vring) * 2 + */ + rv_vdev0buffer: vdev0buffer@4ae00000 { + compatible = "shared-dma-pool"; + reg = <0x0 0x4ae00000 0x0 0x40000>; + no-map; + }; + + /* + * The name should be "vdev%dvring%d". + * The size of each should be not less than + * PAGE_ALIGN(vring_size(num, align)) + * = PAGE_ALIGN(16 * num + 6 + 2 * num + (pads for align) + 6 + 8 * num) + * + * (Please refer to the vring layout in include/uapi/linux/virtio_ring.h) + */ + rv_vdev0vring0: vdev0vring0@4ae40000 { + reg = <0x0 0x4ae40000 0x0 0x2000>; + no-map; + }; + rv_vdev0vring1: vdev0vring1@4ae42000 { + reg = <0x0 0x4ae42000 0x0 0x2000>; + no-map; + }; + + /* + * mcu ram addr + */ + mcu0iram_reserved: mcu0iram@20000 { + reg = <0x0 0x20000 0x0 0x10000>; + no-map; + }; + mcu0dram0_reserved: mcu0dram0@30000 { + reg = <0x0 0x30000 0x0 0x8000>; + no-map; + }; + mcu0dram1_reserved: mcu0dram1@38000 { + reg = <0x0 0x38000 0x0 0x8000>; + no-map; + }; + + dsp0_rpbuf_reserved: dsp0_rpbuf@4ae44000 { + compatible = "shared-dma-pool"; + no-map; + reg = <0x0 0x4ae44000 0x0 0x8000>; + }; + + dsp_share_space@4ab00000 { + no-map; + reg = <0x0 0x4ab00000 0x0 0x10000>; + }; + }; + + rpbuf_controller0: rpbuf_controller@0 { + compatible = "allwinner,rpbuf-controller"; + remoteproc = <&dsp0_rproc>; + ctrl_id = <0>; + memory-region = <&dsp0_rpbuf_reserved>; + status = "okay"; + }; + + edp_panel_backlight: edp_backlight { + compatible = "pwm-backlight"; + status = "disabled"; + brightness-levels = < + 0 1 2 3 4 5 6 7 + 8 9 10 11 12 13 14 15 + 16 17 18 19 20 21 22 23 + 24 25 26 27 28 29 30 31 + 32 33 34 35 36 37 38 39 + 40 41 42 43 44 45 46 47 + 48 49 50 51 52 53 54 55 + 56 57 58 59 60 61 62 63 + 64 65 66 67 68 69 70 71 + 72 73 74 75 76 77 78 79 + 80 81 82 83 84 85 86 87 + 88 89 90 91 92 93 94 95 + 96 97 98 99 100 101 102 103 + 104 105 106 107 108 109 110 111 + 112 113 114 115 116 117 118 119 + 120 121 122 123 124 125 126 127 + 128 129 130 131 132 133 134 135 + 136 137 138 139 140 141 142 143 + 144 145 146 147 148 149 150 151 + 152 153 154 155 156 157 158 159 + 160 161 162 163 164 165 166 167 + 168 169 170 171 172 173 174 175 + 176 177 178 179 180 181 182 183 + 184 185 186 187 188 189 190 191 + 192 193 194 195 196 197 198 199 + 200 201 202 203 204 205 206 207 + 208 209 210 211 212 213 214 215 + 216 217 218 219 220 221 222 223 + 224 225 226 227 228 229 230 231 + 232 233 234 235 236 237 238 239 + 240 241 242 243 244 245 246 247 + 248 249 250 251 252 253 254 255>; + default-brightness-level = <200>; + enable-gpios = <&pio PI 5 GPIO_ACTIVE_HIGH>; + /* power-supply = <®_backlight_12v>; */ + pwms = <&pwm0 5 5000000 0>; + }; + + edp_panel: edp_panel { + compatible = "edp-general-panel"; + status = "okay"; + power0-supply = <®_dcdc4>; + + backlight = <&edp_panel_backlight>; + + panel-timing { + clock-frequency = <348577920>; /* pixel clock */ + hactive = <2560>; + hback-porch = <120>; + hfront-porch = <88>; + hsync-len = <32>; + vactive = <1600>; + vback-porch = <71>; + vfront-porch = <28>; + vsync-len = <5>; + /* hor_sync_polarity */ + hsync-active = <1>; + /* ver_sync_polarity */ + vsync-active = <1>; + + // unused now + /* + de-active = <1>; + pixelclk-active = <1>; + syncclk-active = <0>; + interlaced; + doublescan; + doubleclk; + */ + }; + ports { + #address-cells = <1>; + #size-cells = <0>; + panel_in: port@0 { + #address-cells = <1>; + #size-cells = <0>; + reg = <0>; + edp_panel_in: endpoint@0 { + reg = <0>; + remote-endpoint = <&edp_panel_out>; + }; + }; + }; + }; + + lvds_panel0_backlight: backlight0 { + compatible = "pwm-backlight"; + status = "okay"; + brightness-levels = < + 0 1 2 3 4 5 6 7 + 8 9 10 11 12 13 14 15 + 16 17 18 19 20 21 22 23 + 24 25 26 27 28 29 30 31 + 32 33 34 35 36 37 38 39 + 40 41 42 43 44 45 46 47 + 48 49 50 51 52 53 54 55 + 56 57 58 59 60 61 62 63 + 64 65 66 67 68 69 70 71 + 72 73 74 75 76 77 78 79 + 80 81 82 83 84 85 86 87 + 88 89 90 91 92 93 94 95 + 96 97 98 99 100 101 102 103 + 104 105 106 107 108 109 110 111 + 112 113 114 115 116 117 118 119 + 120 121 122 123 124 125 126 127 + 128 129 130 131 132 133 134 135 + 136 137 138 139 140 141 142 143 + 144 145 146 147 148 149 150 151 + 152 153 154 155 156 157 158 159 + 160 161 162 163 164 165 166 167 + 168 169 170 171 172 173 174 175 + 176 177 178 179 180 181 182 183 + 184 185 186 187 188 189 190 191 + 192 193 194 195 196 197 198 199 + 200 201 202 203 204 205 206 207 + 208 209 210 211 212 213 214 215 + 216 217 218 219 220 221 222 223 + 224 225 226 227 228 229 230 231 + 232 233 234 235 236 237 238 239 + 240 241 242 243 244 245 246 247 + 248 249 250 251 252 253 254 255>; + default-brightness-level = <200>; + enable-gpios = <&pio PI 2 GPIO_ACTIVE_HIGH>; + pwms = <&pwm0 4 50000 0>; + }; + + lvds_panel0: panel@0 { + compatible = "BP101WX1"; + status = "okay"; + reg = <0>; + power0-supply = <®_cldo3>; + power1-supply = <®_dcdc4>; + power2-supply = <®_cldo1>; + + backlight = <&lvds_panel0_backlight>; + + lcd_if = <3>; + lcd_width = <150>; + lcd_height = <94>; + + pinctrl-0 = <&lvds0_pins_a>; + pinctrl-1 = <&lvds0_pins_b>; + pinctrl-names = "active","sleep"; + + panel-timing { + clock-frequency = <74871600>; /* pixel clock */ + hback-porch = <88>; + hactive = <1280>; + hfront-porch = <83>; + hsync-len = <18>; + vback-porch = <23>; + vactive = <800>; + vfront-porch = <37>; + vsync-len = <10>; + + // unused now + /* + hsync-active = <0>; + vsync-active = <0>; + de-active = <1>; + pixelclk-active = <1>; + */ + }; + ports { + #address-cells = <1>; + #size-cells = <0>; + lvds_panel0_in: port@0 { + #address-cells = <1>; + #size-cells = <0>; + reg = <0>; + lvds_panel0_in_lcd0: endpoint@0 { + reg = <0>; + remote-endpoint = <&tcon0_out_panel>; + }; + }; + }; + }; + + lvds_panel1: panel@1 { + compatible = "BP101WX1"; + status = "disabled"; + reg = <1>; + power0-supply = <®_cldo3>; + power1-supply = <®_dcdc4>; + + backlight = <&lvds_panel1_backlight>; + + lcd_if = <3>; + lcd_width = <150>; + lcd_height = <94>; + + pinctrl-0 = <&lvds2_pins_a>; + pinctrl-1 = <&lvds2_pins_b>; + pinctrl-names = "active","sleep"; + + panel-timing { + clock-frequency = <74871600>; /* pixel clock */ + hback-porch = <88>; + hactive = <1280>; + hfront-porch = <83>; + hsync-len = <18>; + vback-porch = <23>; + vactive = <800>; + vfront-porch = <37>; + vsync-len = <10>; + // unused now + /* + hsync-active = <0>; + vsync-active = <0>; + de-active = <1>; + pixelclk-active = <1>; + */ + }; + ports { + #address-cells = <1>; + #size-cells = <0>; + lvds_panel1_in: port@0 { + #address-cells = <1>; + #size-cells = <0>; + reg = <0>; + lvds_panel1_in_lcd2: endpoint@0 { + reg = <0>; + remote-endpoint = <&tcon4_out_panel>; + }; + }; + }; + }; + + lvds_panel1_backlight: backlight1 { + compatible = "pwm-backlight"; + status = "disabled"; + brightness-levels = < + 0 1 2 3 4 5 6 7 + 8 9 10 11 12 13 14 15 + 16 17 18 19 20 21 22 23 + 24 25 26 27 28 29 30 31 + 32 33 34 35 36 37 38 39 + 40 41 42 43 44 45 46 47 + 48 49 50 51 52 53 54 55 + 56 57 58 59 60 61 62 63 + 64 65 66 67 68 69 70 71 + 72 73 74 75 76 77 78 79 + 80 81 82 83 84 85 86 87 + 88 89 90 91 92 93 94 95 + 96 97 98 99 100 101 102 103 + 104 105 106 107 108 109 110 111 + 112 113 114 115 116 117 118 119 + 120 121 122 123 124 125 126 127 + 128 129 130 131 132 133 134 135 + 136 137 138 139 140 141 142 143 + 144 145 146 147 148 149 150 151 + 152 153 154 155 156 157 158 159 + 160 161 162 163 164 165 166 167 + 168 169 170 171 172 173 174 175 + 176 177 178 179 180 181 182 183 + 184 185 186 187 188 189 190 191 + 192 193 194 195 196 197 198 199 + 200 201 202 203 204 205 206 207 + 208 209 210 211 212 213 214 215 + 216 217 218 219 220 221 222 223 + 224 225 226 227 228 229 230 231 + 232 233 234 235 236 237 238 239 + 240 241 242 243 244 245 246 247 + 248 249 250 251 252 253 254 255>; + default-brightness-level = <200>; + enable-gpios = <&pio PI 5 GPIO_ACTIVE_HIGH>; + pwms = <&pwm0 5 5000000 0>; + }; +}; + +&de { + chn_cfg_mode = <3>; + status = "okay"; +}; + +&vo0 { + status = "okay"; +}; + +&vo1 { + status = "okay"; +}; + +/* HDMI DRM */ +&tv0 { + status = "okay"; +}; + +&dlcd0 { + status = "disabled"; + panel = <&lvds_panel0>; + ports { + tcon0_out: port@1 { + tcon0_out_panel: endpoint@2 { + reg = <2>; + remote-endpoint = <&lvds_panel0_in_lcd0>; + }; + }; + }; + +}; + +&dlcd2 { + status = "disabled"; + panel = <&lvds_panel1>; + ports { + tcon4_out: port@1 { + tcon4_out_panel: endpoint@0 { + reg = <0>; + remote-endpoint = <&lvds_panel1_in_lcd2>; + }; + }; + }; +}; + +&dsi0combophy { + status = "okay"; +}; + +&dsi1combophy { + status = "okay"; +}; + +&drm_edp { + status = "disabled"; + + edp_ssc_en = <0>; + edp_ssc_mode = <0>; + edp_psr_support = <0>; + edp_colordepth = <8>; /* 6/8/10/12/16 */ + edp_color_fmt = <0>; /* 0:RGB 1: YUV444 2: YUV422 */ + + lane1_sw = <0>; + lane1_pre = <0>; + lane2_sw = <0>; + lane2_pre = <0>; + lane3_sw = <0>; + lane3_pre = <0>; + efficient_training = <0>; + + sink_capacity_prefer = <1>; + edid_timings_prefer = <1>; + timings_fixed = <1>; + + vcc-edp-supply = <®_bldo3>; + vdd-edp-supply = <®_dcdc2>; + panel = <&edp_panel>; + ports { + edp_out: port@1 { + edp_panel_out: endpoint@0 { + reg = <0>; + remote-endpoint = <&edp_panel_in>; + }; + }; + }; +}; + +&r_pio { + uart8_pins_a: uart8_pins@0 { + pins = "PL2", "PL3"; + function = "s_uart0"; + }; + + uart8_pins_b: uart8_pins@1 { + pins = "PL2", "PL3"; + function = "gpio_in"; + }; + + uart9_pins_a: uart9_pins@0 { + pins = "PM0", "PM1"; + function = "s_uart1"; + }; + + uart9_pins_b: uart9_pins@1 { + pins = "PM0", "PM1"; + function = "gpio_in"; + }; + + s_twi0_pins_default: s_twi0@0 { + pins = "PL0", "PL1"; + function = "s_twi0"; + drive-strength = <10>; + bias-pull-up; + }; + + s_twi0_pins_sleep: s_twi0@1 { + pins = "PL0", "PL1"; + function = "gpio_in"; + }; + + s_twi1_pins_default: s_twi1@0 { + pins = "PL8", "PL9"; + function = "s_twi1"; + drive-strength = <10>; + bias-pull-up; + }; + + s_twi1_pins_sleep: s_twi1@1 { + pins = "PL8", "PL9"; + function = "gpio_in"; + }; + + s_twi2_pins_default: s_twi2@0 { + pins = "PL12", "PL13"; + function = "s_twi2"; + drive-strength = <10>; + bias-pull-up; + }; + + s_twi2_pins_sleep: s_twi2@1 { + pins = "PL12", "PL13"; + function = "gpio_in"; + }; + + s_irrx_pins_default: s_irrx@0 { + pins = "PL11"; + function = "s_cir"; + }; + + s_irrx_pins_sleep: s_irrx@1 { + pins = "PL11"; + function = "gpio_in"; + }; +}; + +&pio { + vcc-pg-supply = <®_pio1_8>; + vcc-pf-supply = <®_pio1_8>; + vcc-pfo-supply = <®_pio3_3>; + vcc-pd-supply = <®_dcdc4>; + vcc-pe-supply = <®_pio1_8>; + vcc-pi-supply = <®_dcdc4>; + vcc-pj-supply = <®_dcdc4>; + vcc-pk-supply = <®_dcdc4>; + uart0_pins_a: uart0_pins@0 { + pins = "", ""; + function = "uart0"; + }; + + uart0_pins_b: uart0_pins@1 { + pins = "", ""; + function = "gpio_in"; + }; + + uart2_pins_a: uart2_pins@0 { + pins = "PB0", "PB1"; + function = "uart2"; + }; + + uart2_pins_b: uart2_pins@1 { + pins = "PB0", "PB1"; + function = "gpio_in"; + }; + + uart3_pins_a: uart3_pins@0 { + pins = "PD14", "PD15"; + function = "uart3"; + }; + + uart3_pins_b: uart3_pins@1 { + pins = "PD14", "PD15"; + function = "gpio_in"; + }; + + uart4_pins_a: uart4_pins@0 { + pins = "PD18", "PD19"; + function = "uart4"; + }; + + uart4_pins_b: uart4_pins@1 { + pins = "PD18", "PD19"; + function = "gpio_in"; + }; + + uart5_pins_a: uart5_pins@0 { + pins = "PE11", "PE12"; + function = "uart5"; + }; + + uart5_pins_b: uart5_pins@1 { + pins = "PE11", "PE12"; + function = "gpio_in"; + }; + + uart6_pins_a: uart6_pins@0 { + pins = "PI6", "PI7"; + function = "uart6"; + }; + + uart6_pins_b: uart6_pins@1 { + pins = "PI6", "PI7"; + function = "gpio_in"; + }; + + uart7_pins_a: uart7_pins@0 { + pins = "PB11", "PB12"; + function = "uart7"; + }; + + uart7_pins_b: uart7_pins@1 { + pins = "PB11", "PB12"; + function = "gpio_in"; + }; + + pwm0_0_pin_active: pwm0_0@0 { + pins = "PD23"; + function = "pwm0_0"; + }; + + pwm0_0_pin_sleep: pwm0_0@1 { + pins = "PD23"; + function = "gpio_in"; + bias-pull-down; + }; + + pwm0_1_pin_active: pwm0_1@0 { + pins = "PD22"; + function = "pwm0_1"; + }; + + pwm0_1_pin_sleep: pwm0_1@1 { + pins = "PD22"; + function = "gpio_in"; + bias-pull-down; + }; + + pwm0_2_pin_active: pwm0_2@0 { + pins = "PB11"; + function = "pwm0_2"; + }; + + pwm0_2_pin_sleep: pwm0_2@1 { + pins = "PB11"; + function = "gpio_in"; + bias-pull-down; + }; + + pwm0_3_pin_active: pwm0_3@0 { + pins = "PB12"; + function = "pwm0_3"; + }; + + pwm0_3_pin_sleep: pwm0_3@1 { + pins = "PB12"; + function = "gpio_in"; + bias-pull-down; + }; + + pwm0_4_pin_active: pwm0_4@0 { + pins = "PI3"; + function = "pwm0_4"; + }; + + pwm0_4_pin_sleep: pwm0_4@1 { + pins = "PI3"; + function = "gpio_in"; + bias-pull-down; + }; + + pwm0_5_pin_active: pwm0_5@0 { + pins = "PI4"; + function = "pwm0_5"; + }; + + pwm0_5_pin_sleep: pwm0_5@1 { + pins = "PI4"; + function = "gpio_in"; + bias-pull-down; + }; + + ledc_pins_a: ledc@0 { + pins = "PG0"; + function = "ledc"; + drive-strength = <10>; + }; + + ledc_pins_b: ledc@1 { + pins = "PG0"; + function = "gpio_in"; + }; + + irrx_pins_default: irrx@0 { + pins = "PI8"; + function = "cir"; + }; + + irrx_pins_sleep: irrx@1 { + pins = "PI8"; + function = "gpio_in"; + }; + + irtx_pins_default: irtx@0 { + pins = "PH18"; + function = "cir"; + }; + + irtx_pins_sleep: irtx@1 { + pins = "PH18"; + function = "gpio_in"; + }; + + twi0_pins_default: twi0@0 { + pins = "PD22", "PD23"; + function = "twi0"; + drive-strength = <10>; + bias-pull-up; + }; + + twi0_pins_sleep: twi0@1 { + pins = "PD22", "PD23"; + function = "gpio_in"; + }; + + twi1_pins_default: twi1@0 { + pins = "PH2", "PH3"; + function = "twi1"; + drive-strength = <10>; + bias-pull-up; + }; + + twi1_pins_sleep: twi1@1 { + pins = "PH2", "PH3"; + function = "gpio_in"; + }; + + twi2_pins_default: twi2@0 { + pins = "PE1", "PE2"; + function = "twi2"; + drive-strength = <20>; + bias-pull-up; + }; + + twi2_pins_sleep: twi2@1 { + pins = "PE1", "PE2"; + function = "gpio_in"; + }; + + twi3_pins_default: twi3@0 { + pins = "PE3", "PE4"; + function = "twi3"; + drive-strength = <20>; + bias-pull-up; + }; + + twi3_pins_sleep: twi3@1 { + pins = "PE3", "PE4"; + function = "gpio_in"; + }; + + twi4_pins_default: twi4@0 { + pins = "PE13", "PE14"; + function = "twi4"; + drive-strength = <10>; + bias-pull-up; + }; + + twi4_pins_sleep: twi4@1 { + pins = "PE13", "PE14"; + function = "gpio_in"; + }; + + twi5_pins_default: twi5@0 { + pins = "PI8", "PI9"; + function = "twi5"; + drive-strength = <10>; + bias-pull-up; + }; + + twi5_pins_sleep: twi5@1 { + pins = "PI8", "PI9"; + function = "gpio_in"; + }; + + owa_pins_a: owa@0 { + pins = "PI10"; + function = "owa"; + drive-strength = <20>; + bias-disable; + }; + + owa_pins_b: owa@1 { + pins = "PI10"; + function = "io_disabled"; + drive-strength = <20>; + bias-disable; + }; + + i2s0_pins_a: i2s0@0 { + pins = "PB4", "PB5", "PB6"; + function = "i2s0"; + drive-strength = <20>; + bias-disable; + }; + + i2s0_pins_b: i2s0@1 { + pins = "PB4", "PB5", "PB6", "PB7", "PB8"; + function = "io_disabled"; + drive-strength = <20>; + bias-disable; + }; + + i2s0_pins_c: i2s0@2 { + pins = "PB7"; + function = "i2s0_dout"; + drive-strength = <20>; + bias-disable; + }; + + i2s0_pins_d: i2s0@3 { + pins = "PB8"; + function = "i2s0_din"; + drive-strength = <20>; + bias-disable; + }; + + i2s1_pins_a: i2s1@0 { + pins = "PG10", "PG11", "PG12"; + function = "i2s1"; + drive-strength = <20>; + bias-disable; + }; + + i2s1_pins_b: i2s1@1 { + pins = "PG10", "PG11", "PG12", "PG13", "PG14"; + function = "io_disabled"; + drive-strength = <20>; + bias-disable; + }; + + i2s1_pins_c: i2s1@2 { + pins = "PG13"; + function = "i2s1_dout"; + drive-strength = <20>; + bias-disable; + }; + + i2s1_pins_d: i2s1@3 { + pins = "PG14"; + function = "i2s1_din"; + drive-strength = <20>; + bias-disable; + }; + + i2s2_pins_a: i2s2@0 { + pins = "PH9", "PH10"; + function = "i2s2"; + drive-strength = <20>; + bias-disable; + }; + + i2s2_pins_b: i2s2@1 { + pins = "PH2", "PH3", "PH8", "PH9", "PH10", "PH11", "PH12"; + function = "io_disabled"; + drive-strength = <20>; + bias-disable; + }; + + i2s2_pins_c: i2s2@2 { + pins = "PH2", "PH3", "PH12"; + function = "i2s2_din"; + drive-strength = <20>; + bias-disable; + }; + + i2s2_pins_d: i2s2@3 { + pins = "PH11"; + function = "i2s2_dout"; + drive-strength = <20>; + bias-disable; + }; + + i2s2_pins_e: i2s2@4 { + pins = "PH8"; + function = "i2s2_mclk"; + drive-strength = <20>; + bias-disable; + }; + + i2s3_pins_a: i2s3@0 { + pins = "PF3", "PF5", "PF6"; + function = "i2s3"; + drive-strength = <20>; + bias-disable; + }; + + i2s3_pins_b: i2s3@1 { + pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5", "PF6"; + function = "io_disabled"; + drive-strength = <20>; + bias-disable; + }; + + i2s3_pins_c: i2s3@2 { + pins = "PF0", "PF2", "PF4"; + function = "i2s3_din"; + drive-strength = <20>; + bias-disable; + }; + + i2s3_pins_d: i2s3@3 { + pins = "PF1"; + function = "i2s3_dout"; + drive-strength = <20>; + bias-disable; + }; + + rgb24_pins_a: rgb24@0 { + pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", \ + "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", \ + "PD20", "PD21", "PD22","PD23","PD24","PD25","PD26","PD27"; + function = "dpss"; + drive-strength = <30>; + }; + + rgb24_pins_b: rgb24@1 { + pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", \ + "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", "PD18", "PD19", \ + "PD20", "PD21", "PD22", "PD23","PD24","PD25","PD26","PD27"; + function = "gpio_in"; + }; + + lvds0_pins_a: lvds0@0 { + pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9"; + function = "lvds0"; + drive-strength = <30>; + }; + + lvds0_pins_b: lvds0@1 { + pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9"; + function = "gpio_in"; + }; + + gmac0_pins_default: gmac0@0 { + pins = "PH0", "PH1", "PH2", "PH3", + "PH4", "PH5", "PH6", "PH7", + "PH9", "PH10","PH13","PH14", + "PH15","PH16","PH17","PH18"; + drive-strength = <40>; + function = "gmac0"; + bias-pull-up; + }; + + gmac0_pins_sleep: gmac0@1 { + pins = "PH0", "PH1", "PH2", "PH3", + "PH4", "PH5", "PH6", "PH7", + "PH9", "PH10","PH13","PH14", + "PH15","PH16","PH17","PH18"; + function = "gpio_in"; + }; + + gmac1_pins_default: gmac1@0 { + pins = "PJ0", "PJ1", "PJ2", "PJ3", + "PJ4", "PJ5", "PJ6", "PJ7", + "PJ8", "PJ9", "PJ10", "PJ11", + "PJ12","PJ13", "PJ14", "PJ15"; + drive-strength = <40>; + function = "gmac1"; + bias-pull-up; + }; + + gmac1_pins_sleep: gmac1@1 { + pins = "PJ0", "PJ1", "PJ2", "PJ3", + "PJ4", "PJ5", "PJ6", "PJ7", + "PJ8", "PJ9", "PJ10", "PJ11", + "PJ12","PJ13", "PJ14", "PJ15"; + function = "gpio_in"; + }; +}; + +&soc { + auto_print@54321 { + reg = <0x0 0x54321 0x0 0x0>; + device_type = "auto_print"; + status = "okay"; + }; + + car_reverse: car-reverse { + compatible = "allwinner,sunxi-car-reverse"; + + /* video source setting*/ + video_channel = <0>; + video_source = <0>; + format_type = <0>; + video_source_width = <1920>; + video_source_height = <1080>; + src_size_adaptive = <1>; + /* display setting */ + overview_type = <1>; + screen_width = <1280>; + screen_height = <800>; + screen_size_adaptive = <1>; + discard_frame = <0>; + di_used = <0>; + g2d_used = <1>; + rotation = <0>; + /* auxiliary line setting */ + auxiliary_line_type = <1>; + aux_angle = <0>; + aux_lr = <0>; + reverse_int_pin = <&pio PI 15 GPIO_ACTIVE_HIGH>; + status = "disabled"; + }; + + gpio_leds { + compatible = "allwinner,sunxi-gpio-leds"; + supply-num = <1>; + gpio1-supply = <®_bldo1>; + gpio-pins = <&pio PG 10 GPIO_ACTIVE_LOW>, <&pio PC 7 GPIO_ACTIVE_LOW>; + pin-names = "normal_led", "standby_led"; + init-status = , ; + status = "disabled"; + }; + + dsp0_rproc: dsp0_rproc@0 { + mboxes = <&msgbox 4>; + mbox-names = "arm-kick"; + memory-region = <&dsp0ddr_reserved>, <&dsp_vdev0buffer>, <&dsp_vdev0vring0>, <&dsp_vdev0vring1>, + <&mcu0iram_reserved>, <&mcu0dram0_reserved>, <&mcu0dram1_reserved>; + memory-mappings = + /* < DA len PA > */ + /* local SRAM via external bus */ + < 0x20000 0x20000 0x20000 >, + /* local SRAM via internal bus */ + < 0x400000 0x10000 0x20000 >, + < 0x420000 0x8000 0x30000 >, + < 0x440000 0x8000 0x38000 >, + /* DDR front 256MB */ + < 0x10000000 0x10000000 0x40000000 >, + /* local SRAM via internal bus */ + < 0x20020000 0x10000 0x400000 >, + < 0x20030000 0x8000 0x420000 >, + < 0x20038000 0x8000 0x440000 >, + + /* DDR front 256MB */ + < 0x30000000 0x10000000 0x40000000 >, + /* DDR front 1GB */ + < 0x40000000 0x40000000 0x40000000 >, + /* DDR front 1GB */ + < 0x80000000 0x40000000 0x40000000 >, + /* DDR front 1GB */ + < 0xC0000000 0x40000000 0x40000000 >; + status = "okay"; + }; + + e906_rproc: e906_rproc@7130000 { + mboxes = <&msgbox 8>; + mbox-names = "arm-kick"; + memory-region = <&riscvsram0_reserved>, <&riscvsram1_reserved>, <&rv_vdev0buffer>, <&rv_vdev0vring0>, <&rv_vdev0vring1>; + memory-mappings = + /* < DA len PA > */ + /* DSP RAM */ + < 0x20000 0x20000 0x20000 >, + /* SRAM A2 */ + < 0x40000 0x24000 0x40000 >, + /* DDR */ + < 0x8000000 0x37f00000 0x8000000 >, + /* SRAM SPACE 0 */ + < 0x3ffc0000 0x40000 0x07280000 >, + /* SRAM SPACE 1 */ + < 0x40000000 0x40000 0x072c0000 >, + /* DRAM SPACE */ + < 0x40040000 0x3ffc0000 0x40040000>; + status = "okay"; + }; + +}; + +&uart0 { + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&uart0_pins_a>; + pinctrl-1 = <&uart0_pins_b>; + uart-supply = <®_cldo3>; + status = "okay"; +}; + +&uart1 { + status = "okay"; +}; + +&uart2 { + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&uart2_pins_a>; + pinctrl-1 = <&uart2_pins_b>; + status = "disabled"; +}; + +&uart3 { + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&uart3_pins_a>; + pinctrl-1 = <&uart3_pins_b>; + status = "disabled"; +}; + +&uart4 { + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&uart4_pins_a>; + pinctrl-1 = <&uart4_pins_b>; + status = "disabled"; +}; + +&uart5 { + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&uart5_pins_a>; + pinctrl-1 = <&uart5_pins_b>; + status = "disabled"; +}; + +&uart6 { + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&uart6_pins_a>; + pinctrl-1 = <&uart6_pins_b>; + status = "okay"; +}; + +&uart7 { + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&uart7_pins_a>; + pinctrl-1 = <&uart7_pins_b>; + status = "disabled"; +}; + +&uart8 { + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&uart8_pins_a>; + pinctrl-1 = <&uart8_pins_b>; + status = "disabled"; +}; + +&uart9 { + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&uart9_pins_a>; + pinctrl-1 = <&uart9_pins_b>; + status = "disabled"; +}; + +&lradc { + key_cnt = <5>; + key0 = <210 0x73>; + key1 = <410 0x72>; + key2 = <590 0x8B>; + key3 = <750 0x1c>; + key4 = <880 0x66>; + key_debounce; + debounce_value = <50>; + status = "okay"; +}; + +&irrx { + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&irrx_pins_default>; + pinctrl-1 = <&irrx_pins_sleep>; + status = "disabled"; +}; + +&s_irrx { + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&s_irrx_pins_default>; + pinctrl-1 = <&s_irrx_pins_sleep>; + status = "okay"; +}; + +&irtx { + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&irtx_pins_default>; + pinctrl-1 = <&irtx_pins_sleep>; + status = "disabled"; +}; + +&gpadc0 { + channel_num = <2>; + channel_select = <3>; + channel_data_select = <3>; + channel_compare_select = <3>; + channel_cld_select = <3>; + channel_chd_select = <3>; + channel0_compare_lowdata = <1700000>; + channel0_compare_higdata = <1200000>; + channel1_compare_lowdata = <460000>; + channel1_compare_higdata = <1200000>; + status = "disabled"; +}; + +&gpadc1 { + channel_num = <2>; + channel_select = <3>; + channel_data_select = <3>; + channel_compare_select = <3>; + channel_cld_select = <3>; + channel_chd_select = <3>; + channel0_compare_lowdata = <1700000>; + channel0_compare_higdata = <1200000>; + channel1_compare_lowdata = <460000>; + channel1_compare_higdata = <1200000>; + status = "disabled"; +}; + +&pwm0_0 { + pinctrl-names = "active", "sleep"; + pinctrl-0 = <&pwm0_0_pin_active>; + pinctrl-1 = <&pwm0_0_pin_sleep>; + status = "okay"; +}; + +&pwm0_1 { + pinctrl-names = "active", "sleep"; + pinctrl-0 = <&pwm0_1_pin_active>; + pinctrl-1 = <&pwm0_1_pin_sleep>; + status = "disabled"; +}; + +&pwm0_2 { + pinctrl-names = "active", "sleep"; + pinctrl-0 = <&pwm0_2_pin_active>; + pinctrl-1 = <&pwm0_2_pin_sleep>; + status = "disabled"; +}; + +&pwm0_3 { + pinctrl-names = "active", "sleep"; + pinctrl-0 = <&pwm0_3_pin_active>; + pinctrl-1 = <&pwm0_3_pin_sleep>; + status = "disabled"; +}; + +&pwm0_4 { + pinctrl-names = "active", "sleep"; + pinctrl-0 = <&pwm0_4_pin_active>; + pinctrl-1 = <&pwm0_4_pin_sleep>; + status = "okay"; +}; + +&pwm0_5 { + pinctrl-names = "active", "sleep"; + pinctrl-0 = <&pwm0_5_pin_active>; + pinctrl-1 = <&pwm0_5_pin_sleep>; + status = "okay"; +}; + +&ledc { + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&ledc_pins_a>; + pinctrl-1 = <&ledc_pins_b>; + led_count = <4>; + output_mode = "GRB"; + reset_ns = <84>; + t1h_ns = <800>; + t1l_ns = <320>; + t0h_ns = <300>; + t0l_ns = <800>; + wait_time0_ns = <84>; + wait_time1_ns = <84>; + wait_data_time_ns = <600000>; + status = "disabled"; +}; + +&twi0 { + clock-frequency = <400000>; + pinctrl-0 = <&twi0_pins_default>; + pinctrl-1 = <&twi0_pins_sleep>; + pinctrl-names = "default", "sleep"; + /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ + twi_drv_used = <1>; + twi-supply = <®_dcdc4>; + status = "disabled"; +}; + +&twi1 { + clock-frequency = <400000>; + pinctrl-0 = <&twi1_pins_default>; + pinctrl-1 = <&twi1_pins_sleep>; + pinctrl-names = "default", "sleep"; + /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ + twi_drv_used = <1>; + status = "disabled"; +}; + +&twi2 { + clock-frequency = <400000>; + pinctrl-0 = <&twi2_pins_default>; + pinctrl-1 = <&twi2_pins_sleep>; + pinctrl-names = "default", "sleep"; + /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ + twi_drv_used = <1>; + twi-supply = <®_dcdc4>; + status = "okay"; +}; + +&twi3 { + clock-frequency = <400000>; + pinctrl-0 = <&twi3_pins_default>; + pinctrl-1 = <&twi3_pins_sleep>; + pinctrl-names = "default", "sleep"; + /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ + twi_drv_used = <1>; + twi-supply = <®_dcdc4>; + status = "okay"; +}; + +&twi4 { + clock-frequency = <400000>; + pinctrl-0 = <&twi4_pins_default>; + pinctrl-1 = <&twi4_pins_sleep>; + pinctrl-names = "default", "sleep"; + /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ + twi_drv_used = <1>; + twi-supply = <®_dcdc4>; + status = "okay"; +}; + +&twi5 { + clock-frequency = <400000>; + pinctrl-0 = <&twi5_pins_default>; + pinctrl-1 = <&twi5_pins_sleep>; + pinctrl-names = "default", "sleep"; + /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ + twi_drv_used = <1>; + twi-supply = <®_dcdc4>; + status = "disabled"; +}; + +&csi_mclk3_pins_a { + pins = "PK13"; + function = "ncsi"; +}; + +&csi_mclk3_pins_b { + pins = "PK13"; +}; + +&mipib_4lane_pins_a { + pins = "PK6", "PK7", "PK8", "PK9"; +}; + +&mipib_4lane_pins_b { + pins = "PK6", "PK7", "PK8", "PK9"; +}; + +&vind0 { + csi_top = <360000000>; + csi_isp = <300000000>; + vind_mclkpin-supply = <®_bldo3>; /* vcc-pe */ + vind_mclkpin_vol = <1800000>; + vind_mcsipin-supply = <®_bldo3>; /* vcc-pk */ + vind_mcsipin_vol = <1800000>; + vind_mipipin-supply = <®_bldo3>; /* vcc-mcsi */ + vind_mipipin_vol = <1800000>; + status = "okay"; + + csi3:csi@5823000 { + pinctrl-names = "default","sleep"; + pinctrl-0 = <&ncsi_bt1120_pins_a>; + pinctrl-1 = <&ncsi_bt1120_pins_b>; + status = "okay"; + }; + + tdm0:tdm@5908000 { + work_mode = <0>; + }; + + isp00:isp@5900000 { + work_mode = <0>; + }; + + isp01:isp@58ffffc { + status = "disabled"; + }; + + isp02:isp@58ffff8 { + status = "disabled"; + }; + + isp03:isp@58ffff4 { + status = "disabled"; + }; + + isp10:isp@4 { + status = "okay"; + }; + + isp20:isp@5 { + status = "okay"; + }; + + scaler00:scaler@5910000 { + work_mode = <0>; + }; + + scaler01:scaler@590fffc { + status = "disabled"; + }; + + scaler02:scaler@590fff8 { + status = "disabled"; + }; + + scaler03:scaler@590fff4 { + status = "disabled"; + }; + + scaler10:scaler@5910400 { + work_mode = <0>; + }; + + scaler11:scaler@59103fc { + status = "disabled"; + }; + + scaler12:scaler@59103f8 { + status = "disabled"; + }; + + scaler13:scaler@59103f4 { + status = "disabled"; + }; + + scaler20:scaler@5910800 { + work_mode = <0>; + }; + + scaler21:scaler@59107fc { + status = "disabled"; + }; + + scaler22:scaler@59107f8 { + status = "disabled"; + }; + + scaler23:scaler@59107f4 { + status = "disabled"; + }; + + scaler30:scaler@5910c00 { + work_mode = <0>; + }; + + scaler31:scaler@5910bfc { + status = "disabled"; + }; + + scaler32:scaler@5910bf8 { + status = "disabled"; + }; + + scaler33:scaler@5910bf4 { + status = "disabled"; + }; + scaler40:scaler@16 { + status = "okay"; + }; + scaler50:scaler@17 { + status = "okay"; + }; + + actuator0: actuator@2108180 { + device_type = "actuator0"; + actuator0_name = "dw9714_act"; + actuator0_slave = <0x18>; + actuator0_af_pwdn = <>; + actuator0_afvdd = "afvcc-csi"; + actuator0_afvdd_vol = <2800000>; + status = "disabled"; + }; + + flash0: flash@2108190 { + device_type = "flash0"; + flash0_type = <2>; + flash0_en = <&r_pio PL 11 GPIO_ACTIVE_LOW>; + flash0_mode = <>; + flash0_flvdd = ""; + flash0_flvdd_vol = <>; + device_id = <0>; + status = "disabled"; + }; + + sensor0:sensor@5812000 { + device_type = "sensor0"; + sensor0_mname = "tp2815_mipi"; + sensor0_twi_cci_id = <2>; + sensor0_twi_addr = <0x88>; + sensor0_mclk_id = <0>; + sensor0_pos = "rear"; + sensor0_isp_used = <0>; + sensor0_fmt = <0>; + sensor0_stby_mode = <0>; + sensor0_vflip = <0>; + sensor0_hflip = <0>; + sensor0_cameravdd-supply = <>; + sensor0_cameravdd_vol = <>; + sensor0_iovdd-supply = <>; + sensor0_iovdd_vol = <>; + sensor0_avdd-supply = <>; + sensor0_avdd_vol = <>; + sensor0_dvdd-supply = <>; + sensor0_dvdd_vol = <>; + sensor0_power_en = <>; + sensor0_reset = <&pio PK 11 GPIO_ACTIVE_LOW>; + sensor0_pwdn = <>; + status = "okay"; + }; + + sensor1:sensor@5812010 { + device_type = "sensor1"; + sensor1_mname = "nvp6158"; + sensor1_twi_cci_id = <3>; + sensor1_twi_addr = <0x64>; + sensor1_mclk_id = <3>; + sensor1_pos = "front"; + sensor1_isp_used = <0>; + sensor1_fmt = <0>; + sensor1_stby_mode = <0>; + sensor1_vflip = <0>; + sensor1_hflip = <0>; + sensor1_iovdd-supply = <>; + sensor1_iovdd_vol = <>; + sensor1_avdd-supply = <>; + sensor1_avdd_vol = <>; + sensor1_dvdd-supply = <>; + sensor1_dvdd_vol = <>; + sensor1_power_en = <>; + sensor1_reset = <&pio PK 10 GPIO_ACTIVE_LOW>; + sensor1_pwdn = <>; + status = "okay"; + }; + + vinc00:vinc@5830000 { + vinc0_csi_sel = <0>; + vinc0_mipi_sel = <0>; + vinc0_isp_sel = <4>; + vinc0_isp_tx_ch = <0>; + vinc0_tdm_rx_sel = <0>; + vinc0_rear_sensor_sel = <0>; + vinc0_front_sensor_sel = <0>; + vinc0_sensor_list = <0>; + device_id = <0>; + work_mode = <0x0>; + status = "okay"; + }; + + vinc01:vinc@582fffc { + vinc1_csi_sel = <1>; + vinc1_mipi_sel = <2>; + vinc1_isp_sel = <1>; + vinc1_isp_tx_ch = <0>; + vinc1_tdm_rx_sel = <1>; + vinc1_rear_sensor_sel = <1>; + vinc1_front_sensor_sel = <1>; + vinc1_sensor_list = <0>; + device_id = <1>; + status = "disabled"; + }; + + vinc02:vinc@582fff8 { + vinc2_csi_sel = <2>; + vinc2_mipi_sel = <0xff>; + vinc2_isp_sel = <2>; + vinc2_isp_tx_ch = <2>; + vinc2_tdm_rx_sel = <2>; + vinc2_rear_sensor_sel = <0>; + vinc2_front_sensor_sel = <0>; + vinc2_sensor_list = <0>; + device_id = <2>; + status = "disabled"; + }; + + vinc03:vinc@582fff4 { + vinc3_csi_sel = <0>; + vinc3_mipi_sel = <0xff>; + vinc3_isp_sel = <0>; + vinc3_isp_tx_ch = <0>; + vinc3_tdm_rx_sel = <0>; + vinc3_rear_sensor_sel = <1>; + vinc3_front_sensor_sel = <1>; + vinc3_sensor_list = <0>; + device_id = <3>; + status = "disabled"; + }; + + vinc10:vinc@5831000 { + vinc4_csi_sel = <0>; + vinc4_mipi_sel = <0>; + vinc4_isp_sel = <4>; + vinc4_isp_tx_ch = <1>; + vinc4_tdm_rx_sel = <0>; + vinc4_rear_sensor_sel = <0>; + vinc4_front_sensor_sel = <0>; + vinc4_sensor_list = <0>; + device_id = <4>; + work_mode = <0x0>; + status = "okay"; + }; + + vinc11:vinc@5830ffc { + vinc5_csi_sel = <2>; + vinc5_mipi_sel = <0xff>; + vinc5_isp_sel = <1>; + vinc5_isp_tx_ch = <1>; + vinc5_tdm_rx_sel = <1>; + vinc5_rear_sensor_sel = <0>; + vinc5_front_sensor_sel = <0>; + vinc5_sensor_list = <0>; + device_id = <5>; + status = "disabled"; + }; + + vinc12:vinc@5830ff8 { + vinc6_csi_sel = <2>; + vinc6_mipi_sel = <0xff>; + vinc6_isp_sel = <0>; + vinc6_isp_tx_ch = <0>; + vinc6_tdm_rx_sel = <0>; + vinc6_rear_sensor_sel = <0>; + vinc6_front_sensor_sel = <0>; + vinc6_sensor_list = <0>; + device_id = <6>; + status = "disabled"; + }; + + vinc13:vinc@5830ff4 { + vinc7_csi_sel = <2>; + vinc7_mipi_sel = <0xff>; + vinc7_isp_sel = <0>; + vinc7_isp_tx_ch = <0>; + vinc7_tdm_rx_sel = <0>; + vinc7_rear_sensor_sel = <0>; + vinc7_front_sensor_sel = <0>; + vinc7_sensor_list = <0>; + device_id = <7>; + status = "disabled"; + }; + + vinc20:vinc@5832000 { + vinc8_csi_sel = <0>; + vinc8_mipi_sel = <0>; + vinc8_isp_sel = <4>; + vinc8_isp_tx_ch = <2>; + vinc8_tdm_rx_sel = <0>; + vinc8_rear_sensor_sel = <0>; + vinc8_front_sensor_sel = <0>; + vinc8_sensor_list = <0>; + device_id = <8>; + work_mode = <0x0>; + status = "okay"; + }; + + vinc21:vinc@5831ffc { + vinc9_csi_sel = <2>; + vinc9_mipi_sel = <0xff>; + vinc9_isp_sel = <0>; + vinc9_isp_tx_ch = <0>; + vinc9_tdm_rx_sel = <0>; + vinc9_rear_sensor_sel = <0>; + vinc9_front_sensor_sel = <0>; + vinc9_sensor_list = <0>; + device_id = <9>; + status = "disabled"; + }; + + vinc22:vinc@5831ff8 { + vinc10_csi_sel = <2>; + vinc10_mipi_sel = <0xff>; + vinc10_isp_sel = <0>; + vinc10_isp_tx_ch = <0>; + vinc10_tdm_rx_sel = <0>; + vinc10_rear_sensor_sel = <0>; + vinc10_front_sensor_sel = <0>; + vinc10_sensor_list = <0>; + device_id = <10>; + status = "disabled"; + }; + + vinc23:vinc@5831ff4 { + vinc11_csi_sel = <2>; + vinc11_mipi_sel = <0xff>; + vinc11_isp_sel = <0>; + vinc11_isp_tx_ch = <0>; + vinc11_tdm_rx_sel = <0>; + vinc11_rear_sensor_sel = <0>; + vinc11_front_sensor_sel = <0>; + vinc11_sensor_list = <0>; + device_id = <11>; + status = "disabled"; + }; + + vinc30:vinc@5833000 { + vinc12_csi_sel = <0>; + vinc12_mipi_sel = <0>; + vinc12_isp_sel = <4>; + vinc12_isp_tx_ch = <3>; + vinc12_tdm_rx_sel = <0>; + vinc12_rear_sensor_sel = <0>; + vinc12_front_sensor_sel = <0>; + vinc12_sensor_list = <0>; + device_id = <12>; + work_mode = <0x0>; + status = "okay"; + }; + + vinc31:vinc@5832ffc { + vinc13_csi_sel = <2>; + vinc13_mipi_sel = <0xff>; + vinc13_isp_sel = <0>; + vinc13_isp_tx_ch = <0>; + vinc13_tdm_rx_sel = <0>; + vinc13_rear_sensor_sel = <0>; + vinc13_front_sensor_sel = <0>; + vinc13_sensor_list = <0>; + device_id = <13>; + status = "disabled"; + }; + + vinc32:vinc@5832ff8 { + vinc14_csi_sel = <2>; + vinc14_mipi_sel = <0xff>; + vinc14_isp_sel = <0>; + vinc14_isp_tx_ch = <0>; + vinc14_tdm_rx_sel = <0>; + vinc14_rear_sensor_sel = <0>; + vinc14_front_sensor_sel = <0>; + vinc14_sensor_list = <0>; + device_id = <14>; + status = "disabled"; + }; + + vinc33:vinc@5832ff4 { + vinc15_csi_sel = <2>; + vinc15_mipi_sel = <0xff>; + vinc15_isp_sel = <0>; + vinc15_isp_tx_ch = <0>; + vinc15_tdm_rx_sel = <0>; + vinc15_rear_sensor_sel = <0>; + vinc15_front_sensor_sel = <0>; + vinc15_sensor_list = <0>; + device_id = <15>; + status = "disabled"; + }; + + vinc40:vinc@5834000 { + vinc16_csi_sel = <3>; + vinc16_mipi_sel = <0xff>; + vinc16_isp_sel = <5>; + vinc16_isp_tx_ch = <0>; + vinc16_tdm_rx_sel = <0>; + vinc16_rear_sensor_sel = <1>; + vinc16_front_sensor_sel = <1>; + vinc16_sensor_list = <0>; + device_id = <16>; + status = "okay"; + }; + + vinc50:vinc@5835000 { + vinc17_csi_sel = <3>; + vinc17_mipi_sel = <0xff>; + vinc17_isp_sel = <5>; + vinc17_isp_tx_ch = <1>; + vinc17_tdm_rx_sel = <0>; + vinc17_rear_sensor_sel = <1>; + vinc17_front_sensor_sel = <1>; + vinc17_sensor_list = <0>; + device_id = <17>; + status = "okay"; + }; +}; + +&twi6 { + clock-frequency = <400000>; + pinctrl-0 = <&s_twi0_pins_default>; + pinctrl-1 = <&s_twi0_pins_sleep>; + pinctrl-names = "default", "sleep"; + device_type = "twi6"; + /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ + twi_drv_used = <1>; + no_suspend = <1>; + status = "okay"; + + axp1530: axp1530@36{ + compatible = "ext,axp1530"; + status = "okay"; + reg = <0x36>; + + wakeup-source; + + regulators{ + reg_ext_axp1530_dcdc1: dcdc1 { + regulator-name = "axp1530-dcdc1"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <3400000>; + regulator-step-delay-us = <25>; + regulator-final-delay-us = <50>; + regulator-always-on; + }; + + reg_ext_axp1530_dcdc2: dcdc2 { + regulator-name = "axp1530-dcdc2"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1540000>; + regulator-step-delay-us = <25>; + regulator-final-delay-us = <50>; + regulator-ramp-delay = <200>; /* FIXME */ + regulator-always-on; + }; + + reg_ext_axp1530_dcdc3: dcdc3 { + regulator-name = "axp1530-dcdc3"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1840000>; + regulator-step-delay-us = <25>; + regulator-final-delay-us = <50>; + regulator-always-on; + }; + + reg_ext_axp1530_aldo1: ldo1 { + regulator-name = "axp1530-aldo1"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <3500000>; + regulator-step-delay-us = <25>; + regulator-final-delay-us = <50>; + }; + + reg_ext_axp1530_dldo1: ldo2 { + regulator-name = "axp1530-dldo1"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <3500000>; + regulator-step-delay-us = <25>; + regulator-final-delay-us = <50>; + }; + }; + virtual-ext-dcdc1 { + compatible = "xpower-vregulator,ext-dcdc1"; + dcdc1-supply = <®_ext_axp1530_dcdc1>; + }; + virtual-ext-dcdc2 { + compatible = "xpower-vregulator,ext-dcdc2"; + dcdc2-supply = <®_ext_axp1530_dcdc2>; + }; + virtual-ext-dcdc3 { + compatible = "xpower-vregulator,ext-dcdc3"; + dcdc3-supply = <®_ext_axp1530_dcdc3>; + }; + virtual-ext-aldo1 { + compatible = "xpower-vregulator,ext-aldo1"; + aldo1-supply = <®_ext_axp1530_aldo1>; + }; + virtual-ext-dldo1 { + compatible = "xpower-vregulator,ext-dldo1"; + dldo1-supply = <®_ext_axp1530_dldo1>; + }; + + }; + + pmu0: pmu@34 { + compatible = "x-powers,axp2202"; + reg = <0x34>; + status = "okay"; + interrupts = <0 IRQ_TYPE_LEVEL_LOW>; + interrupt-parent = <&nmi_intc>; + x-powers,drive-vbus-en; + pmu_reset = <0>; + pmu_irq_wakeup = <1>; + pmu_hot_shutdown = <1>; + pmu_over_current = <1>; + pmu_hot_shutdown_value = <125>; + wakeup-source; + + usb_power_supply: usb_power_supply { + compatible = "x-powers,axp2202-usb-power-supply"; + status = "okay"; + + pmu_usbpc_vol = <4600>; + pmu_usbpc_cur = <500>; + pmu_usbad_vol = <4000>; + pmu_usbad_cur = <2500>; + pmu_usb_typec_used = <1>; + wakeup_usb_in; + wakeup_usb_out; + wakeup_typec_in; + wakeup_typec_out; + + det_acin_supply = <&gpio_power_supply>; + pmu_acin_usbid_drv = <&pio PH 12 GPIO_ACTIVE_LOW>; + pmu_vbus_det_gpio = <&pio PH 13 GPIO_ACTIVE_LOW>; + }; + + gpio_power_supply: gpio_power_supply { + compatible = "x-powers,gpio-supply"; + status = "disabled"; + pmu_acin_det_gpio = <&pio PH 14 GPIO_ACTIVE_LOW>; + det_usb_supply = <&usb_power_supply>; + }; + + bat_power_supply: bat-power-supply { + compatible = "x-powers,axp2202-bat-power-supply"; + param = <&axp2202_parameter>; + status = "disabled"; + + pmu_chg_ic_temp = <0>; + + pmu_battery_rdc= <147>; + pmu_battery_cap = <1771>; + pmu_runtime_chgcur = <1000>; + pmu_suspend_chgcur = <1500>; + pmu_shutdown_chgcur = <1500>; + pmu_init_chgvol = <4200>; + pmu_battery_warning_level1 = <15>; + pmu_battery_warning_level2 = <0>; + pmu_chgled_func = <0>; + pmu_chgled_type = <0>; + pmu_bat_para1 = <0>; + pmu_bat_para2 = <0>; + pmu_bat_para3 = <0>; + pmu_bat_para4 = <0>; + pmu_bat_para5 = <0>; + pmu_bat_para6 = <0>; + pmu_bat_para7 = <2>; + pmu_bat_para8 = <3>; + pmu_bat_para9 = <4>; + pmu_bat_para10 = <6>; + pmu_bat_para11 = <9>; + pmu_bat_para12 = <14>; + pmu_bat_para13 = <26>; + pmu_bat_para14 = <38>; + pmu_bat_para15 = <49>; + pmu_bat_para16 = <52>; + pmu_bat_para17 = <56>; + pmu_bat_para18 = <60>; + pmu_bat_para19 = <64>; + pmu_bat_para20 = <70>; + pmu_bat_para21 = <77>; + pmu_bat_para22 = <83>; + pmu_bat_para23 = <87>; + pmu_bat_para24 = <90>; + pmu_bat_para25 = <95>; + pmu_bat_para26 = <99>; + pmu_bat_para27 = <99>; + pmu_bat_para28 = <100>; + pmu_bat_para29 = <100>; + pmu_bat_para30 = <100>; + pmu_bat_para31 = <100>; + pmu_bat_para32 = <100>; + + pmu_bat_temp_enable = <1>; + pmu_jetia_en = <1>; + pmu_bat_charge_ltf = <1738>; //-5 + pmu_bat_charge_htf = <150>; //60 + pmu_bat_shutdown_ltf = <2125>; //-10 + pmu_bat_shutdown_htf = <130>; //65 + pmu_jetia_cool = <1390>; //0 + pmu_jetia_warm = <206>; //50 + pmu_jcool_ifall = <2>;//75% + pmu_jwarm_ifall = <2>;//75% + pmu_bat_temp_para1 = <4592>; //SDNT-25 + pmu_bat_temp_para2 = <2781>; //-15 + pmu_bat_temp_para3 = <2125>; //-10 + pmu_bat_temp_para4 = <1738>; //-5 + pmu_bat_temp_para5 = <1390>;//0 + pmu_bat_temp_para6 = <1118>; //5 + pmu_bat_temp_para7 = <906>; //10 + pmu_bat_temp_para8 = <606>; //20 + pmu_bat_temp_para9 = <415>; //30 + pmu_bat_temp_para10 = <290>; //40 + pmu_bat_temp_para11 = <244>; //45 + pmu_bat_temp_para12 = <206>; //50 + pmu_bat_temp_para13 = <175>; //55 + pmu_bat_temp_para14 = <150>; //60 + pmu_bat_temp_para15 = <110>; //70 + pmu_bat_temp_para16 = <83>; //80 + + wakeup_bat_out; + /* wakeup_bat_in; */ + /* wakeup_bat_charging; */ + /* wakeup_bat_charge_over; */ + /* wakeup_low_warning1; */ + /* wakeup_low_warning2; */ + /* wakeup_bat_untemp_work; */ + /* wakeup_bat_ovtemp_work; */ + /* wakeup_bat_untemp_chg; */ + /* wakeup_bat_ovtemp_chg; */ + }; + + powerkey0: powerkey@0 { + status = "okay"; + compatible = "x-powers,axp2101-pek"; + pmu_powkey_off_time = <6000>; + pmu_powkey_off_func = <0>; + pmu_powkey_off_en = <1>; + pmu_powkey_long_time = <1500>; + pmu_powkey_on_time = <512>; + wakeup_rising; + wakeup_falling; + }; + + regulator0: regulators@0 { + reg_dcdc1: dcdc1 { + regulator-name = "axp2202-dcdc1"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1540000>; + regulator-ramp-delay = <250>; + regulator-enable-ramp-delay = <1000>; + regulator-boot-on; + regulator-always-on; + }; + reg_dcdc2: dcdc2 { + regulator-name = "axp2202-dcdc2"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <3400000>; + regulator-ramp-delay = <250>; + regulator-enable-ramp-delay = <1000>; + regulator-boot-on; + regulator-always-on; + }; + reg_dcdc3: dcdc3 { + regulator-name = "axp2202-dcdc3"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1840000>; + regulator-ramp-delay = <250>; + regulator-enable-ramp-delay = <1000>; + regulator-always-on; + }; + reg_dcdc4: dcdc4 { + regulator-name = "axp2202-dcdc4"; + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <3700000>; + regulator-ramp-delay = <250>; + regulator-enable-ramp-delay = <1000>; + }; + reg_rtcldo: rtcldo { + /* RTC_LDO is a fixed, always-on regulator */ + regulator-name = "axp2202-rtcldo"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-boot-on; + regulator-always-on; + }; + reg_aldo1: aldo1 { + regulator-name = "axp2202-aldo1"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <3500000>; + regulator-enable-ramp-delay = <1000>; + }; + reg_aldo2: aldo2 { + regulator-name = "axp2202-aldo2"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <3500000>; + regulator-enable-ramp-delay = <1000>; + }; + reg_aldo3: aldo3 { + regulator-name = "axp2202-aldo3"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <3500000>; + regulator-enable-ramp-delay = <1000>; + regulator-always-on; + regulator-boot-on; + }; + reg_aldo4: aldo4 { + regulator-name = "axp2202-aldo4"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <3500000>; + regulator-enable-ramp-delay = <1000>; + regulator-always-on; + regulator-boot-on; + }; + reg_bldo1: bldo1 { + regulator-name = "axp2202-bldo1"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <3500000>; + regulator-enable-ramp-delay = <1000>; + regulator-always-on; + regulator-boot-on; + }; + reg_bldo2: bldo2 { + regulator-name = "axp2202-bldo2"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <3500000>; + regulator-enable-ramp-delay = <1000>; + regulator-boot-on; + regulator-always-on; + }; + reg_bldo3: bldo3 { + regulator-name = "axp2202-bldo3"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <3500000>; + regulator-enable-ramp-delay = <1000>; + }; + reg_bldo4: bldo4 { + regulator-name = "axp2202-bldo4"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-enable-ramp-delay = <1000>; + }; + reg_cldo1: cldo1 { + regulator-name = "axp2202-cldo1"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <3500000>; + regulator-enable-ramp-delay = <1000>; + }; + reg_cldo2: cldo2 { + regulator-name = "axp2202-cldo2"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <3500000>; + regulator-enable-ramp-delay = <1000>; + }; + reg_cldo3: cldo3 { + regulator-name = "axp2202-cldo3"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <3500000>; + regulator-ramp-delay = <2500>; + regulator-enable-ramp-delay = <1000>; + regulator-boot-on; + regulator-always-on; + }; + reg_cldo4: cldo4 { + regulator-name = "axp2202-cldo4"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <3500000>; + regulator-enable-ramp-delay = <1000>; + regulator-boot-on; + regulator-always-on; + }; + reg_cpusldo: cpusldo { + /* cpus */ + regulator-name = "axp2202-cpusldo"; + regulator-min-microvolt = <500000>; + regulator-max-microvolt = <1400000>; + regulator-boot-on; + regulator-always-on; + }; + reg_vmid: vmid { + regulator-name = "axp2202-vmid"; + regulator-enable-ramp-delay = <1000>; + }; + reg_drivevbus: drivevbus { + regulator-name = "axp2202-drivevbus"; + regulator-enable-ramp-delay = <1000>; + drivevbusin-supply = <®_vmid>; + }; + }; + + virtual-dcdc1 { + compatible = "xpower-vregulator,dcdc1"; + dcdc1-supply = <®_dcdc1>; + }; + virtual-dcdc2 { + compatible = "xpower-vregulator,dcdc2"; + dcdc2-supply = <®_dcdc2>; + }; + virtual-dcdc3 { + compatible = "xpower-vregulator,dcdc3"; + dcdc3-supply = <®_dcdc3>; + }; + virtual-dcdc4 { + compatible = "xpower-vregulator,dcdc4"; + dcdc4-supply = <®_dcdc4>; + }; + virtual-rtcldo { + compatible = "xpower-vregulator,rtcldo"; + rtcldo-supply = <®_rtcldo>; + }; + virtual-aldo1 { + compatible = "xpower-vregulator,aldo1"; + aldo1-supply = <®_aldo1>; + }; + virtual-aldo2 { + compatible = "xpower-vregulator,aldo2"; + aldo2-supply = <®_aldo2>; + }; + virtual-aldo3 { + compatible = "xpower-vregulator,aldo3"; + aldo3-supply = <®_aldo3>; + }; + virtual-aldo4 { + compatible = "xpower-vregulator,aldo4"; + aldo4-supply = <®_aldo4>; + }; + virtual-bldo1 { + compatible = "xpower-vregulator,bldo1"; + bldo1-supply = <®_bldo1>; + }; + virtual-bldo2 { + compatible = "xpower-vregulator,bldo2"; + bldo2-supply = <®_bldo2>; + }; + virtual-bldo3 { + compatible = "xpower-vregulator,bldo3"; + bldo3-supply = <®_bldo3>; + }; + virtual-bldo4 { + compatible = "xpower-vregulator,bldo4"; + bldo4-supply = <®_bldo4>; + }; + virtual-cldo1 { + compatible = "xpower-vregulator,cldo1"; + cldo1-supply = <®_cldo1>; + }; + virtual-cldo2 { + compatible = "xpower-vregulator,cldo2"; + cldo2-supply = <®_cldo2>; + }; + virtual-cldo3 { + compatible = "xpower-vregulator,cldo3"; + cldo3-supply = <®_cldo3>; + }; + virtual-cldo4 { + compatible = "xpower-vregulator,cldo4"; + cldo4-supply = <®_cldo4>; + }; + virtual-cpusldo { + compatible = "xpower-vregulator,cpusldo"; + cpusldo-supply = <®_cpusldo>; + }; + virtual-drivevbus { + compatible = "xpower-vregulator,drivevbus"; + drivevbus-supply = <®_drivevbus>; + }; + axp_gpio0: axp_gpio@0 { + gpio-controller; + #size-cells = <0>; + #gpio-cells = <6>; + status = "okay"; + }; + }; +}; + +/{ + axp2202_parameter:axp2202-parameter { + select = "battery-model"; + + battery-model { + parameter = /bits/ 8 <0x01 0xf5 0x40 0x00 0x1b 0x1e 0x28 0x0f + 0x0c 0x1e 0x32 0x02 0x14 0x05 0x0a 0x04 + 0x74 0xfb 0xc8 0x0d 0x43 0x10 0x36 0xfb + 0x46 0x01 0xea 0x0d 0x2a 0x06 0x36 0x05 + 0xf4 0x0a 0xb5 0x0f 0x42 0x0e 0xe6 0x09 + 0x9a 0x0e 0x42 0x0e 0x3b 0x04 0x2d 0x04 + 0x23 0x09 0x18 0x0e 0x09 0x0e 0x04 0x08 + 0xf7 0x0d 0xda 0x0d 0xd0 0x03 0xbb 0x03 + 0x9d 0x08 0x7f 0x0d 0x6a 0x0d 0x55 0x07 + 0xc2 0x57 0x2b 0x27 0x1e 0x0d 0x14 0x08 + 0xc5 0x98 0x7e 0x66 0x4e 0x44 0x38 0x1a + 0x12 0x0a 0xf6 0x00 0x00 0xf6 0x00 0xf6 + 0x00 0xfb 0x00 0x00 0xfb 0x00 0x00 0xfb + 0x00 0x00 0xf6 0x00 0x00 0xf6 0x00 0xf6 + 0x00 0xfb 0x00 0x00 0xfb 0x00 0x00 0xfb + 0x00 0x00 0xf6 0x00 0x00 0xf6 0x00 0xf6>; + }; + }; +}; + +&twi7 { + clock-frequency = <400000>; + pinctrl-0 = <&s_twi1_pins_default>; + pinctrl-1 = <&s_twi1_pins_sleep>; + pinctrl-names = "default", "sleep"; + /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ + twi_drv_used = <1>; + twi-supply = <®_aldo3>; + status = "disabled"; +}; + +&twi8 { + clock-frequency = <400000>; + pinctrl-0 = <&s_twi2_pins_default>; + pinctrl-1 = <&s_twi2_pins_sleep>; + pinctrl-names = "default", "sleep"; + /* For stability and backwards compatibility, we recommend setting ‘twi_drv_used’ to 1 */ + twi_drv_used = <1>; + twi-supply = <®_aldo3>; + status = "disabled"; +}; + +&sdc2 { + non-removable; + bus-width = <8>; + mmc-ddr-1_8v; + mmc-hs200-1_8v; + mmc-hs400-1_8v; + no-sdio; + no-sd; + ctl-spec-caps = <0x308>; + cap-mmc-highspeed; + sunxi-power-save-mode; + sunxi-dis-signal-vol-sw; + mmc-bootpart-noacc; + /*cap-hsq;*/ + cqe-on; + ctl-cmdq-md = <0x2>; + max-frequency = <150000000>; + vmmc-supply = <®_cldo3>; + /*emmc io vol 3.3v*/ + /*vqmmc-supply = <®_aldo1>;*/ + /*emmc io vol 1.8v*/ + vqmmc-supply = <®_cldo1>; + status = "okay"; +}; + +&sdc0 { + bus-width = <4>; + cd-gpios = <&pio PF 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; + /*non-removable;*/ + /*broken-cd;*/ + /*cd-inverted;*/ + /*data3-detect;*/ + /*card-pwr-gpios = <&pio PH 14 1 1 2 0xffffffff>;*/ + cd-used-24M; + cap-sd-highspeed; + /*sd-uhs-sdr50;*/ + /*sd-uhs-ddr50;*/ + /*sd-uhs-sdr104;*/ + no-sdio; + no-mmc; + sunxi-power-save-mode; + /*sunxi-dis-signal-vol-sw;*/ + max-frequency = <150000000>; + ctl-spec-caps = <0x8>; + /*vmmc-supply = <®_cldo3>;*/ + /*vqmmc33sw-supply = <®_cldo3>;*/ + /*vdmmc33sw-supply = <®_cldo3>;*/ + /*vqmmc18sw-supply = <®_bldo1>;*/ + /*vdmmc18sw-supply = <®_bldo1>;*/ + status = "okay"; +}; + +&sdc1 { + bus-width = <4>; + no-mmc; + no-sd; + cap-sd-highspeed; + /*sd-uhs-sdr12*/ + sd-uhs-sdr25; + sd-uhs-sdr50; + sd-uhs-ddr50; + sd-uhs-sdr104; + /*sunxi-power-save-mode;*/ + sunxi-dis-signal-vol-sw; + cap-sdio-irq; + keep-power-in-suspend; + ignore-pm-notify; + max-frequency = <150000000>; + ctl-spec-caps = <0x408>; + status = "okay"; +}; + +&rfkill { + compatible = "allwinner,sunxi-rfkill"; + chip_en; + power_en; + pinctrl-0; + pinctrl-names; + status = "okay"; + + /* wlan session */ + wlan { + compatible = "allwinner,sunxi-wlan"; + clocks; + clock-names; + wlan_power = "axp2202-aldo3", "axp2202-bldo1"; /* vcc-pl/vcc-pg/vcc-pm */ + wlan_power_vol= <3300000>, <1800000>; + wlan_busnum = <0x1>; + wlan_regon = <&r_pio PM 1 GPIO_ACTIVE_HIGH>; + wlan_hostwake = <&r_pio PM 0 GPIO_ACTIVE_HIGH>; + wakeup-source; + }; + + /* bt session */ + bt { + compatible = "allwinner,sunxi-bt"; + clocks; + clock-names; + bt_power = "axp2202-aldo3", "axp2202-bldo1"; /* vcc-pl/vcc-pg/vcc-pm */ + bt_power_vol = <3300000>, <1800000>; + bt_rst_n = <&r_pio PM 2 GPIO_ACTIVE_LOW>; + }; +}; + +&addr_mgt { + compatible = "allwinner,sunxi-addr_mgt"; + type_addr_wifi = <0x0>; + type_addr_bt = <0x0>; + type_addr_eth = <0x0>; + status = "okay"; +}; + +&btlpm { + compatible = "allwinner,sunxi-btlpm"; + uart_index = <0x1>; + bt_wake = <&r_pio PM 3 GPIO_ACTIVE_HIGH>; + bt_hostwake = <&r_pio PM 4 GPIO_ACTIVE_HIGH>; + wakeup-source; + status = "okay"; +}; + +/* + *usb_port_type: usb mode. 0-device, 1-host, 2-otg. + *usb_detect_type: usb hotplug detect mode. 0-none, 1-vbus/id detect, 2-id/dpdm detect. + *usb_detect_mode: 0-thread scan, 1-id gpio interrupt. + *usb_id_gpio: gpio for id detect. + *usb_det_vbus_gpio: gpio for id detect. gpio or "axp_ctrl"; + *usb_wakeup_suspend:0-SUPER_STANDBY, 1-USB_STANDBY. + */ +&usbc0 { + device_type = "usbc0"; + usb_port_type = <0x2>; + usb_detect_type = <0x2>; + usb_detect_mode = <0x0>; + usb_id_gpio; + usb_det_vbus_gpio = "axp_ctrl"; + det_vbus_supply = <&usb_power_supply>; + usb_regulator_io = "nocare"; + usb_wakeup_suspend = <1>; + usb_luns = <3>; + usb_serial_unique = <0>; + usb_serial_number = "20080411"; + rndis_wceis = <1>; + wakeup-source; + status = "okay"; +}; + +&udc { + det_vbus_supply = <&usb_power_supply>; + phy_range = <0x153>; + status = "okay"; +}; + +&ehci0 { + drvvbus-supply = <®_usb0_vbus>; + phy_range = <0x153>; + status = "okay"; +}; + +&ohci0 { + drvvbus-supply = <®_usb0_vbus>; + phy_range = <0x153>; + status = "okay"; +}; + +&usbc1 { + device_type = "usbc1"; + usb_regulator_io = "nocare"; + usb_wakeup_suspend = <0>; + status = "okay"; +}; + +&ehci1 { + drvvbus-supply = <®_usb1_vbus>; + phy_range = <0x153>; + status = "okay"; +}; + +&ohci1 { + drvvbus-supply = <®_usb1_vbus>; + phy_range = <0x153>; + status = "okay"; +}; + +&gpu { + gpu_idle = <1>; + dvfs_status = <1>; + mali-supply = <®_dcdc2>; +}; + +/*---------------------------------------------------------------------------------- +disp init configuration + +disp_mode (0:screen0) +screenx_output_type (0:none; 1:lcd; 2:tv; 3:hdmi;5:vdpo) +screenx_output_mode (used for hdmi output, 0:480i 1:576i 2:480p 3:576p 4:720p50) + (5:720p60 6:1080i50 7:1080i60 8:1080p24 9:1080p50 10:1080p60) +screenx_output_format (for hdmi, 0:RGB 1:yuv444 2:yuv422 3:yuv420) +screenx_output_bits (for hdmi, 0:8bit 1:10bit 2:12bit 2:16bit) +screenx_output_eotf (for hdmi, 0:reserve 4:SDR 16:HDR10 18:HLG) +screenx_output_cs (for hdmi, 0:undefined 257:BT709 260:BT601 263:BT2020) +screenx_output_dvi_hdmi (for hdmi, 0:undefined 1:dvi mode 2:hdmi mode) +screen0_output_range (for hdmi, 0:default 1:full 2:limited) +screen0_output_scan (for hdmi, 0:no data 1:overscan 2:underscan) +screen0_output_aspect_ratio (for hdmi, 8-same as original picture 9-4:3 10-16:9 11-14:9) +fbx format (4:RGB655 5:RGB565 6:RGB556 7:ARGB1555 8:RGBA5551 9:RGB888 10:ARGB8888 12:ARGB4444) +fbx pixel sequence (0:ARGB 1:BGRA 2:ABGR 3:RGBA) +fb0_scaler_mode_enable(scaler mode enable, used FE) +fbx_width,fbx_height (framebuffer horizontal/vertical pixels, fix to output resolution while equal 0) +lcdx_backlight (lcd init backlight,the range:[0,256],default:197 +lcdx_yy (lcd init screen bright/contrast/saturation/hue, value:0~100, default:50/50/57/50) +lcd0_contrast (LCD contrast, 0~100) +lcd0_saturation (LCD saturation, 0~100) +lcd0_hue (LCD hue, 0~100) +framebuffer software rotation setting: +disp_rotation_used: (0:disable; 1:enable,you must set fbX_width to lcd_y, +set fbX_height to lcd_x) +degreeX: (X:screen index; 0:0 degree; 1:90 degree; 3:270 degree) +degreeX_Y: (X:screen index; Y:layer index 0~15; 0:0 degree; 1:90 degree; 3:270 degree) +devX_output_type : config output type in bootGUI framework in UBOOT-2018. + (0:none; 1:lcd; 2:tv; 4:hdmi;) +devX_output_mode : config output resolution(see include/video/sunxi_display2.h) of bootGUI framework in UBOOT-2018 +devX_screen_id : config display index of bootGUI framework in UBOOT-2018 +devX_do_hpd : whether do hpd detectation or not in UBOOT-2018 +chn_cfg_mode : Hardware DE channel allocation config. 0:single display with 6 + channel, 1:dual display with 4 channel in main display and 2 channel in second + display, 2:dual display with 3 channel in main display and 3 channel in second + in display. +----------------------------------------------------------------------------------*/ +&disp { + disp_init_enable = <1>; + disp_mode = <0>; + + screen0_output_type = <1>; + screen0_output_mode = <4>; + screen0_to_lcd_index = <0>; + + screen1_output_type = <3>; + screen1_output_mode = <5>; + screen1_to_lcd_index = <2>; + + screen1_output_format = <0>; + screen1_output_bits = <0>; + screen1_output_eotf = <4>; + screen1_output_cs = <257>; + screen1_output_dvi_hdmi = <2>; + screen1_output_range = <2>; + screen1_output_scan = <0>; + screen1_output_aspect_ratio = <8>; + + dev0_output_type = <1>; + dev0_output_mode = <4>; + dev0_screen_id = <0>; + dev0_do_hpd = <0>; + + dev1_output_type = <4>; + dev1_output_mode = <10>; + dev1_screen_id = <1>; + dev1_do_hpd = <1>; + + def_output_dev = <0>; + hdmi_mode_check = <1>; + + display_device_num = <3>; + + primary_display_type = "LCD"; + primary_de_id = <0>; + primary_framebuffer_width = <1280>; + primary_framebuffer_height = <800>; + primary_dpix = <213>; + primary_dpiy = <213>; + + extend0_display_type = "HDMI"; + extend0_de_id = <1>; + extend0_framebuffer_width = <1920>; + extend0_framebuffer_height = <1080>; + extend0_dpix = <160>; + extend0_dpiy = <160>; + + extend1_display_type = "DP"; + extend1_de_id = <1>; + extend1_framebuffer_width = <1920>; + extend1_framebuffer_height = <1080>; + extend1_dpix = <160>; + extend1_dpiy = <160>; + + fb_format = <0>; + fb_num = <2>; + /**/ + fb0_map = <0 1 0 16>; + fb0_width = <1280>; + fb0_height = <800>; + /**/ + fb1_map = <1 1 0 16>; + fb1_width = <1920>; + fb1_height = <1080>; + /**/ + fb2_map = <1 0 0 16>; + fb2_width = <1280>; + fb2_height = <720>; + /**/ + fb3_map = <1 1 0 16>; + fb3_width = <300>; + fb3_height = <300>; + + chn_cfg_mode = <3>; + disp_para_zone = <1>; + + /* dual display clock constraints: + 1. two tcons cannot share a parent clock. + 2. when dsi uses ccu clock, combphy and corresponding tcon use the + same parent clock. + */ + assigned-clocks = <&ccu CLK_DE>, + <&ccu CLK_VO0_TCONLCD0>, + <&ccu CLK_VO0_TCONLCD1>, + <&ccu CLK_VO1_TCONLCD0>, + <&ccu CLK_TCONTV>, + <&ccu CLK_TCONTV1>, + <&ccu CLK_COMBPHY0>, + <&ccu CLK_COMBPHY1>, + <&ccu CLK_DSI0>, + <&ccu CLK_DSI1>, + <&ccu CLK_EDP>; + assigned-clock-parents = <&ccu CLK_PLL_VIDEO3_4X>, + <&ccu CLK_PLL_VIDEO0_4X>, + <&ccu CLK_PLL_VIDEO1_4X>, + <&ccu CLK_PLL_VIDEO1_4X>, + <&ccu CLK_PLL_VIDEO1_4X>, + <&ccu CLK_PLL_VIDEO1_4X>, + <&ccu CLK_PLL_VIDEO0_4X>, + <&ccu CLK_PLL_VIDEO1_4X>, + <&ccu CLK_PLL_PERI0_150M>, + <&ccu CLK_PLL_PERI0_150M>, + <&ccu CLK_PLL_VIDEO1_4X>; + assigned-clock-rates = <600000000>; + + cldo3-supply = <®_cldo3>; + dcdc4-supply = <®_dcdc4>; + cldo1-supply = <®_cldo1>; + + pwms = <&pwm0 4 5000000 0>, <&pwm0 5 5000000 0>; + pwm-names = "lvds0_backlight", "lvds2_backlight"; + + power-domains = <&pd1 A523_PCK_DE>, <&pd1 A523_PCK_VO0>, <&pd1 A523_PCK_VO1>; + power-domain-names = "pd_de", "pd_vo0", "pd_vo1"; + + pinctrl-names = "active", "sleep"; + pinctrl-0 = <&pwm0_0_pin_active>; + pinctrl-1 = <&pwm0_0_pin_sleep>; +}; + +&lcd0 { + lcd_used = <1>; + + lcd_driver_name = "bp101wx1"; + lcd_backlight = <50>; + lcd_if = <3>; + + lcd_x = <1280>; + lcd_y = <800>; + lcd_width = <150>; + lcd_height = <94>; + lcd_dclk_freq = <75>; + + lcd_pwm_used = <1>; + lcd_pwm_ch = <4>; + lcd_pwm_freq = <50000>; + lcd_pwm_pol = <0>; + lcd_pwm_max_limit = <255>; + lcd_pwm_name = "lvds0_backlight"; + + lcd_hbp = <88>; + lcd_ht = <1451>; + lcd_hspw = <18>; + lcd_vbp = <23>; + lcd_vt = <860>; + lcd_vspw = <10>; + + lcd_lvds_if = <0>; + lcd_lvds_colordepth = <0>; + lcd_lvds_mode = <0>; + lcd_frm = <0>; + lcd_hv_clk_phase = <0>; + lcd_hv_sync_polarity= <0>; + lcd_gamma_en = <0>; + lcd_bright_curve_en = <0>; + lcd_cmap_en = <0>; + lcd_fsync_en = <0>; + lcd_fsync_act_time = <1000>; + lcd_fsync_dis_time = <1000>; + lcd_fsync_pol = <0>; + lcd_start_delay = <5>; + deu_mode = <0>; + lcdgamma4iep = <22>; + smart_color = <90>; + + lcd_pin_power = "cldo3"; + lcd_power = "dcdc4"; + lcd_power1 = "cldo1"; + lcd_gpio_0 = <&pio PI 2 GPIO_ACTIVE_HIGH>; //reset + lcd_bl_en = <&pio PI 2 GPIO_ACTIVE_HIGH>; + + pinctrl-0 = <&lvds0_pins_a>; + pinctrl-1 = <&lvds0_pins_b>; + lvds0_pinctrl-0 = <&lvds0_pins_a>; + lvds0_pinctrl-1 = <&lvds0_pins_b>; + lvds1_pinctrl-0 = <&lvds1_pins_a>; + lvds1_pinctrl-1 = <&lvds1_pins_b>; + dsi0_pinctrl-0 = <&dsi0_4lane_pins_a>; + dsi0_pinctrl-1 = <&dsi0_4lane_pins_b>; + dual_dsi_pinctrl-0 = <&dsi0_4lane_pins_a>, <&dsi1_4lane_pins_a>; + dual_dsi_pinctrl-1 = <&dsi0_4lane_pins_b>, <&dsi1_4lane_pins_b>; + dual_lvds0_pinctrl-0 = <&lvds0_pins_a>, <&lvds1_pins_a>; + dual_lvds0_pinctrl-1 = <&lvds0_pins_b>, <&lvds1_pins_b>; +}; + +&lcd1 { + lcd_used = <1>; + status = "okay"; + lcd_driver_name = "SQ101D_Q5DI404_84H501"; + lcd_backlight = <200>; + lcd_if = <4>; + + lcd_x = <1200>; + lcd_y = <1920>; + lcd_width = <136>; + lcd_height = <217>; + lcd_dclk_freq = <157>; + + lcd_pwm_used = <1>; + lcd_pwm_ch = <0>; + lcd_pwm_freq = <50000>; + lcd_pwm_pol = <0>; + lcd_pwm_max_limit = <255>; + + lcd_hbp = <50>; + lcd_ht = <1330>; + lcd_hspw = <10>; + lcd_vbp = <20>; + lcd_vt = <1960>; + lcd_vspw = <4>; + + lcd_frm = <0>; + lcd_gamma_en = <0>; + lcd_bright_curve_en = <0>; + lcd_cmap_en = <0>; + lcd_start_delay = <5>; + + deu_mode = <0>; + lcdgamma4iep = <22>; + smart_color = <90>; + + lcd_dsi_if = <0>; + lcd_dsi_lane = <4>; + lcd_dsi_format = <0>; + lcd_dsi_te = <0>; + lcd_dsi_eotp = <0>; + + lcd_power1 = "cldo4"; + lcd_power2 = "cldo1"; + + // lcd_gpio_2 = <&pio PD 22 GPIO_ACTIVE_HIGH>; //reset + + pinctrl-0 = <&dsi1_4lane_pins_a>; + pinctrl-1 = <&dsi1_4lane_pins_b>; + + // lcd_bl_en = <&pio PH 16 GPIO_ACTIVE_HIGH>; + lcd_bl_0_percent = <5>; +}; + +&lcd2 { + lcd_used = <0>; + + lcd_driver_name = "bp101wx1"; + lcd_backlight = <50>; + lcd_if = <3>; + + lcd_x = <1280>; + lcd_y = <800>; + lcd_width = <150>; + lcd_height = <94>; + lcd_dclk_freq = <75>; + + lcd_pwm_used = <1>; + lcd_pwm_ch = <5>; + lcd_pwm_freq = <50000>; + lcd_pwm_pol = <0>; + lcd_pwm_max_limit = <255>; + lcd_pwm_name = "lvds2_backlight"; + + lcd_hbp = <88>; + lcd_ht = <1451>; + lcd_hspw = <18>; + lcd_vbp = <23>; + lcd_vt = <860>; + lcd_vspw = <10>; + + lcd_lvds_if = <0>; + lcd_lvds_colordepth = <0>; + lcd_lvds_mode = <0>; + lcd_frm = <0>; + lcd_hv_clk_phase = <0>; + lcd_hv_sync_polarity= <0>; + lcd_gamma_en = <0>; + lcd_bright_curve_en = <0>; + lcd_cmap_en = <0>; + lcd_fsync_en = <0>; + lcd_fsync_pol = <0>; + lcd_start_delay = <5>; + deu_mode = <0>; + lcdgamma4iep = <22>; + smart_color = <90>; + + lcd_pin_power = "cldo3"; + lcd_power = "dcdc4"; + /* lvds_power & other interface power */ + lcd_bl_en = <&pio PI 5 GPIO_ACTIVE_HIGH>; + pinctrl-0 = <&lvds2_pins_a>; + pinctrl-1 = <&lvds2_pins_b>; + lvds2_pinctrl-0 = <&lvds2_pins_a>; + lvds2_pinctrl-1 = <&lvds2_pins_b>; + lvds3_pinctrl-0 = <&lvds3_pins_a>; + lvds3_pinctrl-1 = <&lvds3_pins_b>; + dual_lvds1_pinctrl-0 = <&lvds2_pins_a>, <&lvds3_pins_a>; + dual_lvds1_pinctrl-1 = <&lvds2_pins_b>, <&lvds3_pins_b>; +}; + +&edp0 { + // use if hardware reset pin is need + /* edp_hw_reset_pin = <&pio PH XX GPIO_ACTIVE_LOW>; */ + + edp_ssc_en = <0>; + edp_ssc_mode = <0>; + edp_psr_support = <0>; + edp_colordepth = <8>; /* 6/8/10/12/16 */ + edp_color_fmt = <0>; /* 0:RGB 1: YUV444 2: YUV422 */ + + lane0_sw = <0>; + lane0_pre = <0>; + lane1_sw = <0>; + lane1_pre = <0>; + lane2_sw = <0>; + lane2_pre = <0>; + lane3_sw = <0>; + lane3_pre = <0>; + efficient_training = <0>; + + sink_capacity_prefer = <1>; + edid_timings_prefer = <1>; + timings_fixed = <1>; + + edp_panel_used = <1>; + edp_panel_driver = "general_panel"; + edp_bl_en = <&pio PI 5 GPIO_ACTIVE_HIGH>; + edp_pwm_used = <1>; + edp_pwm_ch = <5>; + edp_pwm_freq = <50000>; + edp_pwm_pol = <0>; + edp_default_backlight = <200>; + edp_panel_power_0 = "edp-panel"; + + vcc-edp-supply = <®_bldo3>; + vdd-edp-supply = <®_dcdc2>; + edp-panel-supply = <®_dcdc4>; + status = "disabled"; + +}; + +&ve { + ve-supply = <®_dcdc2>; + + enable_setup_ve_freq = <0>; /* default disable */ + ve_freq_value = <624>; /* setup to 624MHz */ +}; + +/* audio dirver module -> audio codec */ +&codec { + tx-hub-en; + rx-sync-en; + + dac-vol = <63>; /* default value:63 range:0->63 */ + dacl-vol = <160>; /* default value:160 range:0->255 */ + dacr-vol = <160>; /* default value:160 range:0->255 */ + adc1-vol = <160>; /* default value:160 range:0->255 */ + adc2-vol = <160>; /* default value:160 range:0->255 */ + adc3-vol = <160>; /* default value:160 range:0->255 */ + lineout-gain = <31>; /* default value:31 range:0->31 */ + hpout-gain = <7>; /* default value:7 range:0->7 */ + adc1-gain = <31>; /* default value:31 range:0->31 */ + adc2-gain = <31>; /* default value:31 range:0->31 */ + adc3-gain = <31>; /* default value:31 range:0->31 */ + + /* to do: avcc-1.8 vdd33-3.3 cpvin-1.8 */ + avcc-external; + avcc-supply = <®_aldo4>; + avcc-vol = <1800000>; + vdd-external; + vdd-supply = <®_cldo3>; + vdd-vol = <3300000>; + cpvin-external; + cpvin-supply = <®_bldo3>; + cpvin-vol = <1800000>; + + pa-pin-max = <1>; + pa-pin-0 = <&r_pio PL 7 GPIO_ACTIVE_HIGH>; + pa-pin-level-0 = <1>; + pa-pin-msleep-0 = <0>; + + jack-det-level = <0>; + jack-det-threshold = <8>; + jack-det-debouce-time = <250>; + + /* extcon = <&usb_power_supply>; + * jack-swpin-mic-sel = <&pio PH 8 GPIO_ACTIVE_HIGH>; + * jack-swpin-hp-en = <&pio PH 15 GPIO_ACTIVE_HIGH>; + * jack-swpin-hp-sel = <&pio PH 11 GPIO_ACTIVE_HIGH>; + * jack-swmode-hp-off = <0x00>; + * jack-swmode-hp-usb = <0x11>; + * jack-swmode-hp-audio = <0x10>; + * jack-det-level = <1>; + * jack-det-threshold = <8>; + * jack-det-debouce-time = <250>; + */ + + status = "okay"; +}; + +&codec_plat { + status = "okay"; +}; + +&codec_mach { + soundcard-mach,jack-support = <1>; + status = "okay"; + soundcard-mach,cpu { + sound-dai = <&codec_plat>; + }; + soundcard-mach,codec { + sound-dai = <&codec>; + }; +}; + +&hdmi_codec { + extcon = <&hdmi>; + status = "okay"; +}; + +&edp_codec { + status = "disabled"; +}; + +/* audio dirver module -> owa */ +&owa_plat { + pinctrl-used; + pinctrl-names = "default","sleep"; + pinctrl-0 = <&owa_pins_a>; + pinctrl-1 = <&owa_pins_b>; + tx-hub-en; + status = "disabled"; +}; + +&owa_mach { + status = "disabled"; + soundcard-mach,cpu { + sound-dai = <&owa_plat>; + }; + soundcard-mach,codec { + }; +}; + +/* audio dirver module -> DMIC */ +&dmic_plat { + rx-chmap = <0x76543210>; + data-vol = <0xB0>; + rxdelaytime = <0>; + /* pinctrl-used; */ + /* pinctrl-names = "default","sleep"; */ + /* pinctrl-0 = <&dmic_pins_a>; */ + /* pinctrl-1 = <&dmic_pins_b>; */ + rx-sync-en; + status = "disabled"; +}; + +&dmic_mach { + status = "disabled"; + soundcard-mach,cpu { + sound-dai = <&dmic_plat>; + }; + soundcard-mach,codec { + }; +}; + +/* audio dirver module -> I2S/PCM */ +&i2s0_plat { + tdm-num = <0>; + tx-pin = <0>; + rx-pin = <0>; + pinctrl-used; + pinctrl-names = "default","sleep"; + pinctrl-0 = <&i2s0_pins_a &i2s0_pins_c &i2s0_pins_d>; + pinctrl-1 = <&i2s0_pins_b>; + tx-hub-en; + rx-sync-en; + status = "disabled"; +}; + +&i2s0_mach { + soundcard-mach,format = "i2s"; + soundcard-mach,frame-master = <&i2s0_cpu>; + soundcard-mach,bitclock-master = <&i2s0_cpu>; + /* soundcard-mach,frame-inversion; */ + /* soundcard-mach,bitclock-inversion; */ + soundcard-mach,slot-num = <2>; + soundcard-mach,slot-width = <32>; + soundcard-mach,capture-only; + status = "disabled"; + i2s0_cpu: soundcard-mach,cpu { + sound-dai = <&i2s0_plat>; + /* note: pll freq = 24.576M or 22.5792M * pll-fs */ + soundcard-mach,pll-fs = <1>; + /* note: + * mclk freq = mclk-fs * 12.288M or 11.2896M (when mclk-fp ture) + * mclk freq = mclk-fs * pcm rate (when mclk-fp false) + */ + soundcard-mach,mclk-fp; + soundcard-mach,mclk-fs = <1>; + }; + i2s0_codec: soundcard-mach,codec { + }; +}; + +&i2s1_plat { + tdm-num = <1>; + tx-pin = <0>; + rx-pin = <0>; + /* pinctrl-used; */ + /* pinctrl-names= "default","sleep"; */ + /* pinctrl-0 = <&i2s1_pins_a &i2s1_pins_c &i2s1_pins_d>; */ + /* pinctrl-1 = <&i2s1_pins_b>; */ + tx-hub-en; + rx-sync-en; + status = "disabled"; +}; + +&i2s1_mach { + soundcard-mach,format = "i2s"; + soundcard-mach,frame-master = <&i2s1_cpu>; + soundcard-mach,bitclock-master = <&i2s1_cpu>; + /* soundcard-mach,frame-inversion; */ + /* soundcard-mach,bitclock-inversion; */ + soundcard-mach,slot-num = <2>; + soundcard-mach,slot-width = <32>; + status = "disabled"; + i2s1_cpu: soundcard-mach,cpu { + sound-dai = <&i2s1_plat>; + soundcard-mach,pll-fs = <1>; + soundcard-mach,mclk-fs = <0>; + }; + i2s1_codec: soundcard-mach,codec { + }; +}; + +&i2s2_plat { + tdm-num = <2>; + tx-pin = <0 1 2 3>; + /* e.g. + * tx-pin0-map0 = <0xFEDC3210> -> tx_pin_map[0][0] (Dout0-slot[7:0] map channel[15:12, 3:0]) + * tx-pin0-map1 = <0x3210FEDC> -> tx_pin_map[0][1] (Dout0-slot[15:8] map channel[3:0, 15:12]) + * tx-pin1-map0 = <0x76543210> -> tx_pin_map[1][0] (Dout1-slot[7:0] map channel[7:0]) + */ + tx-pin0-map0 = <0x76543210>; + tx-pin0-map1 = <0xFEDCBA98>; + tx-pin1-map0 = <0x76543210>; + tx-pin1-map1 = <0xFEDCBA98>; + tx-pin2-map0 = <0x76543210>; + tx-pin2-map1 = <0xFEDCBA98>; + tx-pin3-map0 = <0x76543210>; + tx-pin3-map1 = <0xFEDCBA98>; + rx-pin = <0>; + /* pinctrl-used; */ + /* pinctrl-names= "default","sleep"; */ + /* pinctrl-0 = <&i2s2_pins_a &i2s2_pins_c &i2s2_pins_d &i2s2_pins_e>; */ + /* pinctrl-1 = <&i2s2_pins_b>; */ + tx-hub-en; + rx-sync-en; + /* edp not need dai-type */ + dai-type = "hdmi"; + status = "okay"; +}; + +&i2s2_mach { + soundcard-mach,format = "i2s"; + soundcard-mach,frame-master = <&i2s2_cpu>; + soundcard-mach,bitclock-master = <&i2s2_cpu>; + /* soundcard-mach,frame-inversion; */ + /* soundcard-mach,bitclock-inversion; */ + soundcard-mach,slot-num = <2>; + soundcard-mach,slot-width = <32>; + soundcard-mach,playback-only; + status = "okay"; + i2s2_cpu: soundcard-mach,cpu { + sound-dai = <&i2s2_plat>; + soundcard-mach,pll-fs = <1>; + /* edp mclk: 512fs */ + soundcard-mach,mclk-fs = <0>; + }; + i2s2_codec: soundcard-mach,codec { + sound-dai = <&hdmi_codec>; + }; +}; + +&i2s3_plat { + tdm-num = <3>; + tx-pin = <0>; + rx-pin = <0>; + /* pinctrl-used; */ + /* pinctrl-names= "default","sleep"; */ + /* pinctrl-0 = <&i2s3_pins_a &i2s3_pins_c &i2s3_pins_d>; */ + /* pinctrl-1 = <&i2s3_pins_b>; */ + tx-hub-en; + rx-sync-en; + status = "disabled"; +}; + +&i2s3_mach { + soundcard-mach,format = "i2s"; + soundcard-mach,frame-master = <&i2s3_cpu>; + soundcard-mach,bitclock-master = <&i2s3_cpu>; + /* soundcard-mach,frame-inversion; */ + /* soundcard-mach,bitclock-inversion; */ + soundcard-mach,slot-num = <2>; + soundcard-mach,slot-width = <32>; + status = "disabled"; + i2s3_cpu: soundcard-mach,cpu { + sound-dai = <&i2s3_plat>; + soundcard-mach,pll-fs = <1>; + soundcard-mach,mclk-fs = <0>; + }; + i2s3_codec: soundcard-mach,codec { + }; +}; + +&hdmi { + hdmi_used = <1>; + bldo3-supply = <®_bldo3>; + hdmi_power0 = "bldo3"; + hdmi_power_cnt = <1>; + hdmi_hdcp_enable = <1>; + hdmi_hdcp22_enable = <0>; + hdmi_cts_compatibility = <0>; + hdmi_cec_support = <1>; + hdmi_cec_super_standby = <1>; + hdmi_skip_bootedid = <1>; + + ddc_en_io_ctrl = <0>; + power_io_ctrl = <0>; + + status = "okay"; +}; + +&cpu0 { + cpu-supply = <®_dcdc1>; +}; + +&dsufreq { + dsu-supply = <®_dcdc1>; +}; + +&mdio0 { + status = "okay"; + gmac0_phy0: ethernet-phy@1 { + reset-gpios = <&pio PH 8 GPIO_ACTIVE_LOW>; + }; +}; + +&gmac0 { + phy-mode = "rgmii"; + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&gmac0_pins_default>; + pinctrl-1 = <&gmac0_pins_sleep>; + sunxi,phy-clk-type = <0>; + tx-delay = <3>; + rx-delay = <4>; + + gmac3v3-supply = <®_cldo4>; + status = "okay"; +}; + + +&gmac1 { + phy-mode = "rgmii"; + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&gmac1_pins_default>; + pinctrl-1 = <&gmac1_pins_sleep>; + aw,soc-phy25m; + tx-delay = <3>; + rx-delay = <4>; + dwmac3v3-supply = <®_cldo4>; + status = "okay"; + mdio1: mdio1@1 { + gmac1_phy0: ethernet-phy@1 { + reset-gpios = <&pio PJ 16 GPIO_ACTIVE_LOW>; + }; + }; + +}; + +&npu { + npu-supply = <®_ext_axp1530_dcdc3>; + status = "okay"; +}; + +&dram { + dram_para00 = <0x00000000>; + dram_para01 = <0x00000000>; + dram_para02 = <0x00000000>; + dram_para03 = <0x00000000>; + dram_para04 = <0x00000000>; + dram_para05 = <0x00000000>; + dram_para06 = <0x00000000>; + dram_para07 = <0x00000000>; + dram_para08 = <0x00000000>; + dram_para09 = <0x00000000>; + dram_para10 = <0x00000000>; + dram_para11 = <0x00000000>; + dram_para12 = <0x00000000>; + dram_para13 = <0x00000000>; + dram_para14 = <0x00000000>; + dram_para15 = <0x00000000>; + dram_para16 = <0x00000000>; + dram_para17 = <0x00000000>; + dram_para18 = <0x00000000>; + dram_para19 = <0x00000000>; + dram_para20 = <0x00000000>; + dram_para21 = <0x00000000>; + dram_para22 = <0x00000000>; + dram_para23 = <0x00000000>; + dram_para24 = <0x00000000>; + dram_para25 = <0x00000000>; + dram_para26 = <0x00000000>; + dram_para27 = <0x00000000>; + dram_para28 = <0x00000000>; + dram_para29 = <0x00000000>; + dram_para30 = <0x00000000>; + dram_para31 = <0x00000000>; + dram_para32 = <0x00000000>; + dram_para33 = <0x00000000>; + dram_para34 = <0x00000000>; + dram_para35 = <0x00000000>; + dram_para36 = <0x00000000>; + dram_para37 = <0x00000000>; + dram_para38 = <0x00000000>; + dram_para39 = <0x00000000>; + dram_para40 = <0x00000000>; + dram_para41 = <0x00000000>; + dram_para42 = <0x00000000>; + dram_para43 = <0x00000000>; + dram_para44 = <0x00000000>; + dram_para45 = <0x00000000>; + dram_para46 = <0x00000000>; + dram_para47 = <0x00000000>; + dram_para48 = <0x00000000>; + dram_para49 = <0x00000000>; + dram_para50 = <0x00000000>; + dram_para51 = <0x00000000>; + dram_para52 = <0x00000000>; + dram_para53 = <0x00000000>; + dram_para54 = <0x00000000>; + dram_para55 = <0x00000000>; + dram_para56 = <0x00000000>; + dram_para57 = <0x00000000>; + dram_para58 = <0x00000000>; + dram_para59 = <0x00000000>; + dram_para60 = <0x00000000>; + dram_para61 = <0x00000000>; + dram_para62 = <0x00000000>; + dram_para63 = <0x00000000>; + dram_para64 = <0x00000000>; + dram_para65 = <0x00000000>; + dram_para66 = <0x00000000>; + dram_para67 = <0x00000000>; + dram_para68 = <0x00000000>; + dram_para69 = <0x00000000>; + dram_para70 = <0x00000000>; + dram_para71 = <0x00000000>; + dram_para72 = <0x00000000>; + dram_para73 = <0x00000000>; + dram_para74 = <0x00000000>; + dram_para75 = <0x00000000>; + dram_para76 = <0x00000000>; + dram_para77 = <0x00000000>; + dram_para78 = <0x00000000>; + dram_para79 = <0x00000000>; + dram_para80 = <0x00000000>; + dram_para81 = <0x00000000>; + dram_para82 = <0x00000000>; + dram_para83 = <0x00000000>; + dram_para84 = <0x00000000>; + dram_para85 = <0x00000000>; + dram_para86 = <0x00000000>; + dram_para87 = <0x00000000>; + dram_para88 = <0x00000000>; + dram_para89 = <0x00000000>; + dram_para90 = <0x00000000>; + dram_para91 = <0x00000000>; + dram_para92 = <0x00000000>; + dram_para93 = <0x00000000>; + dram_para94 = <0x00000000>; + dram_para95 = <0x00000000>; +}; + +&cpul_thermal_zone { + cpul_trips: trips { + cpul_crit: cpu_crit@0 { + temperature = <115000>; + type = "critical"; + hysteresis = <0>; + }; + }; +}; + +&cpub_thermal_zone { + cpub_trips: trips { + cpub_crit: cpu_crit@0 { + temperature = <115000>; + type = "critical"; + hysteresis = <0>; + }; + }; +}; + +&gpu_thermal_zone { + gpu_trips: trips { + gpu_crit: gpu_crit@0 { + temperature = <115000>; + type = "critical"; + hysteresis = <0>; + }; + }; +}; + +&pd1 { + /* pk */ + pd1_vi@A523_PCK_VI { + ppu-always-on; + }; + + /* pd */ + pd1_vo0@A523_PCK_VO0 { + ppu-always-on; + }; + + /* pj */ + pd1_vo1@A523_PCK_VO1 { + ppu-always-on; + }; +}; +