This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

PROCESSOR-SDK-AM335X: Problem with appendend device tree.

Part Number: PROCESSOR-SDK-AM335X


Hi,

So I'am trying to build a new Linux kernel for a device that has been discontinued by the company. I have extracted the config.gz and DTB using DTC in Linux. This way I made Linux Kernel 4.1.6 via 01.00.00.00 since I did not want to make a too big jump to begin with. The device tree is appended to the kernel. When I try to append this device tree to the uImage I get the following output:

Bytes transferred = 2693434 (29193a hex)
## Booting kernel from Legacy Image at 80007fc0 ...
   Image Name:   Linux-4.1.6+
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2673552 Bytes = 2.5 MiB
   Load Address: 80008000
   Entry Point:  80008000
   Verifying Checksum ... OK
   XIP Kernel Image ... OK
OK

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 4.1.6+ (root@debian) (gcc version 4.9.4 (Linaro GCC 4.9-2017.01) ) #3 Mon Mar 14 23:01:56 EDT 2022
[    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine model: Simple Audio AM335x Roomplayer
[    0.000000] bootconsole [earlycon0] enabled
[    0.000000] Memory policy: Data cache writeback
[    0.000000] ------------[ cut here ]------------
[    0.000000] WARNING: CPU: 0 PID: 0 at arch/arm/kernel/devtree.c:144 arm_dt_init_cpu_maps+0xb4/0x124()
[    0.000000] DT /cpu 2 nodes greater than max cores 1, capping them
[    0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted 4.1.6+ #3
[    0.000000] Hardware name: Generic AM33XX (Flattened Device Tree)
[    0.000000] [<c0012b20>] (unwind_backtrace) from [<c00112b8>] (show_stack+0x10/0x14)
[    0.000000] [<c00112b8>] (show_stack) from [<c00306b8>] (warn_slowpath_common+0x7c/0xa4)
[    0.000000] [<c00306b8>] (warn_slowpath_common) from [<c0030738>] (warn_slowpath_fmt+0x2c/0x3c)
[    0.000000] [<c0030738>] (warn_slowpath_fmt) from [<c04590f0>] (arm_dt_init_cpu_maps+0xb4/0x124)
[    0.000000] [<c04590f0>] (arm_dt_init_cpu_maps) from [<c0458aa8>] (setup_arch+0x664/0x744)
[    0.000000] [<c0458aa8>] (setup_arch) from [<c0456924>] (start_kernel+0x7c/0x324)
[    0.000000] [<c0456924>] (start_kernel) from [<80008078>] (0x80008078)
[    0.000000] ---[ end trace cb88537fdc8fa200 ]---
[    0.000000] DT missing boot CPU MPIDR[23:0], fall back to default cpu_logical_map
[    0.000000] CPU: All CPU(s) started in SVC mode.
[    0.000000] Unable to handle kernel NULL pointer dereference at virtual address 00000604
[    0.000000] pgd = c0004000
[    0.000000] [00000604] *pgd=00000000
[    0.000000] Internal error: Oops: 5 [#1] ARM
[    0.000000] CPU: 0 PID: 0 Comm: swapper Tainted: G        W       4.1.6+ #3
[    0.000000] Hardware name: Generic AM33XX (Flattened Device Tree)
[    0.000000] task: c04884f0 ti: c0484000 task.ti: c0484000
[    0.000000] PC is at omap_ctrl_readl+0x24/0x50
[    0.000000] LR is at am33xx_check_features+0x18/0x34
[    0.000000] pc : [<c001ce2c>]    lr : [<c045b8b4>]    psr: 60000193
[    0.000000] sp : c0485f98  ip : 00000000  fp : 00000000
[    0.000000] r10: 00000000  r9 : 413fc082  r8 : 80004059
[    0.000000] r7 : c0486040  r6 : ffffffff  r5 : c04c4580  r4 : c04c4868
[    0.000000] r3 : 00000000  r2 : 00000020  r1 : 00000604  r0 : 00000000
[    0.000000] Flags: nZCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
[    0.000000] Control: 10c5387d  Table: 80004019  DAC: 00000015
[    0.000000] Process swapper (pid: 0, stack limit = 0xc0484210)
[    0.000000] Stack: (0xc0485f98 to 0xc0486000)
[    0.000000] 5f80:                                                       00000604 c03f4fd6
[    0.000000] 5fa0: 00000020 c045b8b4 00000000 c045c208 00000024 60000193 c0350cc8 c0456924
[    0.000000] 5fc0: 00000000 00000000 00000000 00000000 00000000 c047b27c 00000000 c04c4754
[    0.000000] 5fe0: c0486090 c047b278 c04898c4 80004059 413fc082 80008078 00000000 00000000
[    0.000000] [<c001ce2c>] (omap_ctrl_readl) from [<c045b8b4>] (am33xx_check_features+0x18/0x34)
[    0.000000] [<c045b8b4>] (am33xx_check_features) from [<c045c208>] (am33xx_init_early+0x1c/0x6c)
[    0.000000] [<c045c208>] (am33xx_init_early) from [<c0456924>] (start_kernel+0x7c/0x324)
[    0.000000] [<c0456924>] (start_kernel) from [<80008078>] (0x80008078)
[    0.000000] Code: e3500000 1a000004 e5933000 e0831001 (e5913000)
[    0.000000] ---[ end trace cb88537fdc8fa201 ]---
[    0.000000] Kernel panic - not syncing: Attempted to kill the idle task!
[    0.000000] ---[ end Kernel panic - not syncing: Attempted to kill the idle task!

DTS converted from DTB:

/dts-v1/;
//#include <am33xx.dtsi>
/ {
	#address-cells = <0x1>;
	#size-cells = <0x1>;
	compatible = "sa,am335x-sa-roomplayer", "ti,am33xx";
	interrupt-parent = <0x1>;
	model = "Simple Audio AM335x Roomplayer";

	chosen {
	};

	aliases {
		serial0 = "/ocp/serial@44e09000";
		serial1 = "/ocp/serial@48022000";
		serial2 = "/ocp/serial@48024000";
		serial3 = "/ocp/serial@481a6000";
		serial4 = "/ocp/serial@481a8000";
		serial5 = "/ocp/serial@481aa000";
	};

	memory {
		device_type = "memory";
		reg = <0x80000000 0x10000000>;
	};

	cpus {

		cpu@0 {
			compatible = "arm,cortex-a8";
			//reg = <0>;
			reg = <0xf00>;
			operating-points = <0xf4240 0x149970 0xc3500 0x13d620 0x927c0 0x10f7c0 0x493e0 0xec928>;
			voltage-tolerance = <0x2>;
			clock-latency = <0x493e0>;
			cpu0-supply = <0x2>;
			linux,phandle = <0x10>;
			phandle = <0x10>;
		};
	};

	soc {
		compatible = "ti,omap-infra";

		mpu {
			compatible = "ti,omap3-mpu";
			ti,hwmods = "mpu";
		};
	};

	pinmux@44e10800 {
		compatible = "pinctrl-single";
		reg = <0x44e10800 0x238>;
		#address-cells = <0x1>;
		#size-cells = <0x0>;
		pinctrl-single,register-width = <0x20>;
		pinctrl-single,function-mask = <0x7f>;
		linux,phandle = <0x11>;
		phandle = <0x11>;

		pinmux_i2c0_pins {
			pinctrl-single,pins = <0x188 0x70 0x18c 0x70>;
			linux,phandle = <0x6>;
			phandle = <0x6>;
		};

		pinmux_uart2_pins {
			pinctrl-single,pins = <0x180 0x30>;
			linux,phandle = <0x5>;
			phandle = <0x5>;
		};

		pinmux_rstctl_pins {
			pinctrl-single,pins = <0x50 0x17>;
			linux,phandle = <0x3>;
			phandle = <0x3>;
		};

		pinmux_emmc2_pins {
			pinctrl-single,pins = <0x80 0x32 0x84 0x32 0x0 0x31 0x4 0x31 0x8 0x31 0xc 0x31 0x10 0x31 0x14 0x31 0x18 0x31 0x1c 0x31>;
			linux,phandle = <0xb>;
			phandle = <0xb>;
		};

		pinmux_mcasp0_pins {
			pinctrl-single,pins = <0x190 0x8 0x194 0x8 0x198 0x8 0x19c 0x28 0x1a0 0x8 0x1a4 0x8 0x1a8 0x28 0x1ac 0x28>;
			linux,phandle = <0xd>;
			phandle = <0xd>;
		};
	};

	ocp {
		compatible = "simple-bus";
		#address-cells = <0x1>;
		#size-cells = <0x1>;
		ranges;
		ti,hwmods = "l3_main";
		linux,phandle = <0x12>;
		phandle = <0x12>;

		interrupt-controller@48200000 {
			compatible = "ti,omap2-intc";
			interrupt-controller;
			#interrupt-cells = <0x1>;
			ti,intc-size = <0x80>;
			reg = <0x48200000 0x1000>;
			linux,phandle = <0x1>;
			phandle = <0x1>;
		};

		edma@49000000 {
			compatible = "ti,edma3";
			ti,hwmods = "tpcc", "tptc0", "tptc1", "tptc2";
			reg = <0x49000000 0x10000 0x44e10f90 0x40>;
			interrupt-parent = <0x1>;
			interrupts = <0xc 0xd 0xe>;
			#dma-cells = <0x1>;
			dma-channels = <0x40>;
			ti,edma-regions = <0x4>;
			ti,edma-slots = <0x100>;
			ti,edma-queue-tc-map = <0x0 0x0 0x1 0x1 0x2 0x2>;
			ti,edma-queue-priority-map = <0x0 0x0 0x1 0x1 0x2 0x2>;
			ti,edma-default-queue = <0x1>;
			ti,edma-xbar-event-map = <0x20 0xc 0x1e 0x14>;
			linux,phandle = <0x7>;
			phandle = <0x7>;
		};

		gpio@44e07000 {
			compatible = "ti,omap4-gpio";
			ti,hwmods = "gpio1";
			gpio-controller;
			#gpio-cells = <0x2>;
			interrupt-controller;
			#interrupt-cells = <0x1>;
			reg = <0x44e07000 0x1000>;
			interrupts = <0x60>;
			linux,phandle = <0x13>;
			phandle = <0x13>;
		};

		gpio@4804c000 {
			compatible = "ti,omap4-gpio";
			ti,hwmods = "gpio2";
			gpio-controller;
			#gpio-cells = <0x2>;
			interrupt-controller;
			#interrupt-cells = <0x1>;
			reg = <0x4804c000 0x1000>;
			interrupts = <0x62>;
			linux,phandle = <0x4>;
			phandle = <0x4>;
		};

		gpio@481ac000 {
			compatible = "ti,omap4-gpio";
			ti,hwmods = "gpio3";
			gpio-controller;
			#gpio-cells = <0x2>;
			interrupt-controller;
			#interrupt-cells = <0x1>;
			reg = <0x481ac000 0x1000>;
			interrupts = <0x20>;
			linux,phandle = <0x14>;
			phandle = <0x14>;
		};

		gpio@481ae000 {
			compatible = "ti,omap4-gpio";
			ti,hwmods = "gpio4";
			gpio-controller;
			#gpio-cells = <0x2>;
			interrupt-controller;
			#interrupt-cells = <0x1>;
			reg = <0x481ae000 0x1000>;
			interrupts = <0x3e>;
			linux,phandle = <0x15>;
			phandle = <0x15>;
		};

		rstctl@0 {
			status = "okay";
			compatible = "gpio-rctrl";
			pinctrl-names = "default";
			pinctrl-0 = <0x3>;
			#reset-cells = <0x2>;
			gpios = <0x4 0x14 0x0>;
			gpio-names = "eMMC_RSTn";
			linux,phandle = <0xa>;
			phandle = <0xa>;
		};

		serial@44e09000 {
			compatible = "ti,omap3-uart";
			ti,hwmods = "uart1";
			clock-frequency = <0x2dc6c00>;
			reg = <0x44e09000 0x2000>;
			interrupts = <0x48>;
			status = "okay";
			linux,phandle = <0x16>;
			phandle = <0x16>;
		};

		serial@48022000 {
			compatible = "ti,omap3-uart";
			ti,hwmods = "uart2";
			clock-frequency = <0x2dc6c00>;
			reg = <0x48022000 0x2000>;
			interrupts = <0x49>;
			status = "okay";
			pinctrl-names = "default";
			pinctrl-0 = <0x5>;
			linux,phandle = <0x17>;
			phandle = <0x17>;
		};

		serial@48024000 {
			compatible = "ti,omap3-uart";
			ti,hwmods = "uart3";
			clock-frequency = <0x2dc6c00>;
			reg = <0x48024000 0x2000>;
			interrupts = <0x4a>;
			status = "disabled";
			linux,phandle = <0x18>;
			phandle = <0x18>;
		};

		serial@481a6000 {
			compatible = "ti,omap3-uart";
			ti,hwmods = "uart4";
			clock-frequency = <0x2dc6c00>;
			reg = <0x481a6000 0x2000>;
			interrupts = <0x2c>;
			status = "disabled";
			linux,phandle = <0x19>;
			phandle = <0x19>;
		};

		serial@481a8000 {
			compatible = "ti,omap3-uart";
			ti,hwmods = "uart5";
			clock-frequency = <0x2dc6c00>;
			reg = <0x481a8000 0x2000>;
			interrupts = <0x2d>;
			status = "disabled";
			linux,phandle = <0x1a>;
			phandle = <0x1a>;
		};

		serial@481aa000 {
			compatible = "ti,omap3-uart";
			ti,hwmods = "uart6";
			clock-frequency = <0x2dc6c00>;
			reg = <0x481aa000 0x2000>;
			interrupts = <0x2e>;
			status = "disabled";
			linux,phandle = <0x1b>;
			phandle = <0x1b>;
		};

		i2c@44e0b000 {
			compatible = "ti,omap4-i2c";
			#address-cells = <0x1>;
			#size-cells = <0x0>;
			ti,hwmods = "i2c1";
			reg = <0x44e0b000 0x1000>;
			interrupts = <0x46>;
			status = "okay";
			clock-frequency = <0x186a0>;
			pinctrl-names = "default";
			pinctrl-0 = <0x6>;
			linux,phandle = <0x1c>;
			phandle = <0x1c>;

			pca9554@20 {
				compatible = "nxp,pca9554";
				reg = <0x20>;
				linux,phandle = <0x1d>;
				phandle = <0x1d>;
			};

			pca9554@22 {
				compatible = "nxp,pca9554";
				reg = <0x22>;
				linux,phandle = <0x1e>;
				phandle = <0x1e>;
			};

			pca9554@23 {
				compatible = "nxp,pca9554";
				reg = <0x23>;
				linux,phandle = <0x1f>;
				phandle = <0x1f>;
			};

			tps@24 {
				reg = <0x24>;
				compatible = "ti,tps65217";
				ti,pmic-shutdown-controller;
				interrupt-parent = <0x1>;
				interrupts = <0x7>;
				linux,phandle = <0x20>;
				phandle = <0x20>;

				regulators {
					#address-cells = <0x1>;
					#size-cells = <0x0>;

					regulator@0 {
						reg = <0x0>;
						regulator-compatible = "dcdc1";
						regulator-always-on;
						linux,phandle = <0x21>;
						phandle = <0x21>;
					};

					regulator@1 {
						reg = <0x1>;
						regulator-compatible = "dcdc2";
						regulator-name = "vdd_mpu";
						regulator-min-microvolt = <0xe1d48>;
						regulator-max-microvolt = <0x1437c8>;
						regulator-boot-on;
						regulator-always-on;
						linux,phandle = <0x2>;
						phandle = <0x2>;
					};

					regulator@2 {
						reg = <0x2>;
						regulator-compatible = "dcdc3";
						regulator-name = "vdd_core";
						regulator-min-microvolt = <0xe1d48>;
						regulator-max-microvolt = <0x118c30>;
						regulator-boot-on;
						regulator-always-on;
						linux,phandle = <0x22>;
						phandle = <0x22>;
					};

					regulator@3 {
						reg = <0x3>;
						regulator-compatible = "ldo1";
						regulator-always-on;
						linux,phandle = <0x23>;
						phandle = <0x23>;
					};

					regulator@4 {
						reg = <0x4>;
						regulator-compatible = "ldo2";
						regulator-always-on;
						linux,phandle = <0x24>;
						phandle = <0x24>;
					};

					regulator@5 {
						reg = <0x5>;
						regulator-compatible = "ldo3";
						regulator-min-microvolt = <0x1b7740>;
						regulator-max-microvolt = <0x1b7740>;
						regulator-always-on;
						linux,phandle = <0x9>;
						phandle = <0x9>;
					};

					regulator@6 {
						reg = <0x6>;
						regulator-compatible = "ldo4";
						regulator-always-on;
						linux,phandle = <0x25>;
						phandle = <0x25>;
					};
				};
			};

			wm8776@1b {
				compatible = "wlf,wm8776";
				reg = <0x1b>;
				linux,phandle = <0xe>;
				phandle = <0xe>;
			};
		};

		i2c@4802a000 {
			compatible = "ti,omap4-i2c";
			#address-cells = <0x1>;
			#size-cells = <0x0>;
			ti,hwmods = "i2c2";
			reg = <0x4802a000 0x1000>;
			interrupts = <0x47>;
			status = "disabled";
			linux,phandle = <0x26>;
			phandle = <0x26>;
		};

		i2c@4819c000 {
			compatible = "ti,omap4-i2c";
			#address-cells = <0x1>;
			#size-cells = <0x0>;
			ti,hwmods = "i2c3";
			reg = <0x4819c000 0x1000>;
			interrupts = <0x1e>;
			status = "disabled";
			linux,phandle = <0x27>;
			phandle = <0x27>;
		};

		mmc@48060000 {
			compatible = "ti,omap3-hsmmc";
			ti,hwmods = "mmc1";
			ti,dual-volt;
			ti,needs-special-reset;
			ti,needs-special-hs-handling;
			dmas = <0x7 0x18 0x7 0x19>;
			dma-names = "tx", "rx";
			status = "okay";
			vmmc-supply = <0x8>;
			ti,vcc-aux-disable-is-sleep;
			linux,phandle = <0x28>;
			phandle = <0x28>;
		};

		mmc@481d8000 {
			compatible = "ti,omap3-hsmmc";
			ti,hwmods = "mmc2";
			ti,needs-special-reset;
			ti,needs-special-hs-handling;
			dmas = <0x7 0x2 0x7 0x3>;
			dma-names = "tx", "rx";
			status = "okay";
			vmmc-supply = <0x9>;
			bus-width = <0x8>;
			ti,non-removable;
			reset = <0xa 0x0 0x0>;
			reset-names = "eMMC_RSTn";
			pinctrl-names = "default";
			pinctrl-0 = <0xb>;
			ti,vcc-aux-disable-is-sleep;
			linux,phandle = <0x29>;
			phandle = <0x29>;
		};

		mmc@47810000 {
			compatible = "ti,omap3-hsmmc";
			ti,hwmods = "mmc3";
			ti,needs-special-reset;
			ti,needs-special-hs-handling;
			status = "disabled";
			linux,phandle = <0x2a>;
			phandle = <0x2a>;
		};

		wdt@44e35000 {
			compatible = "ti,omap3-wdt";
			ti,hwmods = "wd_timer2";
			reg = <0x44e35000 0x1000>;
			interrupts = <0x5b>;
			linux,phandle = <0x2b>;
			phandle = <0x2b>;
		};

		d_can@481cc000 {
			compatible = "bosch,d_can";
			ti,hwmods = "d_can0";
			reg = <0x481cc000 0x2000>;
			interrupts = <0x34>;
			status = "disabled";
			linux,phandle = <0x2c>;
			phandle = <0x2c>;
		};

		d_can@481d0000 {
			compatible = "bosch,d_can";
			ti,hwmods = "d_can1";
			reg = <0x481d0000 0x2000>;
			interrupts = <0x37>;
			status = "disabled";
			linux,phandle = <0x2d>;
			phandle = <0x2d>;
		};

		/*timer@44e31000 {
			compatible = "ti,omap2-timer";
			reg = <0x44e31000 0x400>;
			interrupts = <0x43>;
			ti,hwmods = "timer1";
			ti,timer-alwon;
			linux,phandle = <0x2e>;
			phandle = <0x2e>;
		};

		timer@48040000 {
			compatible = "ti,omap2-timer";
			reg = <0x48040000 0x400>;
			interrupts = <0x44>;
			ti,hwmods = "timer2";
			linux,phandle = <0x2f>;
			phandle = <0x2f>;
		};*/

		timer@48042000 {
			compatible = "ti,omap2-timer";
			reg = <0x48042000 0x400>;
			interrupts = <0x45>;
			ti,hwmods = "timer3";
			linux,phandle = <0x30>;
			phandle = <0x30>;
		};

		timer@48044000 {
			compatible = "ti,omap2-timer";
			reg = <0x48044000 0x400>;
			interrupts = <0x5c>;
			ti,hwmods = "timer4";
			ti,timer-pwm;
			linux,phandle = <0x31>;
			phandle = <0x31>;
		};

		timer@48046000 {
			compatible = "ti,omap2-timer";
			reg = <0x48046000 0x400>;
			interrupts = <0x5d>;
			ti,hwmods = "timer5";
			ti,timer-pwm;
			linux,phandle = <0x32>;
			phandle = <0x32>;
		};

		timer@48048000 {
			compatible = "ti,omap2-timer";
			reg = <0x48048000 0x400>;
			interrupts = <0x5e>;
			ti,hwmods = "timer6";
			ti,timer-pwm;
			linux,phandle = <0x33>;
			phandle = <0x33>;
		};

		timer@4804a000 {
			compatible = "ti,omap2-timer";
			reg = <0x4804a000 0x400>;
			interrupts = <0x5f>;
			ti,hwmods = "timer7";
			ti,timer-pwm;
			linux,phandle = <0x34>;
			phandle = <0x34>;
		};

		pruss@4a300000 {
			compatible = "ti,pruss-v2";
			ti,hwmods = "pruss";
			ti,deassert-hard-reset = "pruss", "pruss";
			reg = <0x4a300000 0x80000>;
			ti,pintc-offset = <0x20000>;
			interrupt-parent = <0x1>;
			status = "disabled";
			interrupts = <0x14 0x15 0x16 0x17 0x18 0x19 0x1a 0x1b>;
			linux,phandle = <0x35>;
			phandle = <0x35>;
		};

		rtc@44e3e000 {
			compatible = "ti,da830-rtc";
			reg = <0x44e3e000 0x1000>;
			interrupts = <0x4b 0x4c>;
			ti,hwmods = "rtc";
			ti,system-power-controller;
		};

		spi@48030000 {
			compatible = "ti,omap4-mcspi";
			#address-cells = <0x1>;
			#size-cells = <0x0>;
			reg = <0x48030000 0x400>;
			interrupt = <0x41>;
			ti,spi-num-cs = <0x2>;
			ti,hwmods = "spi0";
			dmas = <0x7 0x10 0x7 0x11 0x7 0x12 0x7 0x13>;
			dma-names = "tx0", "rx0", "tx1", "rx1";
			status = "okay";
			linux,phandle = <0x36>;
			phandle = <0x36>;

			m25p80@0 {
				#address-cells = <0x1>;
				#size-cells = <0x1>;
				compatible = "atmel,at25df641";
				reg = <0x0>;
				spi-max-frequency = <0x2625a00>;
				m25p,fast-read;
				linux,phandle = <0x37>;
				phandle = <0x37>;

				spl@0 {
					label = "U-Boot SPL";
					reg = <0x0 0x80000>;
					read-only;
				};

				uboot@80000 {
					label = "U-Boot";
					reg = <0x80000 0x70000>;
					read-only;
				};

				ubootenv@F0000 {
					label = "U-Boot Environment";
					reg = <0xf0000 0x10000>;
				};

				uImage@100000 {
					label = "Linux Kernel";
					reg = <0x100000 0x500000>;
					read-only;
				};

				ethaddr@7F0000 {
					label = "MAC Address";
					reg = <0x7f0000 0x10000>;
				};
			};
		};

		spi@481a0000 {
			compatible = "ti,omap4-mcspi";
			#address-cells = <0x1>;
			#size-cells = <0x0>;
			reg = <0x481a0000 0x400>;
			interrupt = <0x7d>;
			ti,spi-num-cs = <0x2>;
			ti,hwmods = "spi1";
			dmas = <0x7 0x2a 0x7 0x2b 0x7 0x2c 0x7 0x2d>;
			dma-names = "tx0", "rx0", "tx1", "rx1";
			status = "disabled";
			linux,phandle = <0x38>;
			phandle = <0x38>;
		};

		gpmc@50000000 {
			compatible = "ti,am3352-gpmc";
			ti,hwmods = "gpmc";
			reg = <0x50000000 0x1000000>;
			interrupts = <0x64>;
			gpmc,num-cs = <0x7>;
			gpmc,num-waitpins = <0x2>;
			#address-cells = <0x2>;
			#size-cells = <0x1>;
			status = "disabled";
			linux,phandle = <0x39>;
			phandle = <0x39>;
		};

		nop-phy@0 {
			compatible = "nop-xceiv-usb";
		};

		nop-phy@1 {
			compatible = "nop-xceiv-usb";
		};

		usb@47400000 {
			compatible = "ti,musb-am33xx";
			reg = <0x47400000 0x1000 0x47401000 0x800 0x47401800 0x800>;
			interrupts = <0x11 0x12 0x13>;
			multipoint = <0x1>;
			num-eps = <0x10>;
			ram-bits = <0xc>;
			port0-mode = <0x1>;
			port1-mode = <0x1>;
			power = <0xfa>;
			ti,hwmods = "usb_otg_hs";
			status = "okay";
			interface_type = <0x1>;
			linux,phandle = <0x3a>;
			phandle = <0x3a>;
		};

		ethernet@4a100000 {
			compatible = "ti,cpsw";
			ti,hwmods = "cpgmac0";
			cpdma_channels = <0x8>;
			ale_entries = <0x400>;
			bd_ram_size = <0x2000>;
			no_bd_ram = <0x0>;
			rx_descs = <0x40>;
			mac_control = <0x20>;
			slaves = <0x2>;
			cpts_active_slave = <0x0>;
			cpts_clock_mult = <0x80000000>;
			cpts_clock_shift = <0x1d>;
			reg = <0x4a100000 0x800 0x4a101200 0x100>;
			#address-cells = <0x1>;
			#size-cells = <0x1>;
			interrupt-parent = <0x1>;
			interrupts = <0x28 0x29 0x2a 0x2b>;
			ranges;
			disable-napi;
			linux,phandle = <0x3b>;
			phandle = <0x3b>;

			mdio@4a101000 {
				compatible = "ti,davinci_mdio";
				#address-cells = <0x1>;
				#size-cells = <0x0>;
				ti,hwmods = "davinci_mdio";
				bus_freq = <0xf4240>;
				reg = <0x4a101000 0x100>;
				linux,phandle = <0xc>;
				phandle = <0xc>;
			};

			slave@4a100200 {
				mac-address = [00 00 00 00 00 00];
				phy_id = <0xc 0x1>;
				linux,phandle = <0x3c>;
				phandle = <0x3c>;
			};

			slave@4a100300 {
				mac-address = [00 00 00 00 00 00];
				phy_id = <0xc 0x1>;
				linux,phandle = <0x3d>;
				phandle = <0x3d>;
			};
		};

		tscadc@44e0d000 {
			compatible = "ti,ti-tscadc";
			reg = <0x44e0d000 0x1000>;
			interrupt-parent = <0x1>;
			interrupts = <0x10>;
			ti,hwmods = "adc_tsc";
			status = "disabled";
			linux,phandle = <0x3e>;
			phandle = <0x3e>;
		};

		lcdc@4830e000 {
			compatible = "ti,am3352-lcdc", "ti,da830-lcdc";
			reg = <0x4830e000 0x1000>;
			interrupts = <0x24>;
			status = "disabled";
			ti,hwmods = "lcdc";
			linux,phandle = <0x3f>;
			phandle = <0x3f>;
		};

		epwmss@48300000 {
			compatible = "ti,am33xx-pwmss";
			reg = <0x48300000 0x10>;
			ti,hwmods = "epwmss0";
			#address-cells = <0x1>;
			#size-cells = <0x1>;
			status = "disabled";
			ranges = <0x48300100 0x48300100 0x80 0x48300180 0x48300180 0x80 0x48300200 0x48300200 0x80>;
			linux,phandle = <0x40>;
			phandle = <0x40>;

			ecap@48300100 {
				compatible = "ti,am33xx-ecap";
				#pwm-cells = <0x3>;
				reg = <0x48300100 0x80>;
				ti,hwmods = "ecap0";
				status = "disabled";
				linux,phandle = <0x41>;
				phandle = <0x41>;
			};

			ehrpwm@48300200 {
				compatible = "ti,am33xx-ehrpwm";
				#pwm-cells = <0x3>;
				reg = <0x48300200 0x80>;
				ti,hwmods = "ehrpwm0";
				status = "disabled";
				linux,phandle = <0x42>;
				phandle = <0x42>;
			};
		};

		epwmss@48302000 {
			compatible = "ti,am33xx-pwmss";
			reg = <0x48302000 0x10>;
			ti,hwmods = "epwmss1";
			#address-cells = <0x1>;
			#size-cells = <0x1>;
			status = "disabled";
			ranges = <0x48302100 0x48302100 0x80 0x48302180 0x48302180 0x80 0x48302200 0x48302200 0x80>;
			linux,phandle = <0x43>;
			phandle = <0x43>;

			ecap@48302100 {
				compatible = "ti,am33xx-ecap";
				#pwm-cells = <0x3>;
				reg = <0x48302100 0x80>;
				ti,hwmods = "ecap1";
				status = "disabled";
				linux,phandle = <0x44>;
				phandle = <0x44>;
			};

			ehrpwm@48302200 {
				compatible = "ti,am33xx-ehrpwm";
				#pwm-cells = <0x3>;
				reg = <0x48302200 0x80>;
				ti,hwmods = "ehrpwm1";
				status = "disabled";
				linux,phandle = <0x45>;
				phandle = <0x45>;
			};
		};

		epwmss@48304000 {
			compatible = "ti,am33xx-pwmss";
			reg = <0x48304000 0x10>;
			ti,hwmods = "epwmss2";
			#address-cells = <0x1>;
			#size-cells = <0x1>;
			status = "disabled";
			ranges = <0x48304100 0x48304100 0x80 0x48304180 0x48304180 0x80 0x48304200 0x48304200 0x80>;
			linux,phandle = <0x46>;
			phandle = <0x46>;

			ecap@48304100 {
				compatible = "ti,am33xx-ecap";
				#pwm-cells = <0x3>;
				reg = <0x48304100 0x80>;
				ti,hwmods = "ecap2";
				status = "disabled";
				linux,phandle = <0x47>;
				phandle = <0x47>;
			};

			ehrpwm@48304200 {
				compatible = "ti,am33xx-ehrpwm";
				#pwm-cells = <0x3>;
				reg = <0x48304200 0x80>;
				ti,hwmods = "ehrpwm2";
				status = "disabled";
				linux,phandle = <0x48>;
				phandle = <0x48>;
			};
		};

		sham@53100000 {
			compatible = "ti,omap4-sham";
			ti,hwmods = "sham";
			#address-cells = <0x1>;
			#size-cells = <0x0>;
			reg = <0x53100000 0x200>;
			interrupt-parent = <0x1>;
			interrupts = <0x6d>;
			dmas = <0x7 0x24>;
			dma-names = "rx";
			status = "okay";
			linux,phandle = <0x49>;
			phandle = <0x49>;
		};

		aes@53500000 {
			compatible = "ti,omap4-aes";
			ti,hwmods = "aes";
			#address-cells = <0x1>;
			#size-cells = <0x0>;
			reg = <0x53500000 0xa0>;
			interrupt-parent = <0x1>;
			interrupts = <0x66>;
			dmas = <0x7 0x6 0x7 0x5>;
			dma-names = "tx", "rx";
			status = "okay";
			linux,phandle = <0x4a>;
			phandle = <0x4a>;
		};

		mcasp@48038000 {
			compatible = "ti,omap2-mcasp-audio";
			#address-cells = <0x1>;
			#size-cells = <0x0>;
			ti,hwmods = "mcasp0";
			reg = <0x48038000 0x2000>;
			interrupts = <0x50 0x51>;
			status = "okay";
			asp-chan-q = <0x2>;
			tx-dma-offset = <0x46000000>;
			rx-dma-offset = <0x46000000>;
			dmas = <0x7 0x8 0x7 0x9>;
			dma-names = "tx", "rx";
			pinctrl-names = "default";
			pinctrl-0 = <0xd>;
			op-mode = <0x0>;
			tdm-slots = <0x2>;
			num-serializer = <0x10>;
			serial-dir = <0x1 0x2 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>;
			tx-num-evt = <0x1>;
			rx-num-evt = <0x1>;
			linux,phandle = <0xf>;
			phandle = <0xf>;
		};

		mcasp@4803C000 {
			compatible = "ti,omap2-mcasp-audio";
			#address-cells = <0x1>;
			#size-cells = <0x0>;
			ti,hwmods = "mcasp1";
			reg = <0x4803c000 0x2000>;
			interrupts = <0x52 0x53>;
			status = "disabled";
			asp-chan-q = <0x2>;
			tx-dma-offset = <0x46400000>;
			rx-dma-offset = <0x46400000>;
			dmas = <0x7 0xa 0x7 0xb>;
			dma-names = "tx", "rx";
			linux,phandle = <0x4b>;
			phandle = <0x4b>;
		};

		sound {
			compatible = "sa,am335x-sa-roomplayer-audio";
			sa,model = "Simple Audio AM335x Roomplayer";
			sa,audio-codec = <0xe>;
			sa,mcasp-controller = <0xf>;
			sa,codec-clock-rate-44100 = <0xac4400>;
			sa,codec-clock-rate-48000 = <0x1770000>;
		};
	};

	fixedregulator@0 {
		compatible = "regulator-fixed";
		regulator-name = "vmmcsd_fixed";
		regulator-min-microvolt = <0x325aa0>;
		regulator-max-microvolt = <0x325aa0>;
		linux,phandle = <0x8>;
		phandle = <0x8>;
	};

	__symbols__ {
		cpu = "/cpus/cpu@0";
		am33xx_pinmux = "/pinmux@44e10800";
		i2c0_pins = "/pinmux@44e10800/pinmux_i2c0_pins";
		uart2_pins = "/pinmux@44e10800/pinmux_uart2_pins";
		rstctl_pins = "/pinmux@44e10800/pinmux_rstctl_pins";
		emmc2_pins = "/pinmux@44e10800/pinmux_emmc2_pins";
		mcasp0_pins = "/pinmux@44e10800/pinmux_mcasp0_pins";
		ocp = "/ocp";
		intc = "/ocp/interrupt-controller@48200000";
		edma = "/ocp/edma@49000000";
		gpio1 = "/ocp/gpio@44e07000";
		gpio2 = "/ocp/gpio@4804c000";
		gpio3 = "/ocp/gpio@481ac000";
		gpio4 = "/ocp/gpio@481ae000";
		rstctl = "/ocp/rstctl@0";
		uart1 = "/ocp/serial@44e09000";
		uart2 = "/ocp/serial@48022000";
		uart3 = "/ocp/serial@48024000";
		uart4 = "/ocp/serial@481a6000";
		uart5 = "/ocp/serial@481a8000";
		uart6 = "/ocp/serial@481aa000";
		i2c0 = "/ocp/i2c@44e0b000";
		pca9554_0 = "/ocp/i2c@44e0b000/pca9554@20";
		pca9554_1 = "/ocp/i2c@44e0b000/pca9554@22";
		pca9554_2 = "/ocp/i2c@44e0b000/pca9554@23";
		tps = "/ocp/i2c@44e0b000/tps@24";
		dcdc1_reg = "/ocp/i2c@44e0b000/tps@24/regulators/regulator@0";
		dcdc2_reg = "/ocp/i2c@44e0b000/tps@24/regulators/regulator@1";
		dcdc3_reg = "/ocp/i2c@44e0b000/tps@24/regulators/regulator@2";
		ldo1_reg = "/ocp/i2c@44e0b000/tps@24/regulators/regulator@3";
		ldo2_reg = "/ocp/i2c@44e0b000/tps@24/regulators/regulator@4";
		ldo3_reg = "/ocp/i2c@44e0b000/tps@24/regulators/regulator@5";
		ldo4_reg = "/ocp/i2c@44e0b000/tps@24/regulators/regulator@6";
		wm8776 = "/ocp/i2c@44e0b000/wm8776@1b";
		i2c1 = "/ocp/i2c@4802a000";
		i2c2 = "/ocp/i2c@4819c000";
		mmc1 = "/ocp/mmc@48060000";
		mmc2 = "/ocp/mmc@481d8000";
		mmc3 = "/ocp/mmc@47810000";
		wdt2 = "/ocp/wdt@44e35000";
		dcan0 = "/ocp/d_can@481cc000";
		dcan1 = "/ocp/d_can@481d0000";
		timer1 = "/ocp/timer@44e31000";
		timer2 = "/ocp/timer@48040000";
		timer3 = "/ocp/timer@48042000";
		timer4 = "/ocp/timer@48044000";
		timer5 = "/ocp/timer@48046000";
		timer6 = "/ocp/timer@48048000";
		timer7 = "/ocp/timer@4804a000";
		pruss = "/ocp/pruss@4a300000";
		spi0 = "/ocp/spi@48030000";
		flash = "/ocp/spi@48030000/m25p80@0";
		spi1 = "/ocp/spi@481a0000";
		gpmc = "/ocp/gpmc@50000000";
		usb_otg_hs = "/ocp/usb@47400000";
		mac = "/ocp/ethernet@4a100000";
		davinci_mdio = "/ocp/ethernet@4a100000/mdio@4a101000";
		cpsw_emac0 = "/ocp/ethernet@4a100000/slave@4a100200";
		cpsw_emac1 = "/ocp/ethernet@4a100000/slave@4a100300";
		tscadc = "/ocp/tscadc@44e0d000";
		lcdc = "/ocp/lcdc@4830e000";
		epwmss0 = "/ocp/epwmss@48300000";
		ecap0 = "/ocp/epwmss@48300000/ecap@48300100";
		ehrpwm0 = "/ocp/epwmss@48300000/ehrpwm@48300200";
		epwmss1 = "/ocp/epwmss@48302000";
		ecap1 = "/ocp/epwmss@48302000/ecap@48302100";
		ehrpwm1 = "/ocp/epwmss@48302000/ehrpwm@48302200";
		epwmss2 = "/ocp/epwmss@48304000";
		ecap2 = "/ocp/epwmss@48304000/ecap@48304100";
		ehrpwm2 = "/ocp/epwmss@48304000/ehrpwm@48304200";
		sham = "/ocp/sham@53100000";
		aes = "/ocp/aes@53500000";
		mcasp0 = "/ocp/mcasp@48038000";
		mcasp1 = "/ocp/mcasp@4803C000";
		vmmcsd_fixed = "/fixedregulator@0";
	};
};

I also tried a simple DTB. Output:

Bytes transferred = 2705049 (294699 hex)
## Booting kernel from Legacy Image at 80007fc0 ...
   Image Name:   Linux-4.1.6+
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2673552 Bytes = 2.5 MiB
   Load Address: 80008000
   Entry Point:  80008000
   Verifying Checksum ... OK
   XIP Kernel Image ... OK
OK

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 4.1.6+ (root@debian) (gcc version 4.9.4 (Linaro GCC 4.9-2017.01) ) #3 Mon Mar 14 23:01:56 EDT 2022
[    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine model: TI AM335x BeagleBone Black
[    0.000000] bootconsole [earlycon0] enabled
[    0.000000] Memory policy: Data cache writeback
[    0.000000] CPU: All CPU(s) started in SVC mode.
[    0.000000] AM335X ES2.1 (neon )
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 129664
[    0.000000] Kernel command line: console=ttyO0,115200n8 earlyprintk drm.debug=7 root=/dev/mmcblk0p2 rw rootfstype=ext4 rootwait
[    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] Memory: 512804K/523264K available (3277K kernel code, 257K rwdata, 1128K rodata, 184K init, 285K bss, 10460K reserved, 0K cma-reserved, 0K highmem)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]     vmalloc : 0xe0800000 - 0xff000000   ( 488 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]       .text : 0xc0008000 - 0xc04557cc   (4406 kB)
[    0.000000]       .init : 0xc0456000 - 0xc0484000   ( 184 kB)
[    0.000000]       .data : 0xc0484000 - 0xc04c4560   ( 258 kB)
[    0.000000]        .bss : 0xc04c4560 - 0xc050b974   ( 286 kB)
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
[    0.000000] OMAP clockevent source: timer2 at 24000000 Hz
[    0.000018] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
[    0.008180] clocksource timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
[    0.017670] OMAP clocksource: timer1 at 24000000 Hz
[    0.023213] Console: colour dummy device 80x30
[    0.027914] Calibrating delay loop... 547.32 BogoMIPS (lpj=547328)
[    0.053967] pid_max: default: 32768 minimum: 301
[    0.058995] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.065917] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.074251] Initializing cgroup subsys blkio
[    0.078799] Initializing cgroup subsys memory
[    0.083457] CPU: Testing write buffer coherency: ok
[    0.089024] Setting up static identity map for 0x800082c0 - 0x80008318
[    0.097567] devtmpfs: initialized
[    0.117466] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
[    0.142063] omap_hwmod: tptc0 using broken dt data from edma
[    0.148178] omap_hwmod: tptc1 using broken dt data from edma
[    0.154283] omap_hwmod: tptc2 using broken dt data from edma
[    0.165704] omap_hwmod: debugss: _wait_target_disable failed
[    0.227123] clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 3822520892550000 ns
[    0.237717] pinctrl core: initialized pinctrl subsystem
[    0.244854] NET: Registered protocol family 16
[    0.250267] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.272916] hw-breakpoint: debug architecture 0x4 unsupported.
[    0.297078] edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver
[    0.307082] omap_i2c 44e0b000.i2c: could not find pctldev for node /ocp/l4_wkup@44c00000/scm@210000/pinmux@800/pinmux_i2c0_pins, deferring probe
[    0.321844] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
[    0.329576] Switched to clocksource timer1
[    0.350099] NET: Registered protocol family 2
[    0.355993] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
[    0.363566] TCP bind hash table entries: 4096 (order: 4, 81920 bytes)
[    0.370496] TCP: Hash tables configured (established 4096 bind 4096)
[    0.377248] UDP hash table entries: 256 (order: 1, 12288 bytes)
[    0.383488] UDP-Lite hash table entries: 256 (order: 1, 12288 bytes)
[    0.390419] NET: Registered protocol family 1
[    0.395535] CPU PMU: Failed to parse /pmu/interrupt-affinity[0]
[    0.401815] hw perfevents: enabled with armv7_cortex_a8 PMU driver, 5 counters available
[    0.413028] futex hash table entries: 256 (order: 0, 7168 bytes)
[    0.421242] VFS: Disk quotas dquot_6.6.0
[    0.425548] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    0.435115] alg: No test for crc32 (crc32-table)
[    0.440469] alg: No test for stdrng (krng)
[    0.444994] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 254)
[    0.452825] io scheduler noop registered
[    0.456988] io scheduler deadline registered
[    0.461532] io scheduler cfq registered (default)
[    0.467535] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
[    0.475657] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[    0.484811] omap_uart 44e09000.serial: no wakeirq for uart0
[    0.490845] 44e09000.serial: ttyO0 at MMIO 0x44e09000 (irq = 27, base_baud = 3000000) is a OMAP UART0
[    0.500575] console [ttyO0] enabled
[    0.500575] console [ttyO0] enabled
[    0.507914] bootconsole [earlycon0] disabled
[    0.507914] bootconsole [earlycon0] disabled
[    0.534428] brd: module loaded
[    0.545981] loop: module loaded
[    0.551014] i2c /dev entries driver
[    0.581437]  remoteproc0: wkup_m3 is available
[    0.586146]  remoteproc0: Note: remoteproc is still under development and considered experimental.
[    0.595520]  remoteproc0: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
[    0.608335] Initializing XFRM netlink socket
[    0.614910] NET: Registered protocol family 17
[    0.619710] NET: Registered protocol family 15
[    0.624572] Key type dns_resolver registered
[    0.629321] omap_voltage_late_init: Voltage driver support not added
[    0.636817] ThumbEE CPU extension supported.
[    0.641405] Registering SWP/SWPB emulation handler
[    0.652984] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
[    0.688536] mmc0: MAN_BKOPS_EN bit is not set
[    0.696908] mmc0: new high speed MMC card at address 0001
[    0.703343] mmcblk0: mmc0:0001 MMC04G 3.65 GiB
[    0.708151] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6
[    0.714539] davinci_mdio 4a101000.mdio: detected phy mask fff1
[    0.720877] mmcblk0boot0: mmc0:0001 MMC04G partition 1 1.00 MiB
[    0.729946] mmcblk0boot1: mmc0:0001 MMC04G partition 2 1.00 MiB
[    0.743397] libphy: 4a101000.mdio: probed
[    0.747695] davinci_mdio 4a101000.mdio: phy[1]: device 4a101000.mdio:01, driver unknown
[    0.756076] davinci_mdio 4a101000.mdio: phy[2]: device 4a101000.mdio:02, driver SMSC LAN911x Internal PHY
[    0.766079] davinci_mdio 4a101000.mdio: phy[3]: device 4a101000.mdio:03, driver SMSC LAN911x Internal PHY
[    0.776080] davinci_mdio 4a101000.mdio: phy[16]: device 4a101000.mdio:10, driver unknown
[    0.784541] davinci_mdio 4a101000.mdio: phy[17]: device 4a101000.mdio:11, driver unknown
[    0.793001] davinci_mdio 4a101000.mdio: phy[18]: device 4a101000.mdio:12, driver unknown
[    0.801465] davinci_mdio 4a101000.mdio: phy[19]: device 4a101000.mdio:13, driver unknown
[    0.809927] davinci_mdio 4a101000.mdio: phy[20]: device 4a101000.mdio:14, driver unknown
[    0.818387] davinci_mdio 4a101000.mdio: phy[21]: device 4a101000.mdio:15, driver unknown
[    0.826846] davinci_mdio 4a101000.mdio: phy[22]: device 4a101000.mdio:16, driver unknown
[    0.835306] davinci_mdio 4a101000.mdio: phy[23]: device 4a101000.mdio:17, driver unknown
[    0.843766] davinci_mdio 4a101000.mdio: phy[24]: device 4a101000.mdio:18, driver unknown
[    0.852226] davinci_mdio 4a101000.mdio: phy[25]: device 4a101000.mdio:19, driver unknown
[    0.860686] davinci_mdio 4a101000.mdio: phy[26]: device 4a101000.mdio:1a, driver unknown
[    0.869145] davinci_mdio 4a101000.mdio: phy[27]: device 4a101000.mdio:1b, driver unknown
[    0.877605] davinci_mdio 4a101000.mdio: phy[28]: device 4a101000.mdio:1c, driver unknown
[    0.886065] davinci_mdio 4a101000.mdio: phy[29]: device 4a101000.mdio:1d, driver unknown
[    0.894524] davinci_mdio 4a101000.mdio: phy[30]: device 4a101000.mdio:1e, driver unknown
[    0.902984] davinci_mdio 4a101000.mdio: phy[31]: device 4a101000.mdio:1f, driver unknown
[    0.911610]  mmcblk0: p1 p2 p3 p4
[    0.921191] cpsw 4a100000.ethernet: Detected MACID = d0:ff:50:01:21:02
[    1.152597] EXT4-fs (mmcblk0p2): warning: maximal mount count reached, running e2fsck is recommended
[    1.164392] EXT4-fs (mmcblk0p2): recovery complete
[    1.171045] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[    1.179616] VFS: Mounted root (ext4 filesystem) on device 179:2.
[    1.198916] devtmpfs: mounted
[    1.202508] Freeing unused kernel memory: 184K (c0456000 - c0484000)
[    1.306328] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
[    1.306328]
[    1.315895] CPU: 0 PID: 1 Comm: init Not tainted 4.1.6+ #3
[    1.321621] Hardware name: Generic AM33XX (Flattened Device Tree)
[    1.328039] [<c0012b20>] (unwind_backtrace) from [<c00112b8>] (show_stack+0x10/0x14)
[    1.336145] [<c00112b8>] (show_stack) from [<c031af48>] (panic+0x84/0x1e4)
[    1.343344] [<c031af48>] (panic) from [<c0032284>] (do_exit+0x40c/0x7e4)
[    1.350351] [<c0032284>] (do_exit) from [<c00326d4>] (do_group_exit+0x4c/0xbc)
[    1.357905] [<c00326d4>] (do_group_exit) from [<c0039ec0>] (get_signal+0x458/0x4ac)
[    1.365910] [<c0039ec0>] (get_signal) from [<c0010b54>] (do_signal+0x8c/0x370)
[    1.373461] [<c0010b54>] (do_signal) from [<c0010f98>] (do_work_pending+0x54/0xac)
[    1.381374] [<c0010f98>] (do_work_pending) from [<c000e6ac>] (work_pending+0xc/0x20)
[    1.389464] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
[    1.389464]
[   16.909630] random: nonblocking pool is initialized

