bao-hypervisor icon indicating copy to clipboard operation
bao-hypervisor copied to clipboard

linux+freertos demo, how to know Linux run rightly?

Open wjhtinger opened this issue 2 years ago • 10 comments

I use TX2 board. I use TFTP in uboot to download bao.bin. The uboot IP is set as below: setenv serverip 192.168.42.16 setenv ipaddr 192.168.42.15

The UART log is: tftp 0xa0000000 bao.bin;go 0xa0000000

Starting application at 0xA0000000 ...

Bao Hypervisor BAO WARNING: smmuv2 does not support coherent page table walks Bao FreeRTOS guest Task1: 0 Task2: 0 Task1: 1 Task2: 1 Task1: 2 Task2: 2 Task1: 3

So,it looks like that the FreeRTOS run OK. But I dont know if the Linux run OK too. In README.md, it said that Linux has the static IP(192.168.42.15), but I cant ping it sucessfully and cant ssh it too. So ,what's wrong with Linux? How to debug?

wjhtinger avatar Oct 19 '21 10:10 wjhtinger

I believe it would be hard to debug on TX2 without any kind of external debugger. This was exactly my experience. I'd suggest changing the configuration to remove the freertos guest, while assigning the available uart to the Linux guest (also change the Linux guest device-tree to add the uart). Then with access to Linux through the serial console, try to investigate further why the ssh connection is not established.

Also, are you using our branch of TF-A? This is needed to setup the correct stream ids so the the SMMU correctly translates DMA requests from the ethernet controller.

josecm avatar Oct 19 '21 19:10 josecm

I believe it would be hard to debug on TX2 without any kind of external debugger. This was exactly my experience. I'd suggest changing the configuration to remove the freertos guest, while assigning the available uart to the Linux guest (also change the Linux guest device-tree to add the uart). Then with access to Linux through the serial console, try to investigate further why the ssh connection is not established.

Also, are you using our branch of TF-A? This is needed to setup the correct stream ids so the the SMMU correctly translates DMA requests from the ethernet controller.

I check that the TX2 has two UART, right? So, do you know how to config anohter UART to Linux?

wjhtinger avatar Oct 20 '21 00:10 wjhtinger

When I was working with the TX2 I was not aware of a second UART available in the pin header. But if its there, after figuring out its MMIO region and associated interrupt there are two steps:

  1. Adding the UART to Bao's Linux guest VM configuration in the device list.
  2. Adding the corresponding UART node to the Linux device tree.

Also you probably need to add the Linux command line parameter console in the chosen's node bootargs property.

josecm avatar Oct 20 '21 10:10 josecm

Hi, josecm. I have added the TX2 UART1 to Linux, it works now. But, the network still not work. I use ifconfig find there is no network device except lo. I checked the boot log, not find any error

Linux log as below:

