Uboot/Exynos4412 Bare programming 裸机开发-loadb/dnw

本文介绍了U-Boot在Samsung S5PC220平台(Tiny4412)上的运行情况,包括硬件配置、内存信息及网络状态。详细展示了如何使用DNW工具通过OTG连接进行固件下载,以及如何在不同地址启动应用程序。此外,还提供了在Uart2上打印字符的实例,展示了设备与主机间的有效通信。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

U-Boot 2010.12-00000-g14efcbd (Mar 02 2019 - 13:54:51) for TINY4412


CPU:    S5PC220 [Samsung SOC on SMP Platform Base on ARM CortexA9]
        APLL = 1500MHz, MPLL = 800MHz

Board:  TINY4412
DRAM:   2047 MiB

vdd_arm: 1.2
vdd_int: 1.0
vdd_mif: 1.1

BL1 version:  N/A (TrustZone Enabled BSP)


Checking Boot Mode ... SDMMC
REVISION: 1.1
MMC Device 0: 7566 MB
unrecognised EXT_CSD structure version 7
FAIL: waiting for status update.
MMC Device 1: 1024 MB
MMC Device 2: N/A
*** Warning - using default environment

Net:    No ethernet found.
Hit any key to stop autoboot:  0
TINY4412 #
TINY4412 #
TINY4412 # version
U-Boot 2010.12-00000-g14efcbd (Mar 02 2019 - 13:54:51) for TINY4412
TINY4412 #
TINY4412 #
######### ######### ######### 
######### memory   !!! Note: Uboot build without MMU, link start: 0x43E00000
######### ######### ######### 

TINY4412 # bdinfo
arch_number = 0x00001200
boot_params = 0x40000100
DRAM bank   = 0x00000000
-> start    = 0x40000000
-> size     = 0x10000000
DRAM bank   = 0x00000001
-> start    = 0x50000000
-> size     = 0x10000000
DRAM bank   = 0x00000002
-> start    = 0x60000000
-> size     = 0x10000000
DRAM bank   = 0x00000003
-> start    = 0x70000000
-> size     = 0x10000000
DRAM bank   = 0x00000004
-> start    = 0x80000000
-> size     = 0x10000000
DRAM bank   = 0x00000005
-> start    = 0x90000000
-> size     = 0x10000000
DRAM bank   = 0x00000006
-> start    = 0xA0000000
-> size     = 0x10000000
DRAM bank   = 0x00000007
-> start    = 0xB0000000
-> size     = 0x0FF00000
ethaddr     = 00:40:5c:26:0a:5b
ip_addr     = 192.168.0.20
baudrate    = 0 bps
TLB addr    = 0x3FFF0000
relocaddr   = 0x43E00000
reloc off   = 0x00000000
irq_sp      = 0x43CFBF38
sp start    = 0x43CFBF30
FB base     = 0x00000000
TINY4412 #


TINY4412 # help  loadb
loadb - load binary file over serial line (kermit mode)

Usage:
loadb [ off ] [ baud ]
    - load binary file over serial line with offset 'off' and baudrate 'baud'
TINY4412 #

1. loadb


TINY4412 #
TINY4412 # loadb  0x70003000
## Ready for binary (kermit) download to 0x70003000 at 0 bps...
## Total Size      = 0x000000d8 = 216 Bytes
## Start Addr      = 0x70003000
TINY4412 # go 0x70003000
## Starting application at 0x70003000 ...
## Application terminated, rc = 0x0
TINY4412 #
## Starting application at 0x70003000 ...
## Application terminated, rc = 0x0
TINY4412 #
## Starting application at 0x70003000 ...
## Application terminated, rc = 0x0
TINY4412 #
## Starting application at 0x70003000 ...
## Application terminated, rc = 0x0
TINY4412 #
## Starting application at 0x70003000 ...
## Application terminated, rc = 0x0
TINY4412 #
## Starting application at 0x70003000 ...
## Application terminated, rc = 0x0
TINY4412 #
## Starting application at 0x70003000 ...
## Application terminated, rc = 0x0 
TINY4412 # reset
resetting ...
OK

U-Boot 2010.12-00000-g14efcbd (Mar 02 2019 - 13:54:51) for TINY4412

 
2. dnw 

 

 

##### Build 

lake@lake-Latitude-5491:~/Training/Tiny4412/dnw-linux$ cat src/driver/Makefile   CURRENT_PATH:=$(shell pwd)
LINUX_KERNEL_PATH:=/lib/modules/$(shell uname -r)/build

all:
        $(MAKE) -C $(LINUX_KERNEL_PATH) M=$(CURRENT_PATH) modules
clean:
        rm -rf .*.cmd *.o *.mod.c *.ko .tmp_versions

obj-m := secbulk.o

####### change dnw app default load address to 0x70003000

lake@lake-Latitude-5491:~/Training/Tiny4412/dnw-linux$

  INSTALL /home/lake/Training/Tiny4412/dnw-linux/src/driver/secbulk.ko
At main.c:160:
- SSL error:02001002:system library:fopen:No such file or directory: ../crypto/bio/bss_file.c:74
- SSL error:2006D080:BIO routines:BIO_new_file:no such file: ../crypto/bio/bss_file.c:81
sign-file: certs/signing_key.pem: No such file or directory
  DEPMOD  4.15.0-29-generic
make[1]: Leaving directory '/usr/src/linux-headers-4.15.0-29-generic'
cp dnw.rules /etc/udev/rules.d/
depmod
lake@lake-Latitude-5491:~/Training/Tiny4412/dnw-linux$

##########Device USB/OTG connect to Host
Uboot  
TINY4412 #
TINY4412 # dnw  0x70003000
OTG cable Connected!
Now, Waiting for DNW to transmit data
TINY4412 #

 

######## host

  

lake@lake-Latitude-5491:~/Training/git-4412-asm-led-lake$ sudo  dnw  ./led.bin
load address: 0x70003000
Writing data...
100%    0x0000006E bytes (0 K)
speed: infM/S 

lake@lake-Latitude-5491:~/Training/Day5/uart_put$ sudo  dnw   -a   0xXXXX    ./led.bin
load address: 0xXXXX
Writing data...
100%    0x0000098E bytes (2 K)
speed: infM/S

 

######### Test Device 

TINY4412 # go  0x70003000
## Starting application at 0x70003000 ...
 

 

 


######### Example 2  ## print a on Uart2 on Tiny4412  while Uart0 is Debug/Uboot


############ Device  

TINY4412 # dnw  0x40008000
OTG cable Connected!
Now, Waiting for DNW to transmit data


 ############  host  
lake@lake-Latitude-5491:~/Training/Day5/uart_put$  sudo  dnw   -a   0x40008000    ./uart.bin
[sudo] password for lake:
load address: 0x40008000
Writing data...
100%    0x0000098E bytes (2 K)
speed: infM/S
lake@lake-Latitude-5491:~/Training/Day5/uart_put$


######### Device  
Download Done!! Download Address: 0x40008000, Download Filesize:0x984
Checksum is being calculated.
Checksum O.K.
TINY4412 # go  0x40008000
## Starting application at 0x40008000 ...

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值