Port-arm archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Building dtb from src/sys/arch/arm/dts



Excellent thanks for your help!
Here is a patch for adding a dts for the Olimex Teres laptop:
This allows the sunxidrm gets picked up, sound-spdif is disabled,
and I'm not sure how to test the cpu0 node, but I checked the pcb
diagram of the mainboard and the cpu-supply is correct.

Beneath I have dmesg output with this dtb in place at
/boot/dtb/allwinner/sun50-a64-teres-i.dtb

--- -	2019-09-01 00:52:41.418259171 +0000
+++ sys/arch/arm/dts/sun50i-a64-teres-i.dts	2019-09-01 00:52:26.586522256 +0000
@@ -0,0 +1,114 @@
+/*-
+ * Copyright (c) 2017-2019 Ian Hixson <mujo%sdf.org@localhost>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#include "../../../external/gpl2/dts/dist/arch/arm64/boot/dts/allwinner/sun50i-a64-teres-i.dts"
+#include "sun50i-a64.dtsi"
+
+/ {
+	chosen {
+		framebuffer@0 {
+			allwinner,pipeline = "mixer0-lcd0";
+		};
+	};
+
+	sound_spdif {
+		status = "disabled";
+	};
+};
+
+&cpu0 {
+	cpu-supply = <&reg_dcdc2>;
+	operating-points = <
+		/* kHz    uV */
+		1152000 1300000
+		1104000 1260000
+		1008000 1200000
+		816000  1080000
+		648000	1040000
+		408000	1000000
+		>;
+};
+
+&spdif_out {
+	status = "disabled";
+};
+
+&de {
+	status = "okay";
+};
+
+&mixer0 {
+	status = "okay";
+};
+
+&pio {
+	lcd_rgb666_pins: lcd-rgb666 {
+		pins = "PD0", "PD1", "PD2", "PD3", "PD4",
+		       "PD5", "PD6", "PD7", "PD8", "PD9",
+		       "PD10", "PD11", "PD12", "PD13",
+		       "PD14", "PD15", "PD16", "PD17",
+		       "PD18", "PD19", "PD20", "PD21";
+		function = "lcd0";
+	};
+};
+
+&tcon0 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&lcd_rgb666_pins>;
+
+	status = "okay";
+};
+
+&tcon0_out {
+	tcon0_out_anx6345: endpoint@0 {
+		reg = <0>;
+		remote-endpoint = <&anx6345_in>;
+	};
+};
+
+&i2c0 {
+        clock-frequency = <100000>;
+        status = "okay";
+
+        anx6345: anx6345@38 {
+                compatible = "analogix,anx6345";
+                reg = <0x38>;
+                reset-gpios = <&pio 3 24 GPIO_ACTIVE_LOW>; /* PD24 */
+                dvdd25-supply = <&reg_dldo2>;
+                dvdd12-supply = <&reg_dldo3>;
+
+                ports {
+                        #address-cells = <1>;
+                        #size-cells = <0>;
+
+                        port@0 {
+                                anx6345_in: endpoint {
+					remote-endpoint = <&tcon0_out_anx6345>;
+                                };
+                        };
+                };
+        };
+};


[     1.000000] Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
[     1.000000] 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017,
[     1.000000] 2018, 2019 The NetBSD Foundation, Inc.  All rights reserved.
[     1.000000] Copyright (c) 1982, 1986, 1989, 1991, 1993
[     1.000000] The Regents of the University of California.  All rights reserved.

