From a6af84e7410738d1916e9c2bd157531764c02e43 Mon Sep 17 00:00:00 2001
From: ronnie <ronnie@industiosoft.com>
Date: Sun, 23 Oct 2022 10:24:47 +0000
Subject: [PATCH] add board.dts and sys_config.fex

---
 longan/device/config/chips/a133/configs/c3/board.dts      |  518 ++++++++++++++++++++++++++++++++-------------------
 longan/device/config/chips/a133/configs/c3/sys_config.fex |   50 +++-
 2 files changed, 358 insertions(+), 210 deletions(-)

diff --git a/longan/device/config/chips/a133/configs/c3/board.dts b/longan/device/config/chips/a133/configs/c3/board.dts
index 5d7ad3a..79b5802 100755
--- a/longan/device/config/chips/a133/configs/c3/board.dts
+++ b/longan/device/config/chips/a133/configs/c3/board.dts
@@ -5,7 +5,6 @@
  */
 
 /dts-v1/;
-
 #include "sun50iw10p1.dtsi"
 
 /{
@@ -19,7 +18,7 @@
 
 	reg_usb1_vbus: usb1-vbus {
 		compatible = "regulator-fixed";
-		gpio = <&r_pio PL 11 1 2 0 1>;
+		//gpio = <&r_pio PL 11 1 2 0 1>;
 		regulator-name = "usb1-vbus";
 		regulator-min-microvolt = <5000000>;
 		regulator-max-microvolt = <5000000>;
@@ -49,25 +48,25 @@
 			};
 		};
 		pio: pinctrl@0300b000 {
-			twi0_pins_a: twi0@0 {
-				allwinner,pins = "PH0", "PH1";
-				allwinner,pname = "twi0_scl", "twi0_sda";
-				allwinner,function = "twi0";
-				allwinner,muxsel = <2>;
-				allwinner,drive = <1>;
-				allwinner,pull = <0>;
-			};
+                        twi0_pins_a: twi0@0 {
+                                allwinner,pins = "PD22", "PD23";
+                                allwinner,pname = "twi0_scl", "twi0_sda";
+                                allwinner,function = "twi0";
+                                allwinner,muxsel = <4>;
+                                allwinner,drive = <1>;
+                                allwinner,pull = <0>;
+                        };
 
-			twi0_pins_b: twi0@1 {
-				allwinner,pins = "PH0", "PH1";
-				allwinner,function = "io_disabled";
-				allwinner,muxsel = <7>;
-				allwinner,drive = <1>;
-				allwinner,pull = <0>;
-			};
+                        twi0_pins_b: twi0@1 {
+                                allwinner,pins = "PD22", "PD23";
+                                allwinner,function = "io_disabled";
+                                allwinner,muxsel = <7>;
+                                allwinner,drive = <1>;
+                                allwinner,pull = <0>;
+                        };
 
 			twi1_pins_a: twi1@0 {
-				allwinner,pins = "PH2", "PH3";
+				allwinner,pins = "PB4", "PB5";
 				allwinner,pname = "twi1_scl", "twi1_sda";
 				allwinner,function = "twi1";
 				allwinner,muxsel = <2>;
@@ -76,7 +75,7 @@
 			};
 
 			twi1_pins_b: twi1@1 {
-				allwinner,pins = "PH2", "PH3";
+				allwinner,pins = "PB4", "PB5";
 				allwinner,function = "io_disabled";
 				allwinner,muxsel = <7>;
 				allwinner,drive = <1>;
@@ -118,7 +117,7 @@
 			};
 
 			pwm0_pin_a: pwm0@0 {
-				allwinner,pins = "PD23";
+				//allwinner,pins = "PD23";
 				allwinner,function = "pwm0";
 				allwinner,muxsel = <0x02>;
 				allwinner,drive = <0x2>;
@@ -127,7 +126,7 @@
 			};
 
 			pwm0_pin_b: pwm0@1 {
-				allwinner,pins = "PD23";
+				//allwinner,pins = "PD23";
 				allwinner,function = "io_disabled";
 				allwinner,muxsel = <0x07>;
 				allwinner,drive = <0x2>;
@@ -136,7 +135,7 @@
 			};
 
 			pwm1_pin_a: pwm1@0 {
-				allwinner,pins = "PD22";
+				//allwinner,pins = "PD22";
 				allwinner,function = "pwm1";
 				allwinner,muxsel = <0x02>;
 				allwinner,drive = <0x2>;
@@ -145,7 +144,7 @@
 			};
 
 			pwm1_pin_b: pwm1@1 {
-				allwinner,pins = "PD22";
+				//allwinner,pins = "PD22";
 				allwinner,function = "io_disabled";
 				allwinner,muxsel = <0x07>;
 				allwinner,drive = <0x2>;
@@ -156,7 +155,7 @@
 			pwm2_pin_a: pwm2@0 {
 				allwinner,pins = "PD20";
 				allwinner,function = "pwm2";
-				allwinner,muxsel = <0x02>;
+				allwinner,muxsel = <0x03>;
 				allwinner,drive = <0x2>;
 				allwinner,pull = <0>;
 				allwinner,data = <0xffffffff>;
@@ -174,7 +173,7 @@
 			pwm3_pin_a: pwm3@0 {
 				allwinner,pins = "PD21";
 				allwinner,function = "pwm3";
-				allwinner,muxsel = <0x02>;
+				allwinner,muxsel = <0x03>;
 				allwinner,drive = <0x2>;
 				allwinner,pull = <0>;
 				allwinner,data = <0xffffffff>;
@@ -215,7 +214,6 @@
 				allwinner,drive = <1>;
 				allwinner,pull = <0>;
 			};
-
 			spi1_pins_a: spi1@0 {
 				allwinner,pins = "PD11", "PD12", "PD13";
 				allwinner,pname = "spi1_sclk", "spi1_mosi",
@@ -243,33 +241,40 @@
 				allwinner,pull = <0>;
 			};
 
-			spi2_pins_a: spi2@0 {
-				allwinner,pins = "PB1", "PB2", "PB3";
-				allwinner,pname = "spi2_sclk", "spi2_mosi",
-						  "spi2_miso";
-				allwinner,function = "spi2";
-				allwinner,muxsel = <3>;
-				allwinner,drive = <1>;
-				allwinner,pull = <0>;
-			};
+                        uart3_pins_a: uart3@0 {
+                                allwinner,pins = "PD14", "PD15";
+                                allwinner,pname = "uart3_tx", "uart3_rx";
+                                allwinner,function = "uart3";
+                                allwinner,muxsel = <4>;
+                                allwinner,drive = <1>;
+                                allwinner,pull = <1>;
+                        };
 
-			spi2_pins_b: spi2@1 {
-				allwinner,pins = "PB0";
-				allwinner,pname = "spi2_cs0";
-				allwinner,function = "spi2";
-				allwinner,muxsel = <3>;
-				allwinner,drive = <1>;
-				allwinner,pull = <1>;	/* only CS should be pulled up */
-			};
+                        uart3_pins_b: uart3@1 {
+                                allwinner,pins = "PD14", "PD15";
+                                allwinner,function = "io_disabled";
+                                allwinner,muxsel = <7>;
+                                allwinner,drive = <1>;
+                                allwinner,pull = <0>;
+                        };
 
-			spi2_pins_c: spi2@2 {
-				allwinner,pins = "PB0", "PB1", "PB2", "PB3";
-				allwinner,function = "io_disabled";
-				allwinner,muxsel = <7>;
-				allwinner,drive = <1>;
-				allwinner,pull = <0>;
-			};
+			uart4_pins_a: uart4@0 {
+                                allwinner,pins = "PD18", "PD19";
+                                allwinner,pname = "uart4_tx", "uart4_rx";
+                                allwinner,function = "uart4";
+                                allwinner,muxsel = <4>;
+                                allwinner,drive = <1>;
+                                allwinner,pull = <1>;
+                        };
 
+                        uart4_pins_b: uart4@1 {
+                                allwinner,pins = "PD18", "PD19";
+                                allwinner,pins = "PD18", "PD19";
+                                allwinner,function = "io_disabled";
+                                allwinner,muxsel = <7>;
+                                allwinner,drive = <1>;
+                                allwinner,pull = <0>;
+                        };
 		};
 
 		twi0: twi@0x05002000{
@@ -277,26 +282,65 @@
 			pinctrl-0 = <&twi0_pins_a>;
 			pinctrl-1 = <&twi0_pins_b>;
 			status = "okay";
-			ctp {
-				compatible = "allwinner,gslX680";
-				reg = <0x40>;
-				device_type = "ctp";
-				status = "disabled";
-				ctp_name = "gslX680_3676_1280x800";
-				ctp_twi_id = <0x0>;
-				ctp_twi_addr = <0x40>;
-				ctp_screen_max_x = <0x320>;
-				ctp_screen_max_y = <0x500>;
-				ctp_revert_x_flag = <1>;
-				ctp_revert_y_flag = <1>;
-
-				ctp_exchange_x_y_flag = <0x1>;
-				ctp_int_port = <&pio PL 7 6 0xffffffff 0xffffffff 0>;
-				ctp_wakeup = <&pio PH 9 1 0xffffffff 0xffffffff 1>;
-				ctp-supply = <&reg_ldoio0>;
-				ctp_power_ldo_vol = <3300>;
-			};
+                        ctp {
+                                compatible = "gt9xx_ts";
+				ctp_used = <1>;
+                                device_type = "ctp";
+				status = "okay";
+                                ctp_twi_id = <0x0>;
+				ctp_name = "gt9xx";
+                                reg = <0x5D>;
+                                ctp_screen_max_x = <800>;
+                                ctp_screen_max_y = <1280>;
+                                ctp_revert_x_flag = <0x1>;
+                                ctp_revert_y_flag = <0x1>;
+                                ctp_exchange_x_y_flag = <0x0>;
+                                ctp_int_port = <&r_pio PL 7  3 0xffffffff 0xffffffff 0>;
+                                ctp_wakeup =   <&pio   PB 2  1 0xffffffff 0xffffffff 1>;
+                                ctp_power_ldo = <3300>;
+                                ctp_power_ldo_vol = <3300>;
+                                ctp_power = <3300>;
+                        };
 		};
+
+		spi0: spi@05010000 {
+                        #address-cells = <1>;
+                        #size-cells = <0>;
+                        compatible = "allwinner,sun50i-spi";
+                        device_type = "spi0";
+                        reg = <0x0 0x05010000 0x0 0x1000>;
+                        interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
+                        clocks = <&clk_pll_periph0>, <&clk_spi0>;
+                        clock-frequency = <100000000>;
+                        pinctrl-names = "default", "sleep";
+                        pinctrl-0 = <&spi0_pins_a &spi0_pins_b>;
+                        pinctrl-1 = <&spi0_pins_c>;
+                        spi0_cs_number = <1>;
+                        spi0_cs_bitmap = <1>;
+			spi_slave_mode = <0>;
+                        //status = "okay";
+                        status = "disabled";
+                        spi_uart {
+                                compatible = "wkmic,wk2124spi";
+                                reg = <0>;
+                                spi-max-frequency = <10000000>;
+                                //irq_gpio = <&pio PH 11 6 0xffffffff 0xffffffff 0>;
+                        };
+                };
+
+                pwm3: pwm3@0300a000 {
+                        pinctrl-names = "active", "sleep";
+                        pinctrl-0 = <&pwm3_pin_a>;
+                        pinctrl-1 = <&pwm3_pin_b>;
+			status = "okay";
+                };
+
+                pwm2: pwm2@0300a000 {
+                        pinctrl-names = "active", "sleep";
+                        pinctrl-0 = <&pwm2_pin_a>;
+                        pinctrl-1 = <&pwm2_pin_b>;
+			status = "okay";
+                };
 
 		twi1: twi@0x05002400{
 			clock-frequency = <200000>;
@@ -310,7 +354,7 @@
 				status = "disabled";
 				gsensor_twi_id = <0x1>;
 				gsensor_twi_addr = <0x19>;
-				gsensor_int1 = <&pio PH 11 6 1 0xffffffff 0xffffffff>;
+				//gsensor_int1 = <&pio PH 11 6 1 0xffffffff 0xffffffff>;
 				gsensor-supply = <&reg_dcdc1>;
 				gsensor_vcc_io_val = <3300>;
 			};
@@ -321,11 +365,28 @@
 				status = "disabled";
 				ls_twi_id = <0x1>;
 				ls_twi_addr = <0x48>;
-				ls_int = <&pio PH 4 6 1 0xffffffff 0xffffffff>;
+				//ls_int = <&pio PH 4 6 1 0xffffffff 0xffffffff>;
 				lightsensor-supply = <&reg_dcdc1>;
 			};
-			
-			
+                        pcf85063@51 {
+                                compatible = "haoyu,hym8563";
+                                reg = <0x51>;
+                                status = "okay";
+			};
+        		mpu6050@68 {
+                		compatible = "invensense,mpu6500";
+                		reg = <0x68>;
+                		mount-matrix = 	"-0.984807753012208",  /* x0 */
+                               		       	"0",                   /* y0 */
+                               		       	"-0.173648177666930",  /* z0 */
+                               			"0",                   /* x1 */
+                               			"-1",                  /* y1 */
+                               			"0",                   /* z1 */
+                               			"-0.173648177666930",  /* x2 */
+                               			"0",                   /* y2 */
+                               			"0.984807753012208";   /* z2 */
+				status = "disabled";
+        		};
 		};
 
 		twi2: twi@0x05002800{
@@ -333,7 +394,7 @@
 			pinctrl-0 = <&twi2_pins_a>;
 			pinctrl-1 = <&twi2_pins_b>;
 			twi-supply = <&reg_dldo2>;
-			status = "okay";
+			status = "ok";
 
 /*			ac107@36 {
 				compatible = "Allwinnertech,ac107_0";
@@ -347,7 +408,7 @@
 			clock-frequency = <200000>;
 			pinctrl-0 = <&twi3_pins_a>;
 			pinctrl-1 = <&twi3_pins_b>;
-			status = "okay";
+			status = "ok";
 		};
 
 		twi6: s_twi@0x07081400{
@@ -384,10 +445,10 @@
 
 				usb_power_supply: usb_power_supply {
 					compatible = "x-powers,axp803-usb-power-supply";
-					status = "disabled";
+					status = "okay";
 
 					pmu_usbpc_vol = <4600>;
-					pmu_usbpc_cur = <1000>;
+					pmu_usbpc_cur = <3000>;
 					pmu_usbad_vol = <4600>;
 					pmu_usbad_cur = <2500>;
 
@@ -639,6 +700,8 @@
 						regulator-min-microvolt = <700000>;
 						regulator-max-microvolt = <3300000>;
 						regulator-enable-ramp-delay = <1000>;
+						regulator-boot-on;
+						regulator-always-on;
 					};
 					reg_ldoio1: ldoio1 {
 						regulator-name = "axp803-ldoio1";
@@ -776,13 +839,6 @@
 			pinctrl-1 = <&pwm0_pin_b>;
 		};
 
-		spi0: spi@05010000 {
-			pinctrl-0 = <&spi0_pins_a &spi0_pins_b>;
-			pinctrl-1 = <&spi1_pins_c>;
-			spi_slave_mode = <0>;
-			status = "disabled";
-		};
-
 		spi1: spi@05011000 {
 			pinctrl-0 = <&spi1_pins_a &spi1_pins_b>;
 			pinctrl-1 = <&spi1_pins_c>;
@@ -832,7 +888,6 @@
 
 		sdc0: sdmmc@04020000 {
 			bus-width = <4>;
-			cd-gpios = <&pio PF 6 6 1 3 0xffffffff>;
 			/*non-removable;*/
 			/*broken-cd;*/
 			/*cd-inverted*/
@@ -868,7 +923,8 @@
 			device_type = "usbc0";
 			usb_port_type = <0x0>;
 			usb_detect_type = <0x1>;
-			usb_id_gpio = <&pio PH 8 0 0 0xffffffff 0xffffffff>;
+			//usb_id_gpio = <&pio PH 8 0 0 0xffffffff 0xffffffff>;
+			usb_id_gpio = <&r_pio PL 10 0 0 0xffffffff 0xffffffff>;
 			usb_det_vbus_gpio   = "axp_ctrl";
 			usb_regulator_io = "nocare";
 			det_vbus_supply = <&usb_power_supply>;
@@ -926,6 +982,7 @@
 			status = "okay";
 		};
 
