-
Posts
23 -
Joined
-
Last visited
Recent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
-
Yes almost In your solution mess in rk3399-rock-pi-4.dtsi still exist, and I think it's not good for system stable work. Also I try different variants with/without vpcie0v9-supply, vpcie1v8-supply but I got different errors or not soft reboot with this two parameters... So yes, we were digging in the right direction )))
-
It wasn't easy, but it wasn't that difficult considering my minimum level .... First of all. After analyzing the sources https://github.com/torvalds/linux/blob/v5.10/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi https://github.com/torvalds/linux/blob/v5.15/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi https://github.com/torvalds/linux/blob/v6.1/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi it became clear that the source code already has the part of changes: &pcie0 { ep-gpios = <&gpio4 RK_PD3 GPIO_ACTIVE_HIGH>; num-lanes = <4>; pinctrl-0 = <&pcie_clkreqnb_cpm>; pinctrl-names = "default"; vpcie0v9-supply = <&vcc_0v9>; vpcie1v8-supply = <&vcc_1v8>; vpcie3v3-supply = <&vcc3v3_pcie>; status = "okay"; }; &pcie_phy { status = "okay"; }; BUT board-rockpi4-0003-arm64-dts-pcie.patch --- creates a mess: &pcie0 { ep-gpios = <&gpio4 RK_PD3 GPIO_ACTIVE_HIGH>; num-lanes = <4>; max-link-speed = <1>; pinctrl-names = "default"; pinctrl-0 = <&pcie_clkreqnb_cpm>; vpcie12v-supply = <&vcc12v_dcin>; vpcie3v3-supply = <&vcc3v3_pcie>; status = "okay"; }; &pcie_phy { status = "okay"; }; &pmu_io_domains { status = "okay"; pmu1830-supply = <&vcc_3v0>; }; &pcie_phy { status = "okay"; }; &pcie0 { ep-gpios = <&gpio4 RK_PD3 GPIO_ACTIVE_HIGH>; num-lanes = <4>; pinctrl-0 = <&pcie_clkreqnb_cpm>; pinctrl-names = "default"; vpcie0v9-supply = <&vcc_0v9>; vpcie1v8-supply = <&vcc_1v8>; vpcie3v3-supply = <&vcc3v3_pcie>; status = "okay"; }; An attempt to simply disable the patch provided a negative result. Then I compared the source and the old patch and highlighted the following changes in a separate patch. Also based on the sources I added bus-scan-delay-ms = <1000>; https://gitlab.manjaro.org/manjaro-arm/packages/core/linux/-/issues/10 https://www.spinics.net/lists/linux-pci/msg103349.html https://www.spinics.net/lists/linux-pci/msg103351.html diff --git a/Documentation/devicetree/bindings/pci/rockchip-pcie-host.txt b/Documentation/devicetree/bindings/pci/rockchip-pcie-host.txt index af34c6577..1829b442c 100644 --- a/Documentation/devicetree/bindings/pci/rockchip-pcie-host.txt +++ b/Documentation/devicetree/bindings/pci/rockchip-pcie-host.txt @@ -57,6 +57,8 @@ Optional Property: using 24MHz OSC for RC's PHY. - ep-gpios: contain the entry for pre-reset GPIO - num-lanes: number of lanes to use +- bus-scan-delay-ms: delay before PCIe bus scan in milliseconds. + Provides a workaround for some devices causing a crash in bus scan. - vpcie12v-supply: The phandle to the 12v regulator to use for PCIe. - vpcie3v3-supply: The phandle to the 3.3v regulator to use for PCIe. - vpcie1v8-supply: The phandle to the 1.8v regulator to use for PCIe. diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi index 1f5101dac..c67528e23 100644 --- a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi +++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi @@ -80,6 +80,8 @@ vcc3v3_pcie: vcc3v3-pcie-regulator { regulator-name = "vcc3v3_pcie"; regulator-always-on; regulator-boot-on; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; vin-supply = <&vcc5v0_sys>; }; @@ -525,11 +527,12 @@ &pcie_phy { &pcie0 { ep-gpios = <&gpio4 RK_PD3 GPIO_ACTIVE_HIGH>; num-lanes = <4>; + max-link-speed = <1>; pinctrl-0 = <&pcie_clkreqnb_cpm>; pinctrl-names = "default"; - vpcie0v9-supply = <&vcc_0v9>; - vpcie1v8-supply = <&vcc_1v8>; + vpcie12v-supply = <&vcc12v_dcin>; vpcie3v3-supply = <&vcc3v3_pcie>; + bus-scan-delay-ms = <1000>; status = "okay"; }; AND now it's working booting from uSD; working "boot from eMMC system on eMMC"; working soft reboot too root@rockpi-4b:~# uname -a Linux rockpi-4b 5.15.85-rockchip64 #trunk SMP PREEMPT Mon Dec 26 15:48:30 +03 2022 aarch64 GNU/Linux root@rockpi-4b:~# fdisk -l Disk /dev/nvme0n1: 953.87 GiB, 1024209543168 bytes, 2000409264 sectors Disk model: NE-1TB Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mmcblk1: 57.62 GiB, 61865984000 bytes, 120832000 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x425824f4 Device Boot Start End Sectors Size Id Type /dev/mmcblk1p1 32768 119603199 119570432 57G 83 Linux Disk /dev/zram0: 1.89 GiB, 2025594880 bytes, 494530 sectors Units: sectors of 1 * 4096 = 4096 bytes Sector size (logical/physical): 4096 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disk /dev/zram1: 50 MiB, 52428800 bytes, 12800 sectors Units: sectors of 1 * 4096 = 4096 bytes Sector size (logical/physical): 4096 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes root@rockpi-4b:~# dd if=/dev/nvme0n1 of=/dev/null bs=1M count=2048 iflag=direct status=progress 1118830592 bytes (1.1 GB, 1.0 GiB) copied, 1 s, 1.1 GB/s 2048+0 records in 2048+0 records out 2147483648 bytes (2.1 GB, 2.0 GiB) copied, 1.88694 s, 1.1 GB/s Armbian_22.11.2-trunk_Rockpi-4b_bullseye_5.15.85.log This is console log cool boot + soft reboot from uSD
-
@desperex Hello, actually I fixed issue. I need additional testing for provide a path to armbian branch
-
Please provide instructions how to do this?
-
Sorry my falls I do a bad erase for EMMC and I think a boot loader will taken from this, so I fix this and add a new console log. See: Armbian_22.11.0_bullseye_5.15.80_linux.log Behavior is sometimes strange (((( In most cases, booting and rebooting goes fine. But a couple of times I caught errors during verbose boot and linux reboot. See: Armbian_22.11.0_bullseye_5.15.80_linux-reboot.log Armbian_22.11.0_bullseye_5.15.80_linux_verbose-error.log Armbian_22.11.0_bullseye_5.15.80_linux_verbose-error-2.log Also as you ask I provide normal verbose loading log: Armbian_22.11.0_bullseye_5.15.80_linux_verbose.log BUT one thing is stable, every time when I try start 5.15.80-rockchip64 it's fail... See: Armbian_22.11.0_bullseye_5.15.80_5.15.80-rockchip64.log So this is my trying... and again thank you for help!
-
So I do erase my SPI, EMMc and NVMe devices, create new uSD and try again. And your build work from uSD !!!! See: console logs It's amazing and thank you for your investigations and help. as I understand this issue because some patches not include [ 3.841967] systemd[233]: /usr/lib/systemd/system-generators/netplan failed with exit status 1. [ OK ] Found device /dev/ttyS2. [ OK ] Started Show Plymouth Boot Screen. [ OK ] Started Forward Password R…s to Plymouth Directory Watch. [ OK ] Reached target Local Encrypted Volumes. [ OK ] Reached target Paths. [ OK ] Finished Raise network interfaces. [ 14.748907] rockchip-pinctrl pinctrl: pin gpio3-29 already requested by leds; cannot claim for ff880000.i2s [ 14.749798] rockchip-pinctrl pinctrl: pin-125 (ff880000.i2s) status -22 [ 14.750402] rockchip-pinctrl pinctrl: could not request pin 125 (gpio3-29) from group i2s0-8ch-bus-bclk-off on device rockchip-pinctrl [ 14.751486] rockchip-i2s ff880000.i2s: Error applying setting, reverse things back [ 14.752163] rockchip-i2s ff880000.i2s: bclk disable failed -22 [ 14.844258] rk_gmac-dwmac fe300000.ethernet: cannot get clock clk_mac_speed [ OK ] Listening on Load/Save RF …itch Status /dev/rfkill Watch. Again thank you for help, what I can/should do next ? How I as noob can propose fixing for Armbiam Armbian_22.11.0_bullseye_5.15.80_test.log
-
Sorry for that I will clean emmc and nvme and try again from clean install.
-
Some additional testing: I try different images and some of them work for example - 1. Armbian_21.08.1_Rockpi-4b_bullseye_5.10.60 and Armbian_21.08.2_Rockpi-4b_bullseye_5.10.63 - works if kernel not updated see Armbian_21.08.1_Rockpi-4b_bullseye_5.10.60.log and Armbian_21.08.2_Rockpi-4b_bullseye_5.10.63.log 2. Randomly found resource https://sd-card-images.johang.se/boards/rock_pi_4.html with debian-bookworm works, but it's very minimal image and all even simple config need to be done by manual. It's will take so many time (((( see debian-bookworm-minimal.log If upgrade kernel to next release apt install armbian-firmware=21.08.6 linux-dtb-current-rockchip64=21.08.2 linux-image-current-rockchip64=21.08.2 linux-u-boot-rockpi-4b-current=21.08.1 Armbian_22.02.1_Rockpi-4b_bullseye_5.15.25 The system stop working correctly, see Armbian_22.02.1_Rockpi-4b_bullseye_5.15.25.log And it's not working on all next releases including 6.0.9 and 6.1.0 Armbian_21.08.1_Rockpi-4b_bullseye_5.10.60.log Armbian_21.08.2_Rockpi-4b_bullseye_5.10.63.log debian-bookworm-minimal.log Armbian_22.02.1_Rockpi-4b_bullseye_5.15.25.log
-
I download and try your build, got the same issue Starting kernel ... [ 2.047065] Internal error: synchronous external abort: 0000000096000210 [#1] SMP [ 2.047772] Modules linked in: [ 2.048070] CPU: 1 PID: 64 Comm: kworker/u12:2 Not tainted 6.1.0-65.fc37.aarch64 #1 [ 2.048769] Hardware name: Radxa ROCK Pi 4B (DT) [ 2.049197] Workqueue: events_unbound deferred_probe_work_func [ 2.049754] pstate: 604000c5 (nZCv daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 2.050392] pc : rockchip_pcie_rd_conf+0x128/0x164 [ 2.050846] lr : rockchip_pcie_rd_conf+0x120/0x164 [ 2.051294] sp : ffff80000c5db890 [ 2.051601] x29: ffff80000c5db890 x28: ffff00000156b800 x27: 0000000000000000 [ 2.052268] x26: ffff000001568800 x25: 0000000000000001 x24: 0000000000000000 [ 2.052931] x23: ffff80000b386588 x22: 0000000000000000 x21: ffff80000c5db90c [ 2.053596] x20: 0000000000000004 x19: ffff80000e100000 x18: ffffffffffffffff [ 2.054259] x17: 000000005e80c22f x16: 000000002c060080 x15: ffff80000c5db788 [ 2.054922] x14: ffff000001b55a1c x13: ffff000001b55290 x12: 00000000914f756d [ 2.055586] x11: 000000002f359453 x10: 0000000000000000 x9 : ffff8000088aacb0 [ 2.056249] x8 : ffff80000c5db810 x7 : ffff0000074abb80 x6 : ffff000001568800 [ 2.056912] x5 : ffff00000156b800 x4 : 0000000000c00008 x3 : ffff800011000000 [ 2.057575] x2 : 000000000080000a x1 : ffff800011c00008 x0 : ffff800011c0000c [ 2.058239] Call trace: [ 2.058471] rockchip_pcie_rd_conf+0x128/0x164 [ 2.058892] pci_bus_read_config_dword+0x70/0xcc [ 2.059325] pci_bus_generic_read_dev_vendor_id+0x38/0x17c [ 2.059839] pci_scan_single_device+0x84/0x100 [ 2.060258] pci_scan_slot+0x5c/0x200 [ 2.060609] pci_scan_child_bus_extend+0x50/0x2e0 [ 2.061051] pci_scan_bridge_extend+0x300/0x574 [ 2.061478] pci_scan_child_bus_extend+0x1c4/0x2e0 [ 2.061928] pci_scan_root_bus_bridge+0x6c/0xe0 [ 2.062355] pci_host_probe+0x20/0xd0 [ 2.062705] rockchip_pcie_probe+0x374/0x560 [ 2.063110] platform_probe+0x70/0xcc [ 2.063464] really_probe+0xc8/0x3e0 [ 2.063807] __driver_probe_device+0x84/0x190 [ 2.064221] driver_probe_device+0x44/0x120 [ 2.064619] __device_attach_driver+0xc4/0x160 [ 2.065040] bus_for_each_drv+0x74/0xb4 [ 2.065406] __device_attach+0xa8/0x1c0 [ 2.065773] device_initial_probe+0x1c/0x30 [ 2.066170] bus_probe_device+0xa4/0xb0 [ 2.066536] deferred_probe_work_func+0xc0/0x114 [ 2.066971] process_one_work+0x1ec/0x470 [ 2.067353] worker_thread+0x200/0x410 [ 2.067709] kthread+0xec/0x100 [ 2.068018] ret_from_fork+0x10/0x20 [ 2.068368] Code: 52800141 97fffa11 7100129f 54fffb41 (b9400273) [ 2.068929] ---[ end trace 0000000000000000 ]--- [ 2.069356] note: kworker/u12:2[64] exited with preempt_count 1 [ 2.085324] mmc_host mmc2: Bus speed (slot 0) = 148500000Hz (slot req 150000000Hz, actual 148500000HZ div = 0) [ 2.293765] dwmmc_rockchip fe310000.mmc: Successfully tuned phase to 228 [ 2.298632] mmc2: new ultra high speed SDR104 SDIO card at address 0001 [ 90.443481] random: crng init done
-
Thank you in advance. I will check it tomorrow morning and publish console log here.
-
Thank you for your response. But it's a bit at odds with my goals. I not so skill in linux for this...
-
Please provide link to distributive what you use. And additional question: Are Bluetooth work fine with this distributive?
-
Hello, no in 6.1 it's still doesn't work root@rockpi-4b:~# uname -a Linux rockpi-4b 6.1.0-rockchip64 #trunk.0055 SMP PREEMPT Fri Dec 16 13:28:04 UTC 2022 aarch64 GNU/Linux root@rockpi-4b:~# dmesg | grep -E 'brcm|Blue|ieee' [ 9.726956] Bluetooth: Core ver 2.22 [ 9.726979] Bluetooth: Starting self testing [ 9.747224] brcmfmac: F1 signature read @0x18000000=0x15294345 [ 9.752572] Bluetooth: ECDH test passed in 24985 usecs [ 9.753978] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43456-sdio for chip BCM4345/9 [ 9.754443] usbcore: registered new interface driver brcmfmac [ 9.758076] Bluetooth: SMP test passed in 5295 usecs [ 9.758124] Bluetooth: Finished self testing [ 9.758232] Bluetooth: HCI device and connection manager initialized [ 9.758254] Bluetooth: HCI socket layer initialized [ 9.758265] Bluetooth: L2CAP socket layer initialized [ 9.758288] Bluetooth: SCO socket layer initialized [ 10.014472] Bluetooth: HCI UART driver ver 2.3 [ 10.014504] Bluetooth: HCI UART protocol H4 registered [ 10.014511] Bluetooth: HCI UART protocol BCSP registered [ 10.014668] Bluetooth: HCI UART protocol LL registered [ 10.014679] Bluetooth: HCI UART protocol ATH3K registered [ 10.014735] Bluetooth: HCI UART protocol Three-wire (H5) registered [ 10.015237] Bluetooth: HCI UART protocol Intel registered [ 10.016319] Bluetooth: HCI UART protocol Broadcom registered [ 10.016409] Bluetooth: HCI UART protocol QCA registered [ 10.016416] Bluetooth: HCI UART protocol AG6XX registered [ 10.016449] Bluetooth: HCI UART protocol Marvell registered [ 10.120786] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/9 wl0: Jun 16 2017 12:38:26 version 7.45.96.2 (66c4e21@sh-git) (r) FWID 01-1813af84 [ 10.273867] systemd[1]: Reached target Bluetooth Support. [ 12.288751] Bluetooth: hci0: command 0xfc18 tx timeout [ 20.448622] Bluetooth: hci0: BCM: failed to write update baudrate (-110) [ 20.448652] Bluetooth: hci0: Failed to set baudrate [ 22.464451] Bluetooth: hci0: command 0x0c03 tx timeout [ 30.688615] Bluetooth: hci0: BCM: Reset failed (-110)
-
So I got serial console cable and what I figured out: From https://github.com/radxa-build/rock-pi-4b/releases/tag/20221201-0200 Image: Armbian_22.11.0-trunk_Rockpi-4b_bullseye_current_5.15.80_minimal.img uname -a: Linux rockpi-4b 5.15.80-rockchip64 #trunk SMP PREEMPT Thu Dec 1 07:25:43 UTC 2022 aarch64 GNU/Linux From https://imola.armbian.com/dl/rockpi-4b/archive/ Image: Armbian_22.11.1_Rockpi-4b_bullseye_current_5.15.80.img uname -a: Linux rockpi-4b 5.15.80-rockchip64 #22.11.1 SMP PREEMPT Wed Nov 30 11:12:47 UTC 2022 aarch64 GNU/Linux Works without NVMe, but when I insert NVMe, the system stuck on next: [ 2.450469] rockchip-pcie f8000000.pcie: host bridge /pcie@f8000000 ranges: [ 2.451172] rockchip-pcie f8000000.pcie: MEM 0x00fa000000..0x00fbdfffff -> 0x00fa000000 [ 2.452008] rockchip-pcie f8000000.pcie: IO 0x00fbe00000..0x00fbefffff -> 0x00fbe00000 [ 2.453746] rockchip-pcie f8000000.pcie: no bus scan delay, default to 0 ms [ 2.508191] rockchip-pcie f8000000.pcie: wait 0 ms (from device tree) before bus scan [ 2.509380] rockchip-pcie f8000000.pcie: PCI host bridge to bus 0000:00 [ 2.509992] pci_bus 0000:00: root bus resource [bus 00-1f] [ 2.510502] pci_bus 0000:00: root bus resource [mem 0xfa000000-0xfbdfffff] [ 2.511135] pci_bus 0000:00: root bus resource [io 0x0000-0xfffff] (bus address [0xfbe00000-0xfbefffff]) [ 2.512088] pci 0000:00:00.0: [1d87:0100] type 01 class 0x060400 [ 2.512819] pci 0000:00:00.0: supports D1 [ 2.513195] pci 0000:00:00.0: PME# supported from D0 D1 D3hot [ 2.520737] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring [ 2.532997] Internal error: synchronous external abort: 96000210 [#1] PREEMPT SMP [ 2.533685] Modules linked in: [ 2.533980] CPU: 3 PID: 223 Comm: kworker/u12:4 Not tainted 5.15.80-rockchip64 #22.11.1 [ 2.534711] Hardware name: Radxa ROCK Pi 4B (DT) [ 2.535136] Workqueue: events_unbound deferred_probe_work_func [ 2.535686] pstate: 600000c5 (nZCv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 2.536322] pc : rockchip_pcie_rd_conf+0xb0/0x230 [ 2.536764] lr : rockchip_pcie_rd_conf+0xec/0x230 [ 2.537203] sp : ffff80000a723830 [ 2.537509] x29: ffff80000a723830 x28: 0000000000000000 x27: 0000000000000000 [ 2.538172] x26: 0000000000000000 x25: 0000000000000000 x24: ffff80000a723974 [ 2.538834] x23: ffff000005a8b000 x22: 0000000000000000 x21: 0000000000000004 [ 2.539495] x20: ffff80000a7238b4 x19: ffff80000c100000 x18: 0000000000000000 [ 2.540157] x17: 6572202c295d3030 x16: 2d3030207375625b x15: ffffffffffffffff [ 2.540818] x14: ffff80000954e228 x13: ffff000005a6ba1c x12: ffff000005a6b290 [ 2.541480] x11: 0000000000000028 x10: 0000000000000001 x9 : 0000000001001d87 [ 2.542142] x8 : 000000000000ea60 x7 : ffff80000a723800 x6 : 0000000000000001 [ 2.542803] x5 : 0000000000000003 x4 : 0000000000000000 x3 : 0000000000c00008 [ 2.543464] x2 : 000000000080000a x1 : ffff80000fc00008 x0 : ffff80000fc0000c [ 2.544127] Call trace: [ 2.544358] rockchip_pcie_rd_conf+0xb0/0x230 [ 2.544768] pci_bus_read_config_dword+0x84/0xd8 [ 2.545200] pci_bus_generic_read_dev_vendor_id+0x34/0x1b0 [ 2.545711] pci_bus_read_dev_vendor_id+0x4c/0x70 [ 2.546151] pci_scan_single_device+0x84/0xd8 [ 2.546560] pci_scan_slot+0x38/0x120 [ 2.546907] pci_scan_child_bus_extend+0x58/0x330 [ 2.547346] pci_scan_bridge_extend+0x340/0x5a0 [ 2.547771] pci_scan_child_bus_extend+0x1fc/0x330 [ 2.548219] pci_scan_root_bus_bridge+0xd4/0xf0 [ 2.548643] pci_host_probe+0x18/0xb0 [ 2.548991] rockchip_pcie_probe+0x4a8/0x4c0 [ 2.549392] platform_probe+0x68/0xd8 [ 2.549740] really_probe+0xbc/0x428 [ 2.550076] __driver_probe_device+0x114/0x188 [ 2.550490] driver_probe_device+0xb0/0x110 [ 2.550879] __device_attach_driver+0xbc/0x158 [ 2.551293] bus_for_each_drv+0x7c/0xd0 [ 2.551658] __device_attach+0xec/0x1a8 [ 2.552017] device_initial_probe+0x14/0x20 [ 2.552407] bus_probe_device+0x9c/0xa8 [ 2.552766] deferred_probe_work_func+0x9c/0xf0 [ 2.553186] process_one_work+0x20c/0x4c8 [ 2.553567] worker_thread+0x208/0x478 [ 2.553921] kthread+0x138/0x150 [ 2.554229] ret_from_fork+0x10/0x20 [ 2.554575] Code: f94013f5 a8c37bfd d50323bf d65f03c0 (b9400273) [ 2.555132] ---[ end trace b08bc39ec7a1232e ]--- [ 2.555557] note: kworker/u12:4[223] exited with preempt_count 1 I know you said no money for this but still, maybe it's will helpful And also maybe someone can help me with it... Armbian_22.11.1_Rockpi-4b_bullseye_5.15.80.log Armbian_22.11.0-trunk_Rockpi-4b_bullseye_5.15.80.log