ESpec - мир электроники для профессионалов


Еdimax IC-3140W поиск дампа либо помощь в сборке своего

  Список форумов » Прошивки

Следующая тема · Предыдущая тема
АвторСообщение
jilativ 
Заглянувший
Сообщения: 5
 
Сообщение #1 от 24/11/2019 16:24 цитата  

Добрый день. Досталась камера Еdimax IC-3140W на RealTek RTL8196D
При подключении питания не загружается (происходит перезагрузка)
Разобрал, подцепился к UART, выдает вот такой вот лог:
Код:
Booting...

********************************************************************************
*
* chip__no chip__id mfr___id dev___id cap___id size_sft dev_size chipSize
* 0000000h 0c22017h 00000c2h 0000020h 0000017h 0000000h 0000017h 0800000h
* blk_size blk__cnt sec_size sec__cnt pageSize page_cnt chip_clk chipName
* 0010000h 0000080h 0001000h 0000800h 0000100h 0000010h 000002dh MX25L6405D
*
********************************************************************************

---RealTek(RTL8196D)at 2014.07.22-19:57+0800 v0.3 [16bit](700MHz)
no rootfs signature at 000E0000!
no rootfs signature at 000F0000!
no rootfs signature at 00130000!
no rootfs signature at 00131000!
no rootfs signature at 00132000!
no rootfs signature at 00133000!
no rootfs signature at 00134000!
no rootfs signature at 00135000!
no rootfs signature at 00136000!
no rootfs signature at 00137000!
no rootfs signature at 00138000!
no rootfs signature at 00139000!
no rootfs signature at 0013A000!
no rootfs signature at 0013B000!
no rootfs signature at 0013C000!
no rootfs signature at 0013D000!
no rootfs signature at 0013E000!
no rootfs signature at 0013F000!
Jump to image start=0x80500000...
decompressing kernel:
Uncompressing Linux... done, booting the kernel.
done decompressing kernel.
start address: 0x80003470
CPU revision is: 0000dc02
0xb8000088=4557580
0xb8000088=4557590
0xb8000088=4557410
Determined physical RAM map:
 memory: 04000000 @ 00000000 (usable)
Zone PFN ranges:
  Normal   0x00000000 -> 0x00004000
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0: 0x00000000 -> 0x00004000
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
Kernel command line: console=ttyS0,38400 root=/dev/mtdblock1
icache: 64kB/32B, dcache: 32kB/32B, scache: 0kB/0B
NR_IRQS:48
PID hash table entries: 256 (order: 8, 1024 bytes)
console handover: boot [early0] -> real [ttyS0]
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 57268k/65536k available (3016k kernel code, 8192k reserved, 721k data, 1                                                                                                                                                             08k init, 0k highmem)
Calibrating delay loop... 699.59 BogoMIPS (lpj=3497984)
Mount-cache hash table entries: 512
net_namespace: 524 bytes
NET: Registered protocol family 16
bio: create slab <bio-0> at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
NET: Registered protocol family 1
squashfs: version 4.0 (2009/01/31) Phillip Lougher
msgmni has been set to 112
io scheduler noop registered
io scheduler cfq registered (default)
Realtek GPIO Driver for Flash Reload Default
Serial: 8250/16550 driver, 1 ports, IRQ sharing disabled
serial8250: ttyS0 at MMIO 0x18002000 (irq = 8) is a 16550A
reg0=e
reg2=c8c8
reg2=0
reg2=ffff
reg4=8000
reg4=0
regA=0
regC=0
reg16=0
reg1C=2f2f
reg34=0
reg38=0
reg3A=0
reg3C=247f
reg3E=847f
reg40=0
reg42=0
reg44=0
reg5A=0
reg5C=0
reg5E=0
reg68=0
reg6A=0
reg6C=aa0
usbcore: registered new interface driver ub
Driver 'sd' needs updating - please use bus_type methods
PPP generic driver version 2.4.2
MPPE/MPPC encryption/compression module registered
NET: Registered protocol family 24
Realtek WLAN driver - version 1.6 (2013-02-21)(SVN:2135)
Adaptivity function - version 7.1
40MHz Clock Source
Find Port=0 Device:Vender ID=817910ec


#######################################################
SKB_BUF_SIZE=2408 MAX_SKB_NUM=480
#######################################################