[     1.000000] NetBSD 9.0_BETA (GENERIC64) #0: Fri Aug 23 04:24:00 UTC 2019
[     1.000000] 	mkrepro%mkrepro.NetBSD.org@localhost:/usr/src/sys/arch/evbarm/compile/GENERIC64
[     1.000000] total memory = 2030 MB
[     1.000000] avail memory = 1957 MB
[     1.000000] timecounter: Timecounters tick every 10.000 msec
[     1.000000] armfdt0 (root)
[     1.000000] simplebus0 at armfdt0: Olimex A64 Teres-I
[     1.000000] simplebus1 at simplebus0
[     1.000000] cpus0 at simplebus0
[     1.000000] simplebus2 at simplebus0
[     1.000000] cpu0 at cpus0: Cortex-A53 r0p4 (Cortex V8-A core)
[     1.000000] cpu0: package 0, core 0, smt 0
[     1.000000] cpu0: IC enabled, DC enabled, EL0/EL1 stack Alignment check enabled
[     1.000000] cpu0: Cache Writeback Granule 16B, Exclusives Reservation Granule 16B
[     1.000000] cpu0: Dcache line 64, Icache line 64
[     1.000000] cpu0: L1 32KB/64B 2-way read-allocate VIPT Instruction cache
[     1.000000] cpu0: L1 32KB/64B 4-way write-back read-allocate write-allocate PIPT Data cache
[     1.000000] cpu0: L2 512KB/64B 16-way write-back read-allocate write-allocate PIPT Unified cache
[     1.000000] cpu0: revID=0x80, PMCv3, 4k table, 64k table, 16bit ASID
[     1.000000] cpu0: auxID=0x11120, FP, CRC32, SHA1, SHA256, AES+PMULL, NEON, rounding, NaN propagation, denormals, 32x64bitRegs, Fused Multiply-Add
[     1.000000] cpufreqdt0 at cpu0
[     1.000000] cpu1 at cpus0: Cortex-A53 r0p4 (Cortex V8-A core)
[     1.000000] cpu1: package 0, core 1, smt 0
[     1.000000] cpu2 at cpus0: Cortex-A53 r0p4 (Cortex V8-A core)
[     1.000000] cpu2: package 0, core 2, smt 0
[     1.000000] cpu3 at cpus0: Cortex-A53 r0p4 (Cortex V8-A core)
[     1.000000] cpu3: package 0, core 3, smt 0
[     1.000000] gic0 at simplebus1: GIC
[     1.000000] armgic0 at gic0: Generic Interrupt Controller, 224 sources (215 valid)
[     1.000000] armgic0: 16 Priorities, 192 SPIs, 7 PPIs, 16 SGIs
[     1.000000] sunxisramc0 at simplebus1: SRAM Controller
[     1.000000] sunxisramc0: area: SRAM C
[     1.000000] fclock0 at simplebus0: 24000000 Hz fixed clock (osc24M)
[     1.000000] fclock1 at simplebus0: 32768 Hz fixed clock (ext-osc32k)
[     1.000000] gtmr0 at simplebus0: Generic Timer
[     1.000000] gtmr0: interrupting on GIC irq 27
[     1.000000] armgtmr0 at gtmr0: Generic Timer (24000 kHz, virtual)
[     1.000000] timecounter: Timecounter "armgtmr0" frequency 24000000 Hz quality 500
[     1.000009] sun50ia64ccu0 at simplebus1: A64 CCU
[     1.000009] sun50ia64rccu0 at simplebus1: A64 PRCM CCU
[     1.000009] sunxinmi0 at simplebus1: R_INTC
[     1.000009] sunxigpio0 at simplebus1: PIO
[     1.000009] gpio0 at sunxigpio0: 103 pins
[     1.000009] sunxigpio0: interrupting on GIC irq 43
[     1.000009] sunxigpio1 at simplebus1: PIO
[     1.000009] gpio1 at sunxigpio1: 13 pins
[     1.000009] sunxigpio1: interrupting on GIC irq 77
[     1.000009] sunxide2bus0 at simplebus1: DE2 Bus
[     1.000009] sunxirsb0 at simplebus1: RSB
[     1.000009] sunxirsb0: interrupting on GIC irq 71
[     1.000009] iic0 at sunxirsb0: I2C bus
[     1.000009] axppmic0 at iic0 addr 0x3a3: AXP803
[     1.000009] axpreg0 at axppmic0: vcc-hdmi
[     1.000009] axpreg1 at axppmic0: vcc-pd
[     1.000009] axpreg2 at axppmic0: vdd-edp
[     1.000009] axpreg3 at axppmic0: vcc-wifi-io
[     1.000009] axpreg4 at axppmic0: cpvdd
[     1.000009] axpreg5 at axppmic0: vcc-dvdd-csi
[     1.000009] axpreg6 at axppmic0: eldo3
[     1.000009] axpreg7 at axppmic0: vcc-1v2-hsic
[     1.000009] axpreg8 at axppmic0: vdd-cpus
[     1.000009] axpreg9 at axppmic0: vcc-3v3
[     1.000009] axpreg10 at axppmic0: vdd-cpux
[     1.000009] axpreg11 at axppmic0: dcdc3
[     1.000009] axpreg12 at axppmic0: dcdc4
[     1.000009] axpreg13 at axppmic0: vcc-ddr3
[     1.000009] axpreg14 at axppmic0: vdd-sys
[     1.000009] axpreg15 at axppmic0: vcc-pe
[     1.000009] axpreg16 at axppmic0: vcc-pl
[     1.000009] axpreg17 at axppmic0: vcc-pll-avcc
[     1.000009] fregulator0 at simplebus0: usb1-vbus
[     1.000009] sun6idma0 at simplebus1: DMA controller (8 channels)
[     1.000009] sun6idma0: interrupting on GIC irq 82
[     1.000009] sunxisid0 at simplebus1: Security ID EFUSE
[     1.000009] com0 at simplebus1: ns16550a, working fifo
[     1.000009] com0: console
[     1.000009] com0: interrupting on GIC irq 32
[     1.000009] sunxide2ccu0 at sunxide2bus0: DE2 CCU
[     1.000009] sunxidrm0 at simplebus0: Display Engine Pipeline
[     1.000009] sunxiusbphy0 at simplebus1: USB PHY
[     1.000009] sunxihdmiphy0 at simplebus1: HDMI PHY
[     1.000009] sunximixer0 at sunxide2bus0: Display Engine Mixer
[     1.000009] sunximixer1 at sunxide2bus0: Display Engine Mixer
[     1.000009] sunxilcdc0 at simplebus1: TCON0
[     1.000009] sunxilcdc0 port 0 endpoint 0 connected to sunximixer0 port 1 endpoint 0
[     1.000009] sunxilcdc0: interrupting on GIC irq 118
[     1.000009] sunxilcdc1 at simplebus1: TCON1
[     1.000009] sunxilcdc1 port 0 endpoint 0 connected to sunximixer1 port 1 endpoint 0
[     1.000009] sunxilcdc1: interrupting on GIC irq 119
[     1.000009] sunxitwi0 at simplebus1: Marvell TWSI controller
[     1.000009] sunxitwi0: interrupting on GIC irq 38
[     1.000009] iic1 at sunxitwi0: I2C bus
[     1.000009] anxedp0 at iic1 addr 0x38: eDP TX
[     1.000009] anxedp0 port 0 endpoint 0 connected to sunxilcdc0 port 1 endpoint 0
[     1.000009] mmcpwrseq0 at simplebus0: Simple MMC power sequence provider
[     1.000009] /soc/rtc@1f00000 at simplebus1 not configured
[     1.000009] sunximmc0 at simplebus1: SD/MMC controller
[     1.000009] sunximmc0: interrupting on GIC irq 92
[     1.000009] sunximmc1 at simplebus1: SD/MMC controller
[     1.000009] sunximmc1: interrupting on GIC irq 93
[     1.000009] sunximmc2 at simplebus1: SD/MMC controller
[     1.000009] sunximmc2: interrupting on GIC irq 94
[     1.000009] ehci0 at simplebus1: EHCI
[     1.000009] ehci0: interrupting on GIC irq 106
[     1.000009] ehci0: EHCI version 1.0
[     1.000009] ehci0: 1 companion controller, 1 port
[     1.000009] usb0 at ehci0: USB revision 2.0
[     1.000009] ohci0 at simplebus1: OHCI
[     1.000009] ohci0: interrupting on GIC irq 107
[     1.000009] ohci0: OHCI version 1.0
[     1.000009] usb1 at ohci0: USB revision 1.0
[     1.000009] /soc/gpu@1c40000 at simplebus1 not configured
[     1.000009] sunxiwdt0 at simplebus1: Watchdog
[     1.000009] sunxiwdt0: default watchdog period is 16 seconds
[     1.000009] sunxithermal0 at simplebus1: Thermal sensor controller
[     1.000009] sunxithermal0: interrupting on GIC irq 63
[     1.000009] sunxithermal0: cpu: alarm 85C hyst 58C shut 106C
[     1.000009] sunxithermal0: gpu1: alarm 85C hyst 58C shut 106C
[     1.000009] sunxithermal0: gpu2: alarm 85C hyst 58C shut 106C
[     1.000009] armpmu0 at simplebus0: Performance Monitor Unit
[     1.000009] psci0 at simplebus0: PSCI 1.1
[     1.000009] gpiokeys0 at simplebus0: Lid Switch
[     1.000009] gpioleds0 at simplebus0: teres-i:green:capslock teres-i:green:numlock
[     1.000009] /soc/video-codec@1c0e000 at simplebus1 not configured
[     1.000009] sunximixer0: activating port 1 endpoint 0 (direct)
[     1.000009] sunxilcdc0: activating port 0 endpoint 0
[     1.000009] anxedp0: activating port 0 endpoint 0
[     1.000009] sunximixer1: activating port 1 endpoint 0 (direct)
[     1.000009] sunxilcdc1: activating port 0 endpoint 0
[     1.000009] sunxidrm0: autoconfiguration error: failed to activate endpoint: 19
[     1.000009] sunxifb0 at sunxidrm0
[     1.000009] sunxifb0: framebuffer at 0xffffffc043200000, size 1366x768, depth 32, stride 5464
[     1.000009] sunxilcdc0: no CH0 PLL configured
[     1.000009] wsdisplay0 at sunxifb0 kbdmux 1: console (default, vt100 emulation)
[     1.000009] wsmux1: connecting to wsdisplay0
[     1.000009] wsdisplay0: screen 1-3 added (default, vt100 emulation)
[     1.000009] kern info: [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[     1.000009] kern info: [drm] No driver support for vblank timestamp query.
[     1.000009] sunxidrm0: initialized sunxi 1.0.0 20190123 on minor 0
[     1.000009] timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
[     1.000009] cpu2: IC enabled, DC enabled, EL0/EL1 stack Alignment check enabled
[     1.000009] cpu2: Cache Writeback Granule 16B, Exclusives Reservation Granule 16B
[     1.128529] cpu2: Dcache line 64, Icache line 64
[     1.138515] cpu2: L1 32KB/64B 2-way read-allocate VIPT Instruction cache
[     1.148515] cpu2: L1 32KB/64B 4-way write-back read-allocate write-allocate PIPT Data cache
[     1.158515] cpu2: L2 512KB/64B 16-way write-back read-allocate write-allocate PIPT Unified cache
[     1.168515] cpu2: revID=0x80, PMCv3, 4k table, 64k table, 16bit ASID
[     1.178516] cpu2: auxID=0x11120, FP, CRC32, SHA1, SHA256, AES+PMULL, NEON, rounding, NaN propagation, denormals, 32x64bitRegs, Fused Multiply-Add
[     1.188517] cpu3: IC enabled, DC enabled, EL0/EL1 stack Alignment check enabled
[     1.198516] cpu3: Cache Writeback Granule 16B, Exclusives Reservation Granule 16B
[     1.208516] cpu3: Dcache line 64, Icache line 64
[     1.218516] cpu3: L1 32KB/64B 2-way read-allocate VIPT Instruction cache
[     1.228517] cpu3: L1 32KB/64B 4-way write-back read-allocate write-allocate PIPT Data cache
[     1.238517] cpu3: L2 512KB/64B 16-way write-back read-allocate write-allocate PIPT Unified cache
[     1.248518] cpu3: revID=0x80, PMCv3, 4k table, 64k table, 16bit ASID
[     1.258518] cpu3: auxID=0x11120, FP, CRC32, SHA1, SHA256, AES+PMULL, NEON, rounding, NaN propagation, denormals, 32x64bitRegs, Fused Multiply-Add
[     1.278518] cpu1: IC enabled, DC enabled, EL0/EL1 stack Alignment check enabled
[     1.288518] cpu1: Cache Writeback Granule 16B, Exclusives Reservation Granule 16B
[     1.298518] cpu1: Dcache line 64, Icache line 64
[     1.298518] cpu1: L1 32KB/64B 2-way read-allocate VIPT Instruction cache
[     1.308520] cpu1: L1 32KB/64B 4-way write-back read-allocate write-allocate PIPT Data cache
[     1.318519] cpu1: L2 512KB/64B 16-way write-back read-allocate write-allocate PIPT Unified cache
[     1.328520] cpu1: revID=0x80, PMCv3, 4k table, 64k table, 16bit ASID
[     1.338519] cpu1: auxID=0x11120, FP, CRC32, SHA1, SHA256, AES+PMULL, NEON, rounding, NaN propagation, denormals, 32x64bitRegs, Fused Multiply-Add
[     1.373692] cpufreqdt0: 1152.000 MHz, 1300000 uV
[     1.373692] cpufreqdt0: 1104.000 MHz, 1260000 uV
[     1.373692] cpufreqdt0: 1008.000 MHz, 1200000 uV
[     1.373692] cpufreqdt0: 816.000 MHz, 1080000 uV
[     1.373692] cpufreqdt0: 648.000 MHz, 1040000 uV
[     1.373692] cpufreqdt0: 408.000 MHz, 1000000 uV
[     1.373692] sdmmc0 at sunximmc0
[     1.383718] sdmmc1 at sunximmc1
[     1.383718] sdmmc2 at sunximmc2
[     1.603697] uhub0 at usb1: NetBSD (0000) OHCI root hub (0000), class 9/0, rev 1.00/1.00, addr 1
[     1.613697] uhub0: 1 port with 1 removable, self powered
[     1.613697] uhub1 at usb0: NetBSD (0000) EHCI root hub (0000), class 9/0, rev 2.00/1.00, addr 1
[     1.623697] uhub1: 1 port with 1 removable, self powered
[     1.752228] sdmmc2: autoconfiguration error: switch error
[     1.752228] ld2 at sdmmc2: <0x13:0x014e:R1J56L:0x00:0x71a44760:0x000>
[     1.752228] sdmmc0: SD card status: 4-bit, C10, U1
[     1.752228] ld0 at sdmmc0: <0x41:0x3432:SDCIT:0x30:0x0029d0d0:0x121>
[     1.776868] (manufacturer 0x24c, product 0xb723, standard function interface code 0x7) at sdmmc1 function 1 not configured
[     1.875987] Lid Switch: lid opened.
[     1.875987] armpmu0: interrupting on GIC irq 184
[     1.885989] armpmu0: interrupting on GIC irq 185
[     1.895988] armpmu0: interrupting on GIC irq 186
[     1.895988] armpmu0: interrupting on GIC irq 187
[     1.905988] ld0: 7464 MB, 3791 cyl, 64 head, 63 sec, 512 bytes/sect x 15286272 sectors
[     1.915990] ld2: 14080 MB, 7151 cyl, 64 head, 63 sec, 512 bytes/sect x 28835840 sectors
[     2.766007] ld2c: error reading fsbn 0 (ld2 bn 0; cn 0 tn 0 sn 0), retrying
[     2.786010] ld0: 4-bit width, High-Speed/SDR25, 50.000 MHz
[     2.806009] IPsec: Initialized Security Association Processing.
[     3.266018] ld2: 8-bit width, 1024 KB cache, 52.000 MHz
[     4.306039] uhub2 at uhub1 port 1: vendor 05e3 (0x5e3) USB2.0 Hub (0x608), class 9/0, rev 2.00/85.36, addr 2
[     4.316039] uhub2: single transaction translator
[     4.326039] uhub2: 4 ports with 4 removable, self powered
[     5.626065] urtwn0 at uhub2 port 1
[     5.626065] urtwn0: Realtek (0xbda) 802.11n NIC (0x8179), rev 2.00/0.00, addr 3
[     5.746068] urtwn0: MAC/BB RTL8188EU, RF 6052 1T1R, address 84:16:f9:1d:70:5c
[     5.756068] urtwn0: 1 rx pipe, 2 tx pipes
[     5.756068] urtwn0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
[     5.766069] urtwn0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
[     6.746088] uvideo0 at uhub2 port 3 configuration 1 interface 0: Generic (0x1908) USB2.0 PC CAMERA (0x2311), rev 2.00/1.00, addr 4
[     6.756089] video0 at uvideo0: Generic (0x1908) USB2.0 PC CAMERA (0x2311), rev 2.00/1.00, addr 4
[     7.746109] uhidev0 at uhub2 port 4 configuration 1 interface 0
[     7.756109] uhidev0: Olimex Ltd. (0x15ba) TERES Keyboard+Touchpad (0x3c), rev 1.10/0.01, addr 5, iclass 3/1
[     7.766110] ukbd0 at uhidev0: 8 Variable keys, 6 Array codes
[     8.166118] wskbd0 at ukbd0: console keyboard, using wsdisplay0
[     8.176118] uhidev1 at uhub2 port 4 configuration 1 interface 1
[     8.186119] uhidev1: Olimex Ltd. (0x15ba) TERES Keyboard+Touchpad (0x3c), rev 1.10/0.01, addr 5, iclass 3/1
[     8.196118] ums0 at uhidev1: 3 buttons and Z dir
[     8.196118] wsmouse0 at ums0 mux 0
[     8.206119] WARNING: 2 errors while detecting hardware; check system log.
[     8.226120] boot device: ld0
[     8.226120] root on ld0a dumps on ld0b
[     8.246120] root file system type: ffs
[     8.246120] kern.module.path=/stand/evbarm/9.0/modules
[     8.256121] WARNING: no TOD clock present
[     8.256121] WARNING: using filesystem time
[     8.267515] WARNING: CHECK AND RESET THE DATE!
[    29.766681] wsdisplay0: screen 4 added (default, vt100 emulation)
[    31.876753] axppmic0: normal capacity on 'charge state'

-- 
ioh


Home | Main Index | Thread Index | Old Index