riscv-software-src / riscv-software-src/opensbi

[help] K210 serial port has no output

Open
#350 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
1.5k
Forks
712
PR merge metrics
No merged PRs in 30d

Description

i make the fw_payload.bin
make CROSS_COMPILE=riscv64-unknown-elf- PLATFORM=kendryte/k210 PLATFORM_RISCV_XLEN=64
CC lib/sbi/riscv_asm.o
CC lib/sbi/riscv_atomic.o
AS lib/sbi/riscv_hardfp.o
CC lib/sbi/riscv_locks.o
CC lib/sbi/sbi_ecall.o
CC lib/sbi/sbi_ecall_exts.o
CC lib/sbi/sbi_ecall_time.o
CC lib/sbi/sbi_ecall_rfence.o
CC lib/sbi/sbi_ecall_ipi.o
CC lib/sbi/sbi_ecall_base.o
CC lib/sbi/sbi_ecall_hsm.o
CC lib/sbi/sbi_ecall_srst.o
CC lib/sbi/sbi_ecall_susp.o
CC lib/sbi/sbi_ecall_pmu.o
CC lib/sbi/sbi_ecall_dbcn.o
CC lib/sbi/sbi_ecall_cppc.o
CC lib/sbi/sbi_ecall_legacy.o
CC lib/sbi/sbi_ecall_vendor.o
CC lib/sbi/sbi_ecall_dbtr.o
CC lib/sbi/sbi_bitmap.o
CC lib/sbi/sbi_bitops.o
CC lib/sbi/sbi_console.o
CC lib/sbi/sbi_domain_context.o
CC lib/sbi/sbi_domain.o
CC lib/sbi/sbi_emulate_csr.o
CC lib/sbi/sbi_fifo.o
CC lib/sbi/sbi_hart.o
CC lib/sbi/sbi_heap.o
CC lib/sbi/sbi_math.o
AS lib/sbi/sbi_hfence.o
CC lib/sbi/sbi_hsm.o
CC lib/sbi/sbi_illegal_insn.o
CC lib/sbi/sbi_init.o
CC lib/sbi/sbi_ipi.o
CC lib/sbi/sbi_irqchip.o
CC lib/sbi/sbi_platform.o
CC lib/sbi/sbi_pmu.o
CC lib/sbi/sbi_dbtr.o
CC lib/sbi/sbi_scratch.o
CC lib/sbi/sbi_string.o
CC lib/sbi/sbi_system.o
CC lib/sbi/sbi_timer.o
CC lib/sbi/sbi_tlb.o
CC lib/sbi/sbi_trap.o
CC lib/sbi/sbi_trap_ldst.o
CC lib/sbi/sbi_unpriv.o
AS lib/sbi/sbi_expected_trap.o
CC lib/sbi/sbi_cppc.o
AR lib/libsbi.a
CC platform/kendryte/k210/lib/utils/timer/aclint_mtimer.o
CC platform/kendryte/k210/lib/utils/timer/fdt_timer.o
CC platform/kendryte/k210/lib/utils/timer/fdt_timer_drivers.o
CC platform/kendryte/k210/lib/utils/serial/sifive-uart.o
CC platform/kendryte/k210/lib/utils/libfdt/fdt.o
CC platform/kendryte/k210/lib/utils/libfdt/fdt_addresses.o
CC platform/kendryte/k210/lib/utils/libfdt/fdt_check.o
CC platform/kendryte/k210/lib/utils/libfdt/fdt_empty_tree.o
CC platform/kendryte/k210/lib/utils/libfdt/fdt_ro.o
CC platform/kendryte/k210/lib/utils/libfdt/fdt_rw.o
CC platform/kendryte/k210/lib/utils/libfdt/fdt_strerror.o
CC platform/kendryte/k210/lib/utils/libfdt/fdt_sw.o
CC platform/kendryte/k210/lib/utils/libfdt/fdt_wip.o
CC platform/kendryte/k210/lib/utils/irqchip/plic.o
CC platform/kendryte/k210/lib/utils/ipi/aclint_mswi.o
CC platform/kendryte/k210/lib/utils/fdt/fdt_helper.o
CC platform/kendryte/k210/lib/utils/fdt/fdt_fixup.o
CC platform/kendryte/k210/platform.o
CC platform/kendryte/k210/k210.o
AR platform/kendryte/k210/lib/libplatsbi.a
AS platform/kendryte/k210/firmware/payloads/test_head.o
CC platform/kendryte/k210/firmware/payloads/test_main.o
MERGE platform/kendryte/k210/firmware/payloads/test.o
ELF platform/kendryte/k210/firmware/payloads/test.elf
OBJCOPY platform/kendryte/k210/firmware/payloads/test.bin
AS platform/kendryte/k210/firmware/fw_payload.o
ELF platform/kendryte/k210/firmware/fw_payload.elf
OBJCOPY platform/kendryte/k210/firmware/fw_payload.bin

and then
sudo python3 ~/xv6-k210/tools/kflash.py -p /dev/ttyUSB0 -b 1500000 -t build/platform/kendryte/k210/firmware/fw_payload.bin

[INFO] COM Port Selected Manually: /dev/ttyUSB0
[INFO] Default baudrate is 115200 , later it may be changed to the value you set.
[INFO] Trying to Enter the ISP Mode...
._
[INFO] Automatically detected goE/kd233

[INFO] Greeting Message Detected, Start Downloading ISP
Downloading ISP: |==============================================================================| 100.0% 10kiB/s
[INFO] Booting From 0x80000000
[INFO] Wait For 0.1 second for ISP to Boot
[INFO] Boot to Flashmode Successfully
[INFO] Selected Baudrate: 1500000
[INFO] Baudrate changed, greeting with ISP again ...
[INFO] Boot to Flashmode Successfully
[INFO] Selected Flash: On-Board
[INFO] Initialization flash Successfully
Programming BIN: |==============================================================================| 100.0% 25kiB/s
[INFO] Rebooting...
--- forcing DTR inactive
--- forcing RTS inactive
--- Miniterm on /dev/ttyUSB0 115200,8,N,1 ---
--- Quit: Ctrl+] | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---

屏幕截图 2024-03-31 192243

This problem has been bothering me for a long time. Thank you for your help

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with platform/kendryte/k210/lib/utils/serial/sifive-uart.c and the K210 platform files named in the build output, then review the kflash.py invocation and the serial-terminal settings. Reproduce the flash and reboot process, and verify that the K210 produces the expected serial output after programming fw_payload.bin.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, python
Domain
embedded-iot
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.