[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x4e0f0030] [ 0.000000] Linux version 5.11.0 (wangjh@ubuntu) (aarch64-buildroot-linux-uclibc-gcc.br_real (Buildroot 2020.11.3) 8.4.0, GNU ld (GNU Binutils) 2.32) #2 SMP PREEMPT Wed Oct 13 01:06:49 PDT 2021 [ 0.000000] efi: UEFI not found. [ 0.000000] [Firmware Bug]: Kernel image misaligned at boot, please fix your bootloader! [ 0.000000] earlycon: ns16550 at MMIO 0x000000000c280000 (options '') [ 0.000000] printk: bootconsole [ns16550] enabled [ 0.000000] NUMA: No NUMA configuration found [ 0.000000] NUMA: Faking a node at [mem 0x0000000090000000-0x00000000cfffffff] [ 0.000000] NUMA: NODE_DATA [mem 0xcfdf8c00-0xcfdfafff] [ 0.000000] Zone ranges: [ 0.000000] DMA [mem 0x0000000090000000-0x00000000cfffffff] [ 0.000000] DMA32 empty [ 0.000000] Normal empty [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000090000000-0x00000000cfffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000090000000-0x00000000cfffffff] [ 0.000000] cma: Reserved 32 MiB at 0x00000000cb000000 [ 0.000000] psci: probing for conduit method from DT. [ 0.000000] psci: PSCIv1.1 detected in firmware. [ 0.000000] psci: Using standard PSCI v0.2 function IDs [ 0.000000] psci: Trusted OS migration not required [ 0.000000] psci: SMC Calling Convention v1.0 [ 0.000000] percpu: Embedded 23 pages/cpu s56536 r8192 d29480 u94208 [ 0.000000] Detected PIPT I-cache on CPU0 [ 0.000000] CPU features: kernel page table isolation forced ON by KASLR [ 0.000000] CPU features: detected: Kernel page table isolation (KPTI) [ 0.000000] CPU features: detected: Spectre-v2 [ 0.000000] CPU features: detected: Spectre-v4 [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 258048 [ 0.000000] Policy zone: DMA [ 0.000000] Kernel command line: earlycon console=ttyS0,115200n8 clk_ignore_unused ip=192.168.42.15 carrier_timeout=0 [ 0.000000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes, linear) [ 0.000000] Inode-cache hash table entries: 65536 (order: 7, 524288 bytes, linear) [ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off [ 0.000000] Memory: 938636K/1048576K available (14528K kernel code, 2878K rwdata, 7696K rodata, 14592K init, 494K bss, 77172K reserved, 32768K cma-reserved) [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=5, Nodes=1 [ 0.000000] rcu: Preemptible hierarchical RCU implementation. [ 0.000000] rcu: RCU event tracing is enabled. [ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=5. [ 0.000000] Trampoline variant of Tasks RCU enabled. [ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies. [ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=5 [ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0 [ 0.000000] random: get_random_bytes called from start_kernel+0x350/0x50c with crng_init=0 [ 0.000000] arch_timer: cp15 timer(s) running at 31.25MHz (virt). [ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0xe6a171046, max_idle_ns: 881590405314 ns [ 0.000001] sched_clock: 56 bits at 31MHz, resolution 32ns, wraps every 4398046511088ns [ 0.008882] Console: colour dummy device 80x25 [ 0.013715] Calibrating delay loop (skipped), value calculated using timer frequency.. 62.50 BogoMIPS (lpj=125000) [ 0.024629] pid_max: default: 32768 minimum: 301 [ 0.029715] LSM: Security Framework initializing [ 0.034718] Mount-cache hash table entries: 2048 (order: 2, 16384 bytes, linear) [ 0.042522] Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes, linear) [ 0.053339] rcu: Hierarchical SRCU implementation. [ 0.059456] EFI services will not be available. [ 0.064713] smp: Bringing up secondary CPUs ... [ 0.070411] CPU features: detected: Spectre-v3a [ 0.070424] CPU features: detected: Mismatched cache type (CTR_EL0) [ 0.070426] CPU features: detected: ARM errata 1165522, 1319367, or 1530923 [ 0.070430] Detected PIPT I-cache on CPU1 [ 0.070435] CPU features: SANITY CHECK: Unexpected variation in SYS_CTR_EL0. Boot CPU: 0x0000009444c004, CPU1: 0x0000008444c004 [ 0.070443] CPU features: SANITY CHECK: Unexpected variation in SYS_ID_AA64DFR0_EL1. Boot CPU: 0x00000010305116, CPU1: 0x00000010305106 [ 0.070451] CPU features: SANITY CHECK: Unexpected variation in SYS_ID_DFR0_EL1. Boot CPU: 0x00000003001066, CPU1: 0x00000003010066 [ 0.070461] CPU features: Unsupported CPU feature variation detected. [ 0.070527] CPU1: Booted secondary processor 0x0000000001 [0x411fd073] [ 0.071514] Detected PIPT I-cache on CPU2 [ 0.071520] CPU features: SANITY CHECK: Unexpected variation in SYS_CTR_EL0. Boot CPU: 0x0000009444c004, CPU2: 0x0000008444c004 [ 0.071527] CPU features: SANITY CHECK: Unexpected variation in SYS_ID_AA64DFR0_EL1. Boot CPU: 0x00000010305116, CPU2: 0x00000010305106 [ 0.071533] CPU features: SANITY CHECK: Unexpected variation in SYS_ID_DFR0_EL1. Boot CPU: 0x00000003001066, CPU2: 0x00000003010066 [ 0.071587] CPU2: Booted secondary processor 0x0000000002 [0x411fd073] [ 0.072586] Detected PIPT I-cache on CPU3 [ 0.072593] CPU features: SANITY CHECK: Unexpected variation in SYS_CTR_EL0. Boot CPU: 0x0000009444c004, CPU3: 0x0000008444c004 [ 0.072599] CPU features: SANITY CHECK: Unexpected variation in SYS_ID_AA64DFR0_EL1. Boot CPU: 0x00000010305116, CPU3: 0x00000010305106 [ 0.072606] CPU features: SANITY CHECK: Unexpected variation in SYS_ID_DFR0_EL1. Boot CPU: 0x00000003001066, CPU3: 0x00000003010066 [ 0.072660] CPU3: Booted secondary processor 0x0000000003 [0x411fd073] [ 0.073599] Detected PIPT I-cache on CPU4 [ 0.073606] CPU features: SANITY CHECK: Unexpected variation in SYS_CTR_EL0. Boot CPU: 0x0000009444c004, CPU4: 0x0000008444c004 [ 0.073612] CPU features: SANITY CHECK: Unexpected variation in SYS_ID_AA64DFR0_EL1. Boot CPU: 0x00000010305116, CPU4: 0x00000010305106 [ 0.073618] CPU features: SANITY CHECK: Unexpected variation in SYS_ID_DFR0_EL1. Boot CPU: 0x00000003001066, CPU4: 0x00000003010066 [ 0.073673] CPU4: Booted secondary processor 0x0000000004 [0x411fd073] [ 0.073821] smp: Brought up 1 node, 5 CPUs [ 0.297411] SMP: Total of 5 processors activated. [ 0.302411] CPU features: detected: 32-bit EL0 Support [ 0.307880] CPU features: detected: CRC32 instructions [ 0.313440] CPU features: detected: 32-bit EL1 Support [ 0.354642] CPU: All CPU(s) started at EL1 [ 0.359150] alternatives: patching kernel code [ 0.366626] devtmpfs: initialized [ 0.373515] KASLR disabled due to lack of seed [ 0.378668] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns [ 0.388978] futex hash table entries: 2048 (order: 5, 131072 bytes, linear) [ 0.397321] pinctrl core: initialized pinctrl subsystem [ 0.404588] DMI not present or invalid. [ 0.409859] NET: Registered protocol family 16 [ 0.416644] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic allocations [ 0.424123] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations [ 0.432342] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations [ 0.440712] audit: initializing netlink subsys (disabled) [ 0.446624] audit: type=2000 audit(0.256:1): state=initialized audit_enabled=0 res=1 [ 0.447078] thermal_sys: Registered thermal governor 'step_wise' [ 0.454768] thermal_sys: Registered thermal governor 'power_allocator' [ 0.461120] cpuidle: using governor menu [ 0.472216] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers. [ 0.479504] ASID allocator initialised with 32768 entries [ 0.485771] Serial: AMBA PL011 UART driver [ 0.497756] HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages [ 0.504809] HugeTLB registered 32.0 MiB page size, pre-allocated 0 pages [ 0.511849] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages [ 0.518885] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages [ 0.527905] cryptd: max_cpu_qlen set to 1000 [ 0.535785] ACPI: Interpreter disabled. [ 0.540425] iommu: Default domain type: Translated [ 0.545696] vgaarb: loaded [ 0.548698] SCSI subsystem initialized [ 0.552959] usbcore: registered new interface driver usbfs [ 0.558751] usbcore: registered new interface driver hub [ 0.564357] usbcore: registered new device driver usb [ 0.569863] pps_core: LinuxPPS API ver. 1 registered [ 0.575078] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti [email protected] [ 0.584677] PTP clock support registered [ 0.588844] EDAC MC: Ver: 3.0.0 [ 0.592727] FPGA manager framework [ 0.596348] Advanced Linux Sound Architecture Driver Initialized. [ 0.603315] clocksource: Switched to clocksource arch_sys_counter [ 0.609838] VFS: Disk quotas dquot_6.6.0 [ 0.613996] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes) [ 0.621331] pnp: PnP ACPI: disabled [ 0.629324] NET: Registered protocol family 2 [ 0.634231] tcp_listen_portaddr_hash hash table entries: 512 (order: 1, 8192 bytes, linear) [ 0.643071] TCP established hash table entries: 8192 (order: 4, 65536 bytes, linear) [ 0.651261] TCP bind hash table entries: 8192 (order: 5, 131072 bytes, linear) [ 0.658938] TCP: Hash tables configured (established 8192 bind 8192) [ 0.665694] UDP hash table entries: 512 (order: 2, 16384 bytes, linear) [ 0.672665] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear) [ 0.680157] NET: Registered protocol family 1 [ 0.685093] RPC: Registered named UNIX socket transport module. [ 0.691331] RPC: Registered udp transport module. [ 0.696284] RPC: Registered tcp transport module. [ 0.701227] RPC: Registered tcp NFSv4.1 backchannel transport module. [ 0.707995] PCI: CLS 0 bytes, default 64 [ 1.054039] kvm [1]: HYP mode not available [ 1.061028] Initialise system trusted keyrings [ 1.065820] workingset: timestamp_bits=42 max_order=18 bucket_order=0 [ 1.076019] squashfs: version 4.0 (2009/01/31) Phillip Lougher [ 1.082561] NFS: Registering the id_resolver key type [ 1.087891] Key type id_resolver registered [ 1.092287] Key type id_legacy registered [ 1.096547] nfs4filelayout_init: NFSv4 File Layout Driver Registering... [ 1.103690] 9p: Installing v9fs 9p2000 file system support [ 1.138845] Key type asymmetric registered [ 1.143152] Asymmetric key parser 'x509' registered [ 1.148291] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245) [ 1.156061] io scheduler mq-deadline registered [ 1.160818] io scheduler kyber registered [ 1.169185] EINJ: ACPI disabled. [ 1.177664] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled [ 1.185567] printk: console [ttyS0] disabled [ 1.190107] c280000.serial: ttyS0 at MMIO 0xc280000 (irq = 20, base_baud = 25500000) is a 16550 [ 1.199302] printk: console [ttyS0] enabled [ 1.199302] printk: console [ttyS0] enabled [ 1.207910] printk: bootconsole [ns16550] disabled [ 1.207910] printk: bootconsole [ns16550] disabled [ 1.218008] SuperH (H)SCI(F) driver initialized [ 1.222703] msm_serial: driver initialized [ 1.227373] cacheinfo: Unable to detect cache hierarchy for CPU 0 [ 1.237934] loop: module loaded [ 1.241467] megasas: 07.714.04.00-rc1 [ 1.246901] libphy: Fixed MDIO Bus: probed [ 1.251566] tun: Universal TUN/TAP device driver, 1.6 [ 1.256914] thunder_xcv, ver 1.0 [ 1.260173] thunder_bgx, ver 1.0 [ 1.263426] nicpf, ver 1.0 [ 1.266548] hclge is initializing [ 1.269878] hns3: Hisilicon Ethernet Network Driver for Hip08 Family - version [ 1.277096] hns3: Copyright (c) 2017 Huawei Corporation. [ 1.282430] e1000: Intel(R) PRO/1000 Network Driver [ 1.287306] e1000: Copyright (c) 1999-2006 Intel Corporation. [ 1.293072] e1000e: Intel(R) PRO/1000 Network Driver [ 1.298036] e1000e: Copyright(c) 1999 - 2015 Intel Corporation. [ 1.303971] igb: Intel(R) Gigabit Ethernet Network Driver [ 1.309368] igb: Copyright (c) 2007-2014 Intel Corporation. [ 1.314954] igbvf: Intel(R) Gigabit Virtual Function Network Driver [ 1.321218] igbvf: Copyright (c) 2009 - 2012 Intel Corporation. [ 1.327248] sky2: driver version 1.30 [ 1.331308] VFIO - User Level meta-driver version: 0.3 [ 1.337147] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver [ 1.343701] ehci-pci: EHCI PCI platform driver [ 1.348168] ehci-platform: EHCI generic platform driver [ 1.353435] ehci-orion: EHCI orion driver [ 1.357484] ehci-exynos: EHCI Exynos driver [ 1.361701] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver [ 1.367889] ohci-pci: OHCI PCI platform driver [ 1.372357] ohci-platform: OHCI generic platform driver [ 1.377620] ohci-exynos: OHCI Exynos driver [ 1.381962] usbcore: registered new interface driver usb-storage [ 1.388900] i2c /dev entries driver [ 1.394529] sdhci: Secure Digital Host Controller Interface driver [ 1.400721] sdhci: Copyright(c) Pierre Ossman [ 1.405259] Synopsys Designware Multimedia Card Interface Driver [ 1.411582] sdhci-pltfm: SDHCI platform and OF driver helper [ 1.417875] ledtrig-cpu: registered to indicate activity on CPUs [ 1.424279] ------------[ cut here ]------------ [ 1.428904] Tegra APB MISC not yet available [ 1.433195] WARNING: CPU: 2 PID: 1 at drivers/soc/tegra/fuse/tegra-apbmisc.c:31 tegra_read_chipid+0x38/0x50 [ 1.442937] Modules linked in: [ 1.445993] CPU: 2 PID: 1 Comm: swapper/0 Tainted: G S 5.11.0 #2 [ 1.453296] pstate: 60000005 (nZCv daif -PAN -UAO -TCO BTYPE=--) [ 1.459297] pc : tegra_read_chipid+0x38/0x50 [ 1.463565] lr : tegra_read_chipid+0x38/0x50 [ 1.467833] sp : ffff8000100339d0 [ 1.471144] x29: ffff8000100339d0 x28: 0000000000000000 [ 1.476454] x27: ffff800011701078 x26: ffff8000116504bc [ 1.481763] x25: ffff000012a88080 x24: ffff0000152bfbb8 [ 1.487070] x23: ffff80001272c878 x22: ffff000012af1c10 [ 1.492379] x21: ffff000012ab8f80 x20: ffff000012a3cf80 [ 1.497687] x19: ffff8000127bd000 x18: 0000000000000010 [ 1.502996] x17: 0000000000000068 x16: ffff800010b2c2f0 [ 1.508304] x15: ffffffffffffffff x14: 00000000000000d1 [ 1.513610] x13: ffff800010033690 x12: 00000000ffffffea [ 1.518918] x11: 0000000000000001 x10: 0000000000000003 [ 1.524226] x9 : 0000000000000003 x8 : ffff80001250a7e0 [ 1.529536] x7 : 0000000000017fe8 x6 : c0000000ffffefff [ 1.534844] x5 : 0000000000000000 x4 : 0000000000000000 [ 1.540150] x3 : 00000000ffffffff x2 : ffff8000124b2750 [ 1.545458] x1 : 2ce8f402484ef400 x0 : 0000000000000000 [ 1.550766] Call trace: [ 1.553210] tegra_read_chipid+0x38/0x50 [ 1.557130] tegra_is_silicon+0x10/0x50 [ 1.560965] tegra_hsp_doorbell_startup+0x48/0x100 [ 1.565757] mbox_request_channel+0x1cc/0x220 [ 1.570110] tegra186_bpmp_init+0x1e8/0x2e0 [ 1.574291] tegra_bpmp_probe+0x128/0x330 [ 1.578300] platform_probe+0x68/0xe0 [ 1.581962] really_probe+0xe4/0x3c0 [ 1.585535] driver_probe_device+0x58/0xc0 [ 1.589628] device_driver_attach+0x74/0x80 [ 1.593807] __driver_attach+0x58/0xe0 [ 1.597553] bus_for_each_dev+0x74/0xd0 [ 1.601386] driver_attach+0x24/0x30 [ 1.604960] bus_add_driver+0x184/0x1f0 [ 1.608791] driver_register+0x64/0x120 [ 1.612625] __platform_driver_register+0x28/0x40 [ 1.617326] tegra_bpmp_driver_init+0x1c/0x28 [ 1.621681] do_one_initcall+0x74/0x1d0 [ 1.625515] kernel_init_freeable+0x1d4/0x23c [ 1.629871] kernel_init+0x14/0x118 [ 1.633359] ret_from_fork+0x10/0x38 [ 1.636936] ---[ end trace 8de68a3a8d108940 ]--- [ 1.641960] tegra-bpmp bpmp: firmware: 4208eb5c85fe47a2235fbc0b8eb87dca [ 1.682402] random: fast init done [ 2.975132] random: crng init done [ 3.181136] usbcore: registered new interface driver usbhid [ 3.186734] usbhid: USB HID core driver [ 3.192926] NET: Registered protocol family 17 [ 3.197513] 9pnet: Installing 9P2000 support [ 3.201825] Key type dns_resolver registered [ 3.206317] registered taskstats version 1 [ 3.210424] Loading compiled-in X.509 certificates [ 15.519277] clk: Not disabling unused clocks [ 15.523573] ALSA device list: [ 15.526540] No soundcards found. [ 15.534827] Freeing unused kernel memory: 14592K [ 15.539562] Run /init as init process Starting syslogd: OK Starting klogd: OK Running sysctl: OK Saving random seed: OK Starting dropbear sshd: [ 15.629677] NET: Registered protocol family 10 [ 15.634712] Segment Routing with IPv6 OK