+		/* gpio-spk will output 0x00 when playing audio */
 		/* Audio Driver Modules */
 		codec:codec@0x05096000 {
 			/* MIC and headphone gain setting */
@@ -942,9 +999,9 @@
 			lineout_vol 	= <0x1a>;
 			headphonegain	= <0x00>;
 			/* Pa enabled about */
-			pa_level 	= <0x01>;
+			pa_level 	= <0x00>;
 			pa_msleep_time 	= <0x78>;
-			gpio-spk = <&pio PH 11 1 1 1 1>;
+			gpio-spk = <&pio PH 17 1 1 1 1>;
 			/* regulator about */
 			avcc-supply = <&reg_aldo1>;
 			cpvin-supply = <&reg_eldo1>;
@@ -956,15 +1013,15 @@
 		};
 
 		spdif:spdif-controller@0x05094000{
-			status = "disabled";
+			status = "okay";
 		};
 
 		sndspdif:sound@1{
-			status = "disabled";
+			status = "okay";
 		};
 
 		dmic:dmic-controller@0x05095000{
-			status = "disabled";
+			status = "okay";
 		};
 
 		snddmic:sound@2{
@@ -1055,6 +1112,7 @@
 		snddaudio3:sound@6 {
 			status = "disabled";
 		};
+
 		vind0:vind@0 {
 			vind0_clk = <336000000>;
 			vind0_isp = <300000000>;
@@ -1081,9 +1139,11 @@
 			};
 			sensor0:sensor@0 {
 				device_type = "sensor0";
-				sensor0_mname = "gc2385_mipi";
+				sensor1_mname = "ov8858_r2a_4lane";
 				sensor0_twi_cci_id = <2>;
-				sensor0_twi_addr = <0x6e>;
+				sensor0_twi_addr = <0x6c>;
+				//sensor0_twi_addr = <0x20>;
+
 				sensor0_mclk_id = <0>;
 				sensor0_pos = "rear";
 				sensor0_isp_used = <1>;
@@ -1098,16 +1158,16 @@
 				sensor0_dvdd-supply = <&reg_eldo2>;
 				sensor0_dvdd_vol = <1200000>;
 				sensor0_power_en = <>;
-				sensor0_reset = <&pio PE 9 1 0 1 0>;
-				sensor0_pwdn = <&pio PE 8 1 0 1 0>;
-				status	= "disabled";
+				sensor0_reset = <&pio PE 6 1 0 1 0>;
+				sensor0_pwdn =  <&pio PE 7 1 0 1 0>;
+				status	= "okay";
 			};
 			sensor1:sensor@1 {
 				device_type = "sensor1";
-				sensor1_mname = "gc030a_mipi";
-				sensor1_twi_cci_id = <2>;
-				sensor1_twi_addr = <0x42>;
-				sensor1_mclk_id = <0>;
+				sensor1_mname = "ov5648_mipi";
+				sensor1_twi_cci_id = <3>;
+				sensor1_twi_addr = <0x6c>;
+				sensor1_mclk_id = <1>;
 				sensor1_pos = "front";
 				sensor1_isp_used = <1>;
 				sensor1_fmt = <1>;
@@ -1118,13 +1178,14 @@
 				sensor1_iovdd_vol = <1800000>;
 				sensor1_avdd-supply = <&reg_dldo3>;
 				sensor1_avdd_vol = <2800000>;
-				sensor1_dvdd-supply = <>;
-				sensor1_dvdd_vol = <>;
+				sensor1_dvdd-supply = <&reg_eldo2>;
+				sensor1_dvdd_vol = <1500000>;
 				sensor1_power_en = <>;
-				sensor1_reset = <&pio PE 7 1 0 1 0>;
-				sensor1_pwdn = <&pio PE 6 1 0 1 0>;
-				status	= "disabled";
+				sensor1_reset = <&pio PE 8 1 0 1 0>;
+				sensor1_pwdn =  <&pio PE 9 1 0 1 0>;
+				status	= "okay";
 			};
+
 			vinc0:vinc@0 {
 				vinc0_csi_sel = <0>;
 				vinc0_mipi_sel = <0>;
@@ -1209,55 +1270,52 @@
                    display, 2:dual display with 3 channel in main display and 3 channel in second
                    in display.
 ----------------------------------------------------------------------------------*/
-		disp: disp@06000000 {
-			disp_init_enable         = <1>;
-			disp_mode                = <0>;
+                disp: disp@06000000 {
+                        disp_init_enable         = <1>;
+                        disp_mode                = <0>;
 
-			screen0_output_type      = <1>;
-			screen0_output_mode      = <4>;
+                        screen0_output_type      = <1>;
+                        screen0_output_mode      = <4>;
 
-			screen1_output_type      = <1>;
-			screen1_output_mode      = <4>;
+                        screen1_output_type      = <1>;
+                        screen1_output_mode      = <4>;
 
-			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>;
+                        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>;
+                        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>;
+                        dev1_output_type         = <4>;
+                        dev1_output_mode         = <10>;
+                        dev1_screen_id           = <1>;
+                        dev1_do_hpd              = <1>;
 
-			def_output_dev           = <0>;
-			hdmi_mode_check          = <1>;
+                        def_output_dev           = <0>;
+                        hdmi_mode_check          = <1>;
 
-			fb0_format               = <0>;
-			fb0_width                = <600>;
-			fb0_height               = <1024>;
+                        fb0_format               = <0>;
+                        fb0_width                = <800>;
+                        fb0_height               = <1280>;
 
-			fb1_format               = <0>;
-			fb1_width                = <0>;
-			fb1_height               = <0>;
-			chn_cfg_mode             = <1>;
+                        fb1_format               = <0>;
+                        fb1_width                = <0>;
+                        fb1_height               = <0>;
+                        chn_cfg_mode             = <1>;
 
-			disp_para_zone           = <1>;
-			/*VCC-LCD*/
-			dc1sw-supply = <&reg_dc1sw>;
-			/*VCC-DSI*/
-			eldo3-supply = <&reg_eldo3>;
-			/*VCC-PD*/
-			dcdc1-supply = <&reg_dcdc1>;
-		};
+                        disp_para_zone           = <1>;
+                        dc1sw-supply = <&reg_dc1sw>;
+                        eldo3-supply = <&reg_eldo3>;
+                        dcdc1-supply = <&reg_dcdc1>;
+                };
 /*----------------------------------------------------------------------------------
 ;lcd0 configuration
 
@@ -1316,58 +1374,55 @@
 ;For lvds1: use lvds1_pins_a  and lvds1_pins_b instead
 ;For lvds0: use lvds0_pins_a  and lvds0_pins_b instead
 ;----------------------------------------------------------------------------------*/
-		lcd0: lcd0@01c0c000 {
-			lcd_used            = <1>;
+                lcd0: lcd0@01c0c000 {
+                        lcd_used            = <1>;
 
-			lcd_driver_name     = "k101im2qa04";
-			lcd_backlight       = <50>;
-			lcd_if              = <4>;
+                        lcd_driver_name     = "mipi_800x1280";
+                        lcd_backlight       = <50>;
+                        lcd_if              = <4>;
 
-			lcd_x               = <600>;
-			lcd_y               = <1024>;
-			lcd_width           = <135>;
-			lcd_height          = <216>;
-			lcd_dclk_freq       = <68>;
+                        lcd_x               = <800>;
+                        lcd_y               = <1280>;
+                        lcd_width           = <220>;
+                        lcd_height          = <140>;
+                        lcd_dclk_freq       = <67>;
 
-			lcd_pwm_used        = <1>;
-			lcd_pwm_ch          = <0>;
-			lcd_pwm_freq        = <50000>;
-			lcd_pwm_pol         = <1>;
-			lcd_pwm_max_limit   = <255>;
+                        lcd_pwm_used        = <1>;
+                        lcd_pwm_ch          = <3>;
+                        lcd_pwm_freq        = <50000>;
+                        lcd_pwm_pol         = <1>;
+                        lcd_pwm_max_limit   = <255>;
 
+                        lcd_hbp             = <18>;
+                        lcd_ht              = <934>;
+                        lcd_hspw            = <4>;
+                        lcd_vbp             = <38>;
+                        lcd_vt              = <1344>;
+                        lcd_vspw            = <2>;
 
-			lcd_hbp             = <36>;
-			lcd_ht              = <854>;
-			lcd_hspw            = <18>;
-			lcd_vbp             = <12>;
-			lcd_vt              = <1320>;
-			lcd_vspw            = <4>;
+                        lcd_frm             = <0>;
+                        lcd_gamma_en        = <0>;
+                        lcd_bright_curve_en = <0>;
+                        lcd_cmap_en         = <0>;
 
-			lcd_frm             = <0>;
-			lcd_gamma_en        = <0>;
-			lcd_bright_curve_en = <0>;
-			lcd_cmap_en         = <0>;
+                        deu_mode            = <0>;
+                        lcdgamma4iep        = <22>;
+                        smart_color         = <90>;
 
-			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_dsi_if          = <0>;
-			lcd_dsi_lane        = <4>;
-			lcd_dsi_format      = <0>;
-			lcd_dsi_te          = <0>;
-			lcd_dsi_eotp        = <0>;
+                        lcd_pin_power = "dcdc1";
+                        lcd_pin_power1 = "eldo3";
 
-			lcd_pin_power = "dcdc1";
-			lcd_pin_power1 = "eldo3";
-
-			lcd_power = "dc1sw";
-			lcd_bl_en = <&pio PB 8 1 0 3 1>;
-			/*lcd_gpio_1 = <&pio PD 23 1 0 3 1>;*/
-			lcd_gpio_0 = <&pio PD 22 1 0 3 1>;
-			pinctrl-0 = <&dsi4lane_pins_a>;
-			pinctrl-1 = <&dsi4lane_pins_b>;
-		};
+                        lcd_power = "dc1sw";
+                        lcd_gpio_0 = <&r_pio PL 11 1 0 3 1>;
+                        pinctrl-0 = <&dsi4lane_pins_a>;
+                        pinctrl-1 = <&dsi4lane_pins_b>;
+                };
 
 		hall_para {
 			hall_name = "MH248";
@@ -1377,7 +1432,7 @@
 
 		keyboard {
 			compatible = "allwinner,keyboard_1350mv";
-			status = "okay";
+			status = "disable";
 			key_cnt = <3>;
 			key0 = <475 0x7372>;
 			key1 = <646 0x73>;
@@ -1398,11 +1453,11 @@
 			power_en;
 			status        = "okay";
 		};
-
 		bt: bt@0 {
 			compatible    = "allwinner,sunxi-bt";
 			clocks        = <&clk_losc_out>, <&clk_dcxo_out>;
 			bt_power      = "axp803-dldo1";
+			//bt_power      = "axp803-dldo1";
 			bt_io_regulator;
 			bt_rst_n      = <&r_pio PL 2 1 0xffffffff 0xffffffff 0>;
 			status        = "okay";
@@ -1423,12 +1478,23 @@
 			type_addr_eth  = <0x0>;
 			status         = "okay";
 		};
-
 		uart0: uart@05000000 {
 			uart-supply = <&reg_dcdc1>;
 		};
 
 		uart1: uart@05000400 {
+			status = "okay";
+		};
+
+		uart2: uart@05000800 {
+			status = "okay";
+		};
+
+		uart3: uart@05000c00 {
+			status = "okay";
+		};
+
+		uart4: uart@05001000 {
 			status = "okay";
 		};
 	};
@@ -1447,14 +1513,72 @@
 			 gpu-supply = <&reg_dcdc4>;
 	};
 	
-	leds:gpio-leds {
-		compatible = "gpio-leds";		
+	leds {
+               	compatible = "gpio-leds";
+        	pinctrl-names = "default";
 		status = "okay";
-		hbt{					
-			gpios = <&pio PH 10 1 0xffffffff 0xffffffff 0>;
-			//linux,default-trigger = "heartbeat";				
+
+               	sys {
+                       	label = "sysled";
+                       	gpios = <&pio PH 19 1 0 1 0>;
+			linux,default_trigger = "heartbeat";
+               	};
+		
+		hubrst {
+                        label = "hubrst";
+                        gpios = <&pio PC 7 1 0 1 1>;
+			default_state="on";
 		};
-	};
+		
+		usb1_pwr {
+			label = "usb1_pwr";
+			gpios = <&r_pio PL 9 1 0 1 1>;
+			default_state="on";
+		};
+
+		usb2_pwr {
+			label = "usb2_pwr";
+			gpios = <&pio PH 15 1 0 1 1>;
+			default_state="on";
+		};
+	
+		usb3_pwr {
+			label = "usb3_pwr";
+			gpios = <&pio PH 16 1 0 1 1>;
+			default_state="on";
+		};
+
+		usb4_pwr {
+			label = "usb4_pwr";
+			gpios = <&r_pio PL 8 1 0 1 1>;
+			default_state="on";
+		};
+
+		usb5_pwr {
+			label = "usb5_pwr";
+			gpios = <&pio PH 18 1 0 1 1>;
+			default_state="on";
+		};
+
+		usb6_pwr {
+			label = "usb6_pwr";
+			gpios = <&pio PB 6 1 0 1 1>;
+			default_state="on";
+		};
+
+		usb7_pwr {
+			label = "usb7_pwr";
+			gpios = <&pio PB 8 1 0 1 1>;
+			default_state="on";
+		};
+
+		spkmute {
+			label = "spkmute";
+			gpios = <&pio PH 13 1 0 1 0>;
+			default_state="on";
+		};
+        };
+
 };
 
 &cpu0 {
diff --git a/longan/device/config/chips/a133/configs/c3/sys_config.fex b/longan/device/config/chips/a133/configs/c3/sys_config.fex
index 3fd0a9b..7f8aa12 100755
--- a/longan/device/config/chips/a133/configs/c3/sys_config.fex
+++ b/longan/device/config/chips/a133/configs/c3/sys_config.fex
@@ -11,7 +11,7 @@
 [platform]
 eraseflag   = 1
 next_work   = 3
-debug_mode  = 3
+debug_mode  = 10
 
 ;----------------------------------------------------------------------------------
 ;[target]  system bootup configuration
@@ -24,7 +24,8 @@
 [target]
 boot_clock       = 1008
 storage_type     = -1
-burn_key         = 1
+burn_key         = 0
+; for dragonboard test
 dragonboard_test = 0
 power_mode      = 0
 
@@ -60,7 +61,7 @@
 
 [card_boot]
 logical_start   = 40960
-sprite_gpio0    = port:PH6<1><default><default><1>
+;sprite_gpio0    = port:PH6<1><default><default><1>
 
 ;----------------------------------------------------------------------------------
 ;fastboot key
@@ -133,12 +134,12 @@
 uart_debug_tx   = port:PB09<2><1><default><default>
 uart_debug_rx   = port:PB10<2><1><default><default>
 
-[jtag_para]
-jtag_enable     = 1
-jtag_ms         = port:PH9<3><default><default><default>
-jtag_ck         = port:PH10<3><default><default><default>
-jtag_do         = port:PH11<3><default><default><default>
-jtag_di         = port:PH12<3><default><default><default>
+;[jtag_para]
+;jtag_enable     = 1
+;jtag_ms         = port:PH9<3><default><default><default>
+;jtag_ck         = port:PH10<3><default><default><default>
+;jtag_do         = port:PH11<3><default><default><default>
+;jtag_di         = port:PH12<3><default><default><default>
 
 [clock]
 pll4            = 300
@@ -163,10 +164,10 @@
 [dram_select_para]
 select_mode	= 0
 gpadc_channel	= 1
-select_gpio0	= port:PB7<0><1><default><default>
+;select_gpio0	= port:PB7<0><1><default><default>
 select_gpio1	= port:PB4<0><1><default><default>
-select_gpio2	= port:PH1<0><1><default><default>
-select_gpio3	= port:PH0<0><1><default><default>
+;select_gpio2	= port:PH1<0><1><default><default>
+;select_gpio3	= port:PH0<0><1><default><default>
 
 
 ;*****************************************************************************
@@ -790,4 +791,27 @@
 ;drm_region_mbytes        = 0
 ;drm_region_start_mbytes  = 0
 
-
+;XR829
+[sdc1]
+sdc1_used          = 1
+bus-width          = 4
+sdc1_clk           = port:PG00<2><1><0><default>
+sdc1_cmd           = port:PG01<2><1><0><default>
+sdc1_d0            = port:PG02<2><1><0><default>
+sdc1_d1            = port:PG03<2><1><0><default>
+sdc1_d2            = port:PG04<2><1><0><default>
+sdc1_d3            = port:PG05<2><1><0><default>
+;non-removable      =
+;cd-gpios           =
+;sunxi-power-save-mode =
+ctl-spec-caps      = 0x1
+sunxi-power-save-mode =
+sunxi-dis-signal-vol-sw =
+;sd-uhs-sdr50       =
+;sd-uhs-ddr50       =
+;sd-uhs-sdr104      =
+;cap-sdio-irq       =
+keep-power-in-suspend	=
+ignore-pm-notify	=
+;max-frequency	        = 150000000
+min-frequency = 150000

--
Gitblit v1.6.2