Probing RTL8186 10/100 NIC-kenel stack size order[2]...
chip name: 8196C, chip revid: 0
NOT YET
eth0 added. vid=9 Member port 0x10f...
eth1 added. vid=8 Member port 0x10...
[peth0] added, mapping to [eth1]...
SPI INIT
 ------------------------- Force into Single IO Mode ------------------------
|No chipID  Sft chipSize blkSize secSize pageSize sdCk opCk      chipName    |
| 0 c22017h  0h  800000h  10000h   1000h     100h   50    0   MX6405D/05E/45E|
 ----------------------------------------------------------------------------
SPI flash(MX6405D/05E/45E) was found at CS0, size 0x800000
Creating 4 MTD partitions on "flash_bank_1":
0x000000000000-0x000000140000 : "boot+cfg+linux"
0x000000140000-0x000000800000 : "root fs"
0x000000010000-0x000000800000 : "ipcam"
0x000000780000-0x000000800000 : "jffs2"
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usbcore: registered new interface driver libusual
-------8196D OTG init
reg e0=99
reg e1=ac
reg e2=98
reg e3=c1
reg e4=1
reg e5=89
reg e6=b8
reg e7=1d
dwc_otg: version 2.60a 22-NOV-2006
 [S0] lmdev=83872280
device_register :register pass
=>probe
  [S2]  otg_dev=83a4d980
----init hcd-----
  [S3] hcd==83a47000
DWC_otg: Using DMA mode
dwc_otg logicmodule: DWC OTG Controller
dwc_otg logicmodule: new USB bus registered, assigned bus number 1
dwc_otg logicmodule: irq 15, io mem 0xb8030000
set OTG host to high speed !
DWC_otg: Init: Port Power? op_state=1
DWC_otg: Init: Power Port (0)
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
----enable irq-----
  [S1] dwc_otg_driver, lmdriver=8039de60
Linux video capture interface: v2.00
Advanced Linux Sound Architecture Driver Version 1.0.20.
No device for DAI rt5640-aif1
No device for DAI rt5640-aif2
PABCD_CNR:      FFFE83F7
PABCD_DIR:      FF095C00
PABCD_DAT:      00001800
PIN_MUX_SEL:    00000C03
PIN_MUX_SEL_2:  00F134DB
PABCD_CNR:      FFFE83F7
PABCD_DIR:      FF095C00
PABCD_DAT:      00001800
PIN_MUX_SEL:    00000C03
PIN_MUX_SEL_2:  00F134DB
iis tx page:
 0  16e0  16e0  1ffe  1ffe  15df  15df  fffffe9a
 fffffe9a  ffffe82b  ffffe82b  ffffe010  ffffe010  ffffeb2b  ffffeb2b  2cc
 2cc  18be  18be  1fcf  1fcf  13c0  13c0  fffffbcf
 fffffbcf  ffffe664  ffffe664  ffffe05e  ffffe05e  ffffed5f  ffffed5f  593
 593  1a6c  1a6c  1f62  1f62  1178  1178  fffff90e
 fffff90e  ffffe4d0  ffffe4d0  ffffe0ec  ffffe0ec  ffffefb7  ffffefb7  84e
No device for DAI rtl8197d-i2s
RT5640 Audio Codec 0.01 alsa 1.0.20<6>asoc: rt5640-aif1 <-> rtl8197d-i2s mapping ok
DSP version code = 0x501a
rt5640 initial ok!
ALSA device list:
  #0: rtl819xd_rt5640 (RT5640)