So, what's the prolem, can you give some ideas?

wjhtinger avatar Oct 21 '21 03:10 wjhtinger

It seems there is some issue with the tx2 bpmp driver. Are you using the same linux guest configuration as provided in the demos?

josecm avatar Oct 25 '21 09:10 josecm

It seems there is some issue with the tx2 bpmp driver. Are you using the same linux guest configuration as provided in the demos?

Yes, I use the configuration in the demos except add the UART1 config. Below is the configuration: /dts-v1/;

/ { #address-cells = <2>; #size-cells = <2>; interrupt-parent = <&gic>;

chosen {
	stdout-path = "/serial@c280000";
	bootargs = "earlycon console=ttyS0,115200n8 clk_ignore_unused ip=192.168.42.15 carrier_timeout=0 loglevel=8";
	#nvidia,ether-mac = "48:b0:2d:0e:6e:9e";
};

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

	cpu@0 {
		compatible = "arm,armv8";
		device_type = "cpu";
		enable-method = "psci";
		reg = <0x0>;
	};

	cpu@1 {
		compatible = "arm,armv8";
		device_type = "cpu";
		enable-method = "psci";
		reg = <0x1>;
	};

	cpu@2 {
		reg = <0x2>;
		compatible = "arm,armv8";
		device_type = "cpu";
		enable-method = "psci";
	};

	cpu@3 {
		reg = <0x3>;
		compatible = "arm,armv8";
		device_type = "cpu";
		enable-method = "psci";
	};


	cpu@4 {
		reg = <0x4>;
		compatible = "arm,armv8";
		device_type = "cpu";
		enable-method = "psci";
	};

};

