User Tools

Site Tools


ru:docs:techref:bootloader:realtek

RealTek

Загрузчик RealTek разработан непосредственно компанией RealTek и используется только с чипами собственного производства (RTL819x, RTL8881 и т.д.). Исходники можно найти разных версиях Realtek SDK.

Согласно конфигурации из исходников загрузчик поддерживает как минимум TFTP и опционально HTTP и DHCP сервисы.

Booting...

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@
@ chip__no chip__id mfr___id dev___id cap___id size_sft dev_size chipSize
@ 0000000h 0c84018h 00000c8h 0000040h 0000018h 0000000h 0000018h 1000000h
@ blk_size blk__cnt sec_size sec__cnt pageSize page_cnt chip_clk chipName
@ 0010000h 0000100h 0001000h 0001000h 0000100h 0000010h 000002dh GD25Q128
@ 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 
---RealTek(RTL8196D)at 2013.12.26-08:32+0800 v1.1 [16bit](700MHz)
no rootfs signature at 000E0000!
no rootfs signature at 000F0000!
no rootfs signature at 00130000!
no rootfs signature at 000E1000!
no rootfs signature at 000E2000!
...
[skipped]
...
no rootfs signature at 0015E000!
no rootfs signature at 0015F000!
P0phymode=03, embedded phy

---Ethernet init Okay!

<RealTek>

Short help command:

<RealTek>?

----------------- COMMAND MODE HELP ------------------

HELP (?)    : Print this help message
DB <Address> <Len>
DW <Address> <Len>
EB <Address> <Value1> <Value2>...
EW <Address> <Value1> <Value2>...
CMP: CMP <dst><src><length>
IPCONFIG:<TargetAddress>
AUTOBURN: 0/1
LOADADDR: <Load Address>
J: Jump to <TargetAddress>
FLR: FLR <dst><src><length>
FLW <dst_ROM_offset><src_RAM_addr><length_Byte> <SPI cnt#>: Write offset-data to SPI from RAM
MDIOR:  MDIOR <phyid> <reg>
MDIOW:  MDIOW <phyid> <reg> <data>
PHYR: PHYR <PHYID><reg>
PHYW: PHYW <PHYID><reg><data>
D8 <Address>
E8 <Address> <Value>

DW - Выгрузка дампа памяти в Hex 32bit словах. Address: начальный адрес в hex ; Len: Длина куска в dec (округление вверх до ближайших 4)

<RealTek>DW 80000000 8
80000000: DEADBEEF 13371337 00C0FFEE D15EA5ED
80000010: 00000000 00000000 00000000 00000000
<RealTek>

EW - Запись значения hex в память 32-битными словами Address: Начальный адрес в hex ; Values: значения, разделенный пробелами (hex words) (Unlimited?)

<RealTek>EW 80000000 deadbeef 13371337 c0ffee d15ea5ed
<RealTek>

DB - Выгрузка дампа памяти в байтах Address: Начальный адрес в hex ; Len: Кол-во байт в dec

<RealTek>DB 80000000 32
[Addr] .0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
80000000: de ad be ef 13 37 13 37 00 c0 ff ee d1 5e a5 ed .....7.7.....^..
80000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
<RealTek>

EB - Запись значения hex в память в байтах Address: Начальный адрес hex ; Values: Значения, разделенный пробелами (hex bytes) (Unlimited?)

<RealTek>EB 80000000 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f
<RealTek>

CMP - Сравнение кусков памяти 32-битными кусками. dst: Первый адрес в hex ; src: Второй адрес в hex ; length: Длина в байтах (округлена до 32бит)

<RealTek>CMP 80000000 80000010 4
0th data(deadbeef 00000000) error
<RealTek>CMP 80000010 80000014 4
No error found
<RealTek>

IPCONFIG - Просмотр/установка IP-адреса загрузчика для сервисов (TFTP,HTTP,DHCP) (по умолчанию 192.168.1.6) ip: IP-адрес

<RealTek>IPCONFIG
Target Address=192.168.1.6
<RealTek>IPCONFIG 10.0.0.1
Now your Target IP is 10.0.0.1
<RealTek>

AUTOBURN - Должен ли загрузчик автоматически прошивать во флэш загруженный файл по TFTP? 0 = нет, 1 = да

<RealTek>AUTOBURN 0
AutoBurning=0
<RealTek>

LOADADDR - Устанавливает адрес загрузки в память по TFTP. address: Адрес в hex

<RealTek>LOADADDR 80000000
Set TFTP Load Addr 0x80000000
<RealTek>

J - Прыг по адресу (загружаем имидж) address: Адрес в hex

<RealTek>J 80500000
---Jump to address=80500000
Decompressing kernel... done!
Starting kernel at 80000000...

FLR - Чтение из Flash в RAM dst: RAM адрес в hex ; src: Flash адрес в hex ; length: Длина куска в байтах в hex(!!!)

<RealTek>FLR 80000000 100000 f
Flash read from 00100000 to 80000000 with 0000000F bytes         ?
(Y)es , (N)o ? --> y
Flash Read Successed!

Загрузчик принимает данные через TFTP. Не всегда работает, но можно попробовать встроенный Windows TFTP для загрузки прошивки:

X:\>tftp -i 192.168.1.6 put testkernel.bin
Transfer successful: 1048576 bytes in 2 second(s), 514296 bytes/s

На устройстве вы увидите:

<RealTek>
**TFTP Client Upload, File Name: testkernel.bin
- (Spinning progress indicator)
**TFTP Client Upload File Size = 00100000 Bytes at 80500000
Success!

PS: Если во время загрузки по TFTP никакой реакции в консоли устройства не видно, - попробуйте TFTP-сервер стороннего производителя.

ru/docs/techref/bootloader/realtek.txt · Last modified: 2018/06/05 22:03 by tmomas