nf_conntrack version 0.5.0 (1024 buckets, 4096 max)
ip_tables: (C) 2000-2006 Netfilter Core Team
TCP cubic registered
NET: Registered protocol family 17
Netlink[Kernel] create socket for igmp ok.
Realtek FastPath:v1.03
usb 1-1: new high speed USB device using dwc_otg and address 2
VFS: Mounted root (squashfs filesystem) readonly on device 31:1.
Freeing unused kernel memory: 108k freed
usb 1-1: configuration #1 chosen from 1 choice
CPU 0 Unable to handle kernel paging request at virtual address c0021fff, epc == 800f0d28, ra == 800f0814
Oops[#1]:
Cpu 0
$ 0   : 00000000 10000400 c0021fff 0ef321fe
$ 4   : 00000001 0ef321fd 00000000 7ffffc00
$ 8   : 00000000 81000000 81063658 00000000
$12   : 803a590c 00080000 00080000 80315c90
$16   : 00000000 00000009 c0022000 c0080000
$20   : 00000001 8381bb1c 00000000 01000000
$24   : 00000002 8003f498
$28   : 83818000 8381baf0 00000001 800f0814
Hi    : 00000000
Lo    : 10000000
epc   : 800f0d28 0x800f0d28
    Not tainted
ra    : 800f0814 0x800f0814
Status: 10000404    IEp
Cause : 40000008
BadVA : c0021fff
PrId  : 0000dc02 (<NULL>)
Modules linked in:
Process init (pid: 1, threadinfo=83818000, task=83814c70, tls=00000000)
Stack : 00000020 800060f8 00000000 80000420 8381bb88 00000020 8381bb90 c9f10cde
        03f415fa d54f73b4 67000000 800f0408 c0000012 c0000000 c0005c36 00005c36
        0fed3e95 10000000 10000000 7cbef016 00000000 00000001 c0000000 00000000
        00000001 00000003 00000000 00000003 0000000f c0080644 c0080a68 c0080664
        00000005 830b304c 0000000d 8003f498 00000004 80086184 803d0000 830b9700
        ...
Call Trace:[<800060f8>] 0x800060f8
[<80000420>] 0x80000420
[<800f0408>] 0x800f0408
[<8003f498>] 0x8003f498
[<80086184>] 0x80086184
[<800a365c>] 0x800a365c
[<80081274>] 0x80081274
[<80081700>] 0x80081700
[<80081b70>] 0x80081b70
[<800a34d8>] 0x800a34d8
[<80112d00>] 0x80112d00
[<8009f2b4>] 0x8009f2b4
[<80204210>] 0x80204210
[<8002aa74>] 0x8002aa74
[<8009fb7c>] 0x8009fb7c
[<800a0cf0>] 0x800a0cf0
[<80043284>] 0x80043284
[<8003cc98>] 0x8003cc98
[<80045cb8>] 0x80045cb8
[<8022ca2c>] 0x8022ca2c
[<800060f8>] 0x800060f8
[<80046190>] 0x80046190
[<80006210>] 0x80006210
[<8003ef60>] 0x8003ef60
[<8003a50c>] 0x8003a50c
[<8005e0dc>] 0x8005e0dc
[<8002aa74>] 0x8002aa74
[<8005ee7c>] 0x8005ee7c
[<8005ecc8>] 0x8005ecc8
[<8005ed18>] 0x8005ed18
[<8005ee7c>] 0x8005ee7c
[<80001330>] 0x80001330


Code: 00431021  00431023  02421021 <90430000> 02501021  26100001  12c00171  a0430000  8ba2001d
Disabling lock debugging due to kernel taint

Booting...

********************************************************************************
*

Есть програматор, слил бекап с микросхемы 25LMX6405D. На сайте производителя есть прошивка но, похоже, она только для заливки с web фейса.
Загрузчик живой. Если останавливаю автозагрузку (нажатием Esc в начале загрузки) то на команду "?" реагирует.
Код:
---RealTek(RTL8196D)at 2014.07.22-19:57+0800 v0.3 [16bit](700MHz)
P0phymode=01, embedded phy

---Ethernet init Okay!
<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>
PORT1: port 1 patch for FT2
DRAMTEST <R/W> <enable_random_delay> <PowerManagementMode>
TR <rx_shitf> <tx_shitf>
WPS: 0
Reset: 1
WAKE_or_PIR_IC-3040: 1
LightSensor_IC-3040: 1
RTL_GPIO_MUX:   0x00000006
RTL_GPIO_MUX2:  0x00100000
PABCDCNR_REG:   0xfffe9bf7
PABCDDIR_REG:   0xff014400
PABCDDAT_REG:   0x0001005c
PEFGHCNR_REG:   0x00d4ffff
PEFGHDIR_REG:   0x00090000
PEFGHDAT_REG:   0x00000000
<RealTek>

Через tftp подключается тоже.
Может кто знает как реанимировать либо на чем "спотыкается" загрузка?(железная проблема или все-же софтовая)
Проблема где-то здесь?:

Код:
CPU 0 Unable to handle kernel paging request at virtual address c0021fff, epc == 800f0d28, ra == 800f0814
Oops[#1]:
Cpu 0
...

Подскажите как слепить из слитого дампа и прошивки с оф сайта свой рабочий дамп. Если кто может помочь собрать дамп, выложу и слитый с флешки с проблемой.
Прикрепил фото платы.
jilativ 
Заглянувший
Сообщения: 5
 
Сообщение #2 от 27/11/2019 14:08 цитата  

Восстановил... Никто и нигде не помог, а кто восстанавливал подобные неисправности то только отписывались что все получилось и пропадали...
Опишу как я прошился через TFTP прошивкой из сайта. Я делал это впервые, если что не так то знающие можете поправить. За испорченное оборудование ответственность не несу!

Устанавливаем TFTP клиент.
Настраиваем параметры адаптера ПК
IP 192.168.1.2
Маска 255.255.255.0
DNS 192.168.1.1 и шлюз 192.168.1.1

Подключаем камеру к Ethernet и по UART (Rx Tx GND)
Запускаем программу Putty и настраиваем, жмем соединиться
Скачиваем прошивку из сайта. Отрезаем верхнюю часть прошивки в любом HEX редакторе (Переходим по смещению на адрес 00000128 и удаляем все что выше) и сохраняем. Далее загружаем получившееся по TFTP выбрав наш получившийся файл и нажав кнопку PUT. Загрузчик сам отсюда начинает обновлять ядро и перезагружается. При этом получаем такое сообщение в строке:
Код:
<RealTek>
**TFTP Client Upload, File Name: IC-3140W_3.07_MY
-
**TFTP Client Upload File Size = 005D8003 Bytes at 80500000
Success!
<RealTek>
Linux kernel (root-fs) upgrade.
checksum Ok !
burn Addr =0x00010000! srcAddr=0x80500000 len =0x0012fc12
....................................................................................................................................
Flash Write Successed!
<RealTek>
reboot.......

Здесь мы видим стартовый адрес для загрузки 0x00010000 и размер 0x0012fc12. В редакторе находим это смещение, переходим в эту точку и все что ниже этого смещения выделяем и удаляем. Получаем файл ядра Linux kernel.
Далее опять открываем нашу скачанную из сайта прошивку и поиском ищем строку hsqs (у меня это по смещению 00130000) . Выделяем все что выше и удаляем. Сохраняем получившийся файл – это будет rootfs.
Скидываем по TFTP этот файл. По завершении передачи видим следующее:
Код:
**TFTP Client Upload File Size = 004A8003 Bytes at 80500000
Success!

Теперь пишем команду: flw 00140000 80500000 004A8003
00140000 - это наш 00130000 + 10000 (поскольку в прошивке из сайта нет строк для загрузчика и по сути адрес начинается от 10000, а в самой флешке до 10000 есть данные загрузчика) Его, кстати, сам LOG дает. Вот тут видно:
Код:
0x000000140000-0x000000800000 : "root fs"

80500000 – адрес куда загрузился в оперативную память наш файл
004A8003 – размер нашего файла (видно в командной строке сообщения)
Жмем ентер, подтверждаем действия введя Y и опять ентер.
Код:
<RealTek>flw 00140000 80500000 004A8003
Write 0x004a8003 Bytes to SPI flash#1, offset 0x00140000<0xbd140000>, from RAM 0x80500000 to 0x809a8003
(Y)es, (N)o->Y
.................................................................................................................................... <RealTek>

Получаем работающий девайс.

ДОБАВЛЕНО 27/11/2019 14:23

В архиве несколько картинок к описанию и получившиеся 2 файла. kernel и rootfs.
Для изделий на Realtek действия, скорее всего, похожи.
Ну и пара полезных ссылок:
https://openwrt.org/ru/docs/techref/bootloader/realtek
https://oldwiki.archive.openwrt.org/toh/upvel/ur825ac
jilativ 
Заглянувший
Сообщения: 5
 
Сообщение #3 от 23/12/2019 14:13 цитата  

3140 kernel_rootFS

  .rar  5.98 МБ  Скачано: 116 раз(а)

Перейти: 
Следующая тема · Предыдущая тема
Показать/скрыть Ваши права в разделе

Интересное от ESpec


Другие темы раздела Прошивки



Rambler's Top100 Рейтинг@Mail.ru liveinternet.ru RadioTOP