psci {
	compatible = "arm,psci-0.2";
	method = "smc";
};

memory@90000000 {
	reg = <0x0 0x90000000 0x0 0x40000000>;
	device_type = "memory";
};

sysram@30000000 {
	compatible = "nvidia,tegra186-sysram", "mmio-sram";
	reg = <0x0 0x30000000 0x0 0x50000>;
	#address-cells = <2>;
	#size-cells = <2>;
	ranges = <0 0x0 0x0 0x30000000 0x0 0x50000>;

	cpu_bpmp_tx: shmem@4e000 {
		compatible = "nvidia,tegra186-bpmp-shmem";
		reg = <0x0 0x4e000 0x0 0x1000>;
		label = "cpu-bpmp-tx";
		pool;
	};

	cpu_bpmp_rx: shmem@4f000 {
		compatible = "nvidia,tegra186-bpmp-shmem";
		reg = <0x0 0x4f000 0x0 0x1000>;
		label = "cpu-bpmp-rx";
		pool;
	};
};

gic: interrupt-controller@3881000 {
	compatible = "arm,gic-400";
	#interrupt-cells = <3>;
	interrupt-controller;
	reg = <0x0 0x03881000 0x0 0x1000>,
	      <0x0 0x03882000 0x0 0x2000>;
};