DTB:

/dts-v1/;

#include "am33xx.dtsi"
#include "am335x-bone-common.dtsi"

/ {
    model = "TI AM335x BeagleBone Black";
    compatible = "ti,am335x-bone-black", "ti,am335x-bone", "ti,am33xx";
};

&ldo3_reg {
    regulator-min-microvolt = <1800000>;
    regulator-max-microvolt = <1800000>;
    regulator-always-on;
};

&mmc1 {
    vmmc-supply = <&vmmcsd_fixed>;
};

&mmc2 {
    vmmc-supply = <&vmmcsd_fixed>;
    pinctrl-names = "default";
    pinctrl-0 = <&emmc_pins>;
    bus-width = <8>;
    status = "okay";
};

Anybody have any pointers where i should focus at? I cant seem to figure it out. THanks in advance!

Best regards,

Lars

  • Hi Lars,

    The device tree is appended to the kernel.

    Please explain how exactly device tree is appended to kernel image. console log showing the process would be helpful.

  • CONFIG_ARM_APPENDEND_DTB = y

    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LOADADDR=0x80008000 uImage
    cat ./arch/arm/boot/uImage ./arch/arm/boot/dts/devicetree.dtb > ./uImage

    I think this is what you mean?

  • Hi Lars,

    Appending dtb to kernel image is not validated in Processor SDK. I am not sure the image generated using this simple 'cat' command is correct. At least I can tell the metadata in the uImage header is not updated.

    Sorry but this usecase is out of the support scope on this forums.

  • Hello, thanks for your message I did now use a zImage and the dtb apart from each other and i’am getting the same results. Do you maybe have any idea what the problem may be?

  • Hello Bin Liu,

    Many thanks for your help again. Bringing up the board using the simple Hello_World.dts gives the expected output, but when I try to boot from MMC again I get the same results.

    Starting kernel ...
    
    [    0.000000] Booting Linux on physical CPU 0x0
    [    0.000000] Initializing cgroup subsys cpu
    [    0.000000] Initializing cgroup subsys cpuacct
    [    0.000000] Linux version 4.1.6+ (root@debian) (gcc version 4.9.4 (Linaro GCC 4.9-2017.01) ) #3 Mon Mar 14 23:01:56 EDT 2022
    [    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
    [    0.000000] Machine model: TI AM335x Hello World
    [    0.000000] bootconsole [earlycon0] enabled
    [    0.000000] Memory policy: Data cache writeback
    [    0.000000] CPU: All CPU(s) started in SVC mode.
    [    0.000000] AM335X ES2.1 (neon )
    [    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 129664
    [    0.000000] Kernel command line: console=ttyO0,115200n8 earlyprintk drm.debug=7 root=/dev/mmcblk0p2 rw rootfstype=ext4 rootwait
    [    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
    [    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
    [    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
    [    0.000000] Memory: 512816K/523264K available (3277K kernel code, 257K rwdata, 1128K rodata, 184K init, 285K bss, 10448K reserved, 0K cma-reserved, 0K highmem)
    [    0.000000] Virtual kernel memory layout:
    [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    [    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
    [    0.000000]     vmalloc : 0xe0800000 - 0xff000000   ( 488 MB)
    [    0.000000]     lowmem  : 0xc0000000 - 0xe0000000   ( 512 MB)
    [    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
    [    0.000000]       .text : 0xc0008000 - 0xc04557cc   (4406 kB)
    [    0.000000]       .init : 0xc0456000 - 0xc0484000   ( 184 kB)
    [    0.000000]       .data : 0xc0484000 - 0xc04c4560   ( 258 kB)
    [    0.000000]        .bss : 0xc04c4560 - 0xc050b974   ( 286 kB)
    [    0.000000] NR_IRQS:16 nr_irqs:16 16
    [    0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
    [    0.000000] OMAP clockevent source: timer2 at 24000000 Hz
    [    0.000017] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
    [    0.008179] clocksource timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
    [    0.017669] OMAP clocksource: timer1 at 24000000 Hz
    [    0.023193] Console: colour dummy device 80x30
    [    0.027904] Calibrating delay loop... 547.32 BogoMIPS (lpj=547328)
    [    0.054049] pid_max: default: 32768 minimum: 301
    [    0.059075] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.065997] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
    [    0.074330] Initializing cgroup subsys blkio
    [    0.078874] Initializing cgroup subsys memory
    [    0.083532] CPU: Testing write buffer coherency: ok
    [    0.089092] Setting up static identity map for 0x800082c0 - 0x80008318
    [    0.097621] devtmpfs: initialized
    [    0.115780] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
    [    0.139098] omap_hwmod: tptc0 using broken dt data from edma
    [    0.145207] omap_hwmod: tptc1 using broken dt data from edma
    [    0.151314] omap_hwmod: tptc2 using broken dt data from edma
    [    0.162555] omap_hwmod: debugss: _wait_target_disable failed
    [    0.223980] clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 3822520892550000 ns
    [    0.234531] pinctrl core: initialized pinctrl subsystem
    [    0.241704] NET: Registered protocol family 16
    [    0.247094] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [    0.268133] hw-breakpoint: debug architecture 0x4 unsupported.
    [    0.292125] edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver
    [    0.303088] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
    [    0.310781] Switched to clocksource timer1
    [    0.331333] NET: Registered protocol family 2
    [    0.337225] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
    [    0.344825] TCP bind hash table entries: 4096 (order: 4, 81920 bytes)
    [    0.351731] TCP: Hash tables configured (established 4096 bind 4096)
    [    0.358486] UDP hash table entries: 256 (order: 1, 12288 bytes)
    [    0.364725] UDP-Lite hash table entries: 256 (order: 1, 12288 bytes)
    [    0.371652] NET: Registered protocol family 1
    [    0.376755] CPU PMU: Failed to parse /pmu/interrupt-affinity[0]
    [    0.383032] hw perfevents: enabled with armv7_cortex_a8 PMU driver, 5 counters available
    [    0.394152] futex hash table entries: 256 (order: 0, 7168 bytes)
    [    0.402340] VFS: Disk quotas dquot_6.6.0
    [    0.406644] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
    [    0.416191] alg: No test for crc32 (crc32-table)
    [    0.421541] alg: No test for stdrng (krng)
    [    0.426073] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 254)
    [    0.433904] io scheduler noop registered
    [    0.438068] io scheduler deadline registered
    [    0.442615] io scheduler cfq registered (default)
    [    0.448507] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
    [    0.456532] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
    [    0.465611] omap_uart 44e09000.serial: no wakeirq for uart0
    [    0.471644] 44e09000.serial: ttyO0 at MMIO 0x44e09000 (irq = 27, base_baud = 3000000) is a OMAP UART0
    [    0.481374] console [ttyO0] enabled
    [    0.481374] console [ttyO0] enabled
    [    0.488713] bootconsole [earlycon0] disabled
    [    0.488713] bootconsole [earlycon0] disabled
    [    0.515168] brd: module loaded
    [    0.526819] loop: module loaded
    [    0.531794] i2c /dev entries driver
    [    0.562600]  remoteproc0: wkup_m3 is available
    [    0.567309]  remoteproc0: Note: remoteproc is still under development and considered experimental.
    [    0.576682]  remoteproc0: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
    [    0.589471] Initializing XFRM netlink socket
    [    0.596049] NET: Registered protocol family 17
    [    0.600867] NET: Registered protocol family 15
    [    0.605666] Key type dns_resolver registered
    [    0.610417] omap_voltage_late_init: Voltage driver support not added
    [    0.617905] ThumbEE CPU extension supported.
    [    0.622477] Registering SWP/SWPB emulation handler
    [    0.640120] Waiting for root device /dev/mmcblk0p2...
    [    0.659607] mmc0: MAN_BKOPS_EN bit is not set
    [    0.667949] mmc0: new high speed MMC card at address 0001
    [    0.674413] mmcblk0: mmc0:0001 MMC04G 3.65 GiB
    [    0.679411] mmcblk0boot0: mmc0:0001 MMC04G partition 1 1.00 MiB
    [    0.685844] mmcblk0boot1: mmc0:0001 MMC04G partition 2 1.00 MiB
    [    0.694352]  mmcblk0: p1 p2 p3 p4
    [    0.753742] EXT4-fs (mmcblk0p2): warning: maximal mount count reached, running e2fsck is recommended
    [    0.805888] EXT4-fs (mmcblk0p2): recovery complete
    [    0.810954] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
    [    0.819484] VFS: Mounted root (ext4 filesystem) on device 179:2.
    [    0.830274] devtmpfs: mounted
    [    0.833862] Freeing unused kernel memory: 184K (c0456000 - c0484000)
    [    0.921856] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
    [    0.921856]
    [    0.931418] CPU: 0 PID: 1 Comm: init Not tainted 4.1.6+ #3
    [    0.937142] Hardware name: Generic AM33XX (Flattened Device Tree)
    [    0.943556] [<c0012b20>] (unwind_backtrace) from [<c00112b8>] (show_stack+0x10/0x14)
    [    0.951647] [<c00112b8>] (show_stack) from [<c031af48>] (panic+0x84/0x1e4)
    [    0.958836] [<c031af48>] (panic) from [<c0032284>] (do_exit+0x40c/0x7e4)
    [    0.965834] [<c0032284>] (do_exit) from [<c00326d4>] (do_group_exit+0x4c/0xbc)
    [    0.973378] [<c00326d4>] (do_group_exit) from [<c0039ec0>] (get_signal+0x458/0x4ac)
    [    0.981371] [<c0039ec0>] (get_signal) from [<c0010b54>] (do_signal+0x8c/0x370)
    [    0.988911] [<c0010b54>] (do_signal) from [<c0010f98>] (do_work_pending+0x54/0xac)
    [    0.996813] [<c0010f98>] (do_work_pending) from [<c000e6ac>] (work_pending+0xc/0x20)
    [    1.004892] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
    [    1.004892]
    [   16.708833] random: nonblocking pool is initialized
    
    

    Output.

    /* This file was auto-generated by TI PinMux on 26-3-2022 at 10:56:39. */
    /* This file should only be used as a reference. Some pins/peripherals, */
    /* depending on your use case, may need additional configuration. */
    
    
    &am33xx_pinmux {
    	mmc0_pins_default: mmc0_pins_default {
    		pinctrl-single,pins = <
    			AM33XX_IOPAD(0x900, PIN_INPUT | MUX_MODE0) /* (G17) mmc0_clk.mmc0_clk */
    			AM33XX_IOPAD(0x904, PIN_INPUT | MUX_MODE0) /* (G18) mmc0_cmd.mmc0_cmd */
    			AM33XX_IOPAD(0x8fc, PIN_INPUT | MUX_MODE0) /* (G16) mmc0_dat0.mmc0_dat0 */
    			AM33XX_IOPAD(0x8f8, PIN_INPUT | MUX_MODE0) /* (G15) mmc0_dat1.mmc0_dat1 */
    			AM33XX_IOPAD(0x8f4, PIN_INPUT | MUX_MODE0) /* (F18) mmc0_dat2.mmc0_dat2 */
    			AM33XX_IOPAD(0x8f0, PIN_INPUT | MUX_MODE0) /* (F17) mmc0_dat3.mmc0_dat3 */
    		>;
    	};
    
    	mmc1_pins_default: mmc1_pins_default {
    		pinctrl-single,pins = <
    			AM33XX_IOPAD(0x880, PIN_INPUT | MUX_MODE2) /* (U9) gpmc_csn1.mmc1_clk */
    			AM33XX_IOPAD(0x884, PIN_INPUT | MUX_MODE2) /* (V9) gpmc_csn2.mmc1_cmd */
    			AM33XX_IOPAD(0x800, PIN_INPUT | MUX_MODE1) /* (U7) gpmc_ad0.mmc1_dat0 */
    			AM33XX_IOPAD(0x804, PIN_INPUT | MUX_MODE1) /* (V7) gpmc_ad1.mmc1_dat1 */
    			AM33XX_IOPAD(0x808, PIN_INPUT | MUX_MODE1) /* (R8) gpmc_ad2.mmc1_dat2 */
    			AM33XX_IOPAD(0x80c, PIN_INPUT | MUX_MODE1) /* (T8) gpmc_ad3.mmc1_dat3 */
    			AM33XX_IOPAD(0x810, PIN_INPUT | MUX_MODE1) /* (U8) gpmc_ad4.mmc1_dat4 */
    			AM33XX_IOPAD(0x814, PIN_INPUT | MUX_MODE1) /* (V8) gpmc_ad5.mmc1_dat5 */
    			AM33XX_IOPAD(0x818, PIN_INPUT | MUX_MODE1) /* (R9) gpmc_ad6.mmc1_dat6 */
    			AM33XX_IOPAD(0x81c, PIN_INPUT | MUX_MODE1) /* (T9) gpmc_ad7.mmc1_dat7 */
    		>;
    	};
    
    	uart0_pins_default: uart0_pins_default {
    		pinctrl-single,pins = <
    			AM33XX_IOPAD(0x970, PIN_INPUT | MUX_MODE0) /* (E15) uart0_rxd.uart0_rxd */
    			AM33XX_IOPAD(0x974, PIN_OUTPUT | MUX_MODE0) /* (E16) uart0_txd.uart0_txd */
    		>;
    	};
    };
    

    Pinmux

    /*
     * Copyright (C) 2020 Texas Instruments Incorporated - http://www.ti.com/
     *
     * This program is free software; you can redistribute it and/or modify
     * it under the terms of the GNU General Public License version 2 as
     * published by the Free Software Foundation.
     */
    /dts-v1/;
    
    #include "am33xx.dtsi"
    #include "devicetree.dtsi"
    / {
    	model = "TI AM335x Hello World ";
    	compatible = "ti,am335x-bone-black", "ti,am335x-bone", "ti,am33xx";
    
            memory@80000000 {
                    device_type = "memory";
                    reg = <0x80000000 0x10000000>; /* 256 MB */
            };
    
            chosen {
                    stdout-path = &uart0;
            };
    
            vmmcsd_fixed: fixedregulator0 {
                    compatible = "regulator-fixed";
                    regulator-name = "vmmcsd_fixed";
                    regulator-min-microvolt = <3300000>;
                    regulator-max-microvolt = <3300000>;
            };
    };
    
    &uart0 {
            pinctrl-names = "default";
            pinctrl-0 = <&uart0_pins_default>;
            status = "okay";
    };
    
    &mmc1 {
        vmmc-supply = <&vmmcsd_fixed>;
    };
    
    &mmc2 {
        vmmc-supply = <&vmmcsd_fixed>;
        pinctrl-names = "default";
        pinctrl-0 = <&mmc1_pins_default>;
        bus-width = <0x8>;
        status = "okay";
    };

    DTS

    I thought this should be able to mount the init. If I compare the the pins on the device tree I extracted, which I placed in my initial post, those pinmux is the same. What I'am wondering though is about the regulator as I am now have been using VMMC_Fixed which is at 3.3V while LDO3_REG in my original DTS is 1.8V. Could this cause any issues, or shall this be fine?

  • Hi Lars,

    [    0.819484] VFS: Mounted root (ext4 filesystem) on device 179:2.
    [    0.830274] devtmpfs: mounted
    [    0.833862] Freeing unused kernel memory: 184K (c0456000 - c0484000)
    [    0.921856] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b

    It seems your root filesystem is not correct. What rootfs do you use? Does it come from the Processor SDK package?

  • Hello, I use the rootfs that has been provided by the manufacturer of this device. Previously it worked with a 3.8 kernel.

  • Lars,

    You likely need to update the rootfs too while updating the kernel, if you don't know how to fix the old rootfs with the new kernels.

    The last line of the kernel message which I referred commonly due to kernel failed to execute 'init' process. In the rootfs in TI Processor SDK packages:

    # ls -l /init
    lrwxrwxrwx 1 1000 1000 20 Jun 17  2021 /init -> /lib/systemd/systemd

  • Tried a the simple minirootfs from Alpine, and it boots and mounts! Thanks a lot, again!

  • Glad to see the issue is solved. Thanks for the update.