timer {
	compatible = "arm,armv8-timer";
	interrupt-parent = <&gic>;
	interrupts = <0x1 0xd 0xf08 0x1 0xe 0xf08 0x1 0xb 0xf08 0x1 0xa 0xf08>;
};

hsp_top0: hsp@3c00000 {
	compatible = "nvidia,tegra186-hsp";
	reg = <0x0 0x03c00000 0x0 0xa0000>;
	interrupts = <0 176 4>;
	interrupt-names = "doorbell";
	#mbox-cells = <2>;
	status = "okay";
};

bpmp: bpmp {
	compatible = "nvidia,tegra186-bpmp";
	mboxes = <&hsp_top0 0 19>;
	shmem = <&cpu_bpmp_tx &cpu_bpmp_rx>;
	#clock-cells = <1>;
	#reset-cells = <1>;
	#power-domain-cells = <1>;
};

gpio: gpio@2200000 {
	compatible = "nvidia,tegra186-gpio";
	reg-names = "security", "gpio";
	reg = <0x0 0x2200000 0x0 0x10000>,
	      <0x0 0x2210000 0x0 0x10000>;
	interrupt-parent = <&gic>;
	interrupts = <0  47 4>,
		     <0  50 4>,
		     <0  53 4>,
		     <0  56 4>,
		     <0  59 4>,
		     <0 180 4>;
	#interrupt-cells = <2>;
	interrupt-controller;
	#gpio-cells = <2>;
	gpio-controller;
};

serial@c280000 {
	compatible =  "ns16550";
	reg = <0x0 0xc280000 0x0 0x40>;
	reg-shift = <0x2>;
	interrupts = <0x0 0x72 0x4>;
	clock-frequency = <408000000>;
};

eth: ethernet@2490000 {
	compatible = "nvidia,tegra186-eqos",
		     "snps,dwc-qos-ethernet-4.10";
	reg = <0x0 0x02490000 0x0 0x10000>;
	interrupts = <0 194 4>, /* common */
		     <0 195 4>, /* power */
		     <0 190 4>, /* rx0 */
		     <0 186 4>, /* tx0 */
		     <0 191 4>, /* rx1 */
		     <0 187 4>, /* tx1 */
		     <0 192 4>, /* rx2 */
		     <0 188 4>, /* tx2 */
		     <0 193 4>, /* rx3 */
		     <0 189 4>; /* tx3 */
	clocks = <&bpmp 149>,
		 <&bpmp 167>,
		 <&bpmp 168>,
		 <&bpmp 240>,
		 <&bpmp 239>;
	clock-names = "master_bus", "slave_bus", "rx", "tx", "ptp_ref";
	resets = <&bpmp 69>;
	reset-names = "eqos";

	snps,write-requests = <1>;
	snps,read-requests = <3>;
	snps,burst-map = <0x7>;
	snps,txpbl = <32>;
	snps,rxpbl = <8>;

	status = "okay";

	phy-reset-gpios = <&gpio 0x64 0x1>;
	phy-handle = <&phy>;
	phy-mode = "rgmii";

	mdio {
		#address-cells = <1>;
		#size-cells = <0>;	

		phy: phy@0 {
			compatible = "ethernet-phy-ieee802.3-c22";
			reg = <0x0>;
			interrupt-parent = <&gpio>;
			interrupts = <0x65 0x08>;
			#phy-cells = <0>;
		};
	};
};
bao-ipc@f0000000 {
    compatible = "bao,ipcshmem";
    reg = <0x0 0xf0000000 0x0 0x00010000>;
	read-channel = <0x0 0x2000>;
	write-channel = <0x2000 0x2000>;
    interrupts = <0 52 1>;
	id = <0>;
};

aliases {
	ethernet0 = &eth;
};

};

wjhtinger avatar Oct 26 '21 01:10 wjhtinger

Any developments on this? If not, I will try to find some time to reproduce your issue.

josecm avatar Nov 02 '21 13:11 josecm

Any developments on this? If not, I will try to find some time to reproduce your issue.

Not yet.

wjhtinger avatar Nov 08 '21 03:11 wjhtinger

Were you able to solve this? If so, what was wrong and how? If not, are you still trying to solve this? In this case I'll try to reproduce in the next couple of weeks, otherwise I'll close the issue.

josecm avatar Jan 03 '22 20:01 josecm

Sorry,these days I have some other work to do, no time to debug this problem any more. If you can have a look at it, appreciate it.

wjhtinger avatar Jan 10 '22 03:01 wjhtinger