Nowe posty

Autor Wątek: Problem z uruchomieniem systemu (Data CRC != calculated CRC)  (Przeczytany 1144 razy)

Offline pilo611

  • Nowy na forum
  • *
  • Wiadomości: 3
    • Zobacz profil
Problem dotyczy systemu wbudowanego:
Linux version 2.6.16.19_15 (michele@micheleubuntu) (gcc version 3.4.1) #1 PREEMPT Fri Apr 20 11:20:09 CEST 2012
CPU: ARM922Tid(wb) [41029220] revision 0 (ARMv4T)
Machine: ECS Arm 9 LH7A404 SHARP

Z góry przepraszam jestem osobą słabo zorientowaną raczej elektronikiem więc moje pytania mogą wydawać się trywialne.
Trafił do mnie do naprawy piec posiadający panel operatorski oparty na w.w. systemie który się nie uruchamia. Po podłączeniu się do portu RS TTL otrzymuję następujący log:


APEX Boot Loader 097.0_VER097REV009 -- Copyright (c) 2004,2005,2006 Marc Singer - ECS Arm Copyright (c) 2006 ECS srl

APEX comes with ABSOLUTELY NO WARRANTY. NEW Version for ECS ARM - FLASH AMD/SPANSION  It is free software and you
are welcome to redistribute it under certain circumstances.
For details, refer to the file COPYING in the program source.

  apex => mem:0xc1400000+0xef08   (61192 bytes)
  env  => nor:256k+64k            (empty)

Use the command 'help help' to get started.


# copy nor:0x80000+1536k 0xc0008000

|
/
-
\
1572864 bytes transferred

# wait 15 Type ^C key to cancel autoboot.
Type ^C key to cancel autoboot.

|
/
-
\
|
/
-
\
|
/
-
\
# boot
Booting kernel at 0xc0008000...
Uncompressing Linux....................................................................... done, booting the kernel.

Linux version 2.6.16.19_15 (michele@micheleubuntu) (gcc version 3.4.1) #1 PREEMPT Fri Apr 20 11:20:09 CEST 2012

CPU: ARM922Tid(wb) [41029220] revision 0 (ARMv4T)

Machine: ECS Arm 9 LH7A404 SHARP

Memory policy: ECC disabled, Data cache writeback

CPU0: D VIVT write-back cache

CPU0: I cache: 8192 bytes, associativity 64, 32 byte lines, 4 sets

CPU0: D cache: 8192 bytes, associativity 64, 32 byte lines, 4 sets

Built 1 zonelists

Kernel command line: console=ttyAM1,57600 root=/dev/mtdblock2 rootfstype=jffs2 mtdparts=phys_mapped_flash:512k(boot)ro,1536k(kernel),14336k(root)

PID hash table entries: 256 (order: 8, 4096 bytes)

Console: colour dummy device 80x30

Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)

Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)

Memory: 32MB = 32MB total

Memory: 30140KB available (1488K code, 310K data, 440K init)

Mount-cache hash table entries: 512

CPU: Testing write buffer coherency: ok

CLCD: registering amba devices

  0 -> 0

SCSI subsystem initialized

usbcore: registered new driver usbfs

usbcore: registered new driver hub

NetWinder Floating Point Emulator V0.97 (double precision)

JFFS2 version 2.2. (NAND) (C) 2001-2003 Red Hat, Inc.

io scheduler noop registered

io scheduler cfq registered (default)

CLCD: PG6 Display on-off

CLCD: LCD setup fb virt 0xffc00000 phys 0xc1c00000 l bc000 io 0xf8003000

CLCD: pixclock 33331200

CLCD: lh7a40x FB hardware, TFT 800x480 5in display

Console: switching to colour frame buffer device 100x30

lcd_light: lcd_light-lh Sharp LH7xxxx LCD_LIGHT driver 1.6

lcd_light: PWM Normale (0)

csc_lh: csc-lh Sharp LH7xxxx CSC control driver 1.2

shutdown: shutdown-lh Sharp LH7xxxx Shutdown driver

watchdog_lh: watchdog-lh Sharp LH7xxxx watchdog driver 1.2


flash_seriale: flash_seriale-lh Sharp LH7xxxx flash_seriale driver

CR0: 87

RX8025... Detect chip (v2)

serial: LH7A40X serial driver

ttyAM0 at MMIO 0x80000600 (irq = 38) is a LH7A40X

ttyAM1 at MMIO 0x80000700 (irq = 40) is a LH7A40X

ttyAM2 at MMIO 0x80000800 (irq = 42) is a LH7A40X

Set DTR Pin on ttyAM2

loop: loaded (max 8 devices)

physmap flash device: 4000000 at 0

phys_mapped_flash: Found 1 x16 devices at 0x0 in 16-bit bank

 Amd/Fujitsu Extended Query Table at 0x0040

phys_mapped_flash: CFI does not contain boot bank location. Assuming top.

number of CFI chips: 1

cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.

3 cmdlinepart partitions found on MTD device phys_mapped_flash

Creating 3 MTD partitions on "phys_mapped_flash":

0x00000000-0x00080000 : "boot"

0x00080000-0x00200000 : "kernel"

0x00200000-0x01000000 : "root"

add_serial_flash: W25Q16 detected [spi0] (2097152 bytes)

sfparts partition parsing not available

Creating 1 MTD partitions on "W25Q16.spi0":

0x00000000-0x00200000 : "sf 2M"

usbmon: debugfs is not available

lh7a404-ohci lh7a404-ohci.0: LH7A404 OHCI

lh7a404-ohci lh7a404-ohci.0: new USB bus registered, assigned bus number 1

lh7a404-ohci lh7a404-ohci.0: irq 56, io mem 0x80009000

usb usb1: configuration #1 chosen from 1 choice

hub 1-0:1.0: USB hub found

hub 1-0:1.0: 2 ports detected

Initializing USB Mass Storage driver...

usbcore: registered new driver usb-storage

USB Mass Storage support registered.

usbcore: registered new driver usbhid

drivers/usb/input/hid-core.c: v2.6:USB HID core driver

input: adc-lh7 as /class/input/input0

input: adc-lh7 Sharp LH7xxxx ADC touchscreen driver

input: enc-lh7 Sharp LH7xxxx encoder driver

input: keys-lh7 Sharp LH7xxxx Input Keys driver

VFS: Mounted root (jffs2 filesystem).

Freeing init memory: 440K

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c

Data CRC eedcc18c != calculated CRC daebc83a for node at 007b4a4c


i tak aż do ponownego restartu.
Wygląda to na uszkodzenie danych w pamięci flash.
Moje pytanie to czy są jakieś szanse na uratowanie tego systemu?
Może wgranie nowej kompilacji. Liczę na jakąkolwiek pomoc. Ze strony producenta tylko nowy panel cena zaporowa.

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 2769
  • 1709
    • Zobacz profil
Odp: Problem z uruchomieniem systemu (Data CRC != calculated CRC)
« Odpowiedź #1 dnia: 2024-01-25, 13:41:14 »
AI podpowiada
Cytuj
CRC danych eedcc18c nie równa się obliczonemu CRC daebc83a dla węzła o adresie 007b4a4c. Oznacza to, że wystąpiła uszkodzenie danych lub błąd w transmisji lub przechowywaniu danych w tym konkretnym miejscu w pamięci. Prawdopodobnie wystąpił błąd podczas procesu transmisji danych lub przechowywania, co spowodowało obliczenie lub zapisanie niepoprawnej wartości CRC.

Aby rozwiązać ten problem, należy zbadać źródło uszkodzenia danych i zidentyfikować potencjalne przyczyny, takie jak wadliwe oprogramowanie, błędy sprzętowe lub błędy transmisji. Dodatkowo, należy zweryfikować integralność danych i rozważyć zastosowanie technik wykrywania i korekcji błędów, takich jak użycie kodów korekcji błędów lub algorytmów sumy kontrolnej, aby zapewnić poprawność danych.

Ze swej strony mogę zasugerować sprawdzenie pamięci ulotnej, np. RAM lub coś podobnego jeśli istnieje.
W teorii samą pamięć flash też da się sprawdzić, kopiując dla bezpieczeństwa dane wcześniej.
Tu masz przykład z badblocks
https://www.tecmint.com/check-linux-hard-disk-bad-sectors-bad-blocks/
https://www.cyberciti.biz/faq/linux-check-the-physical-health-of-a-usb-stick-flash-drive/
PS: Brak polskiej czcionki, nie jest to brak lenistwa, a jej brak w systemie i brak czasu na reczne poprawki.

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3066
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Odp: Problem z uruchomieniem systemu (Data CRC != calculated CRC)
« Odpowiedź #2 dnia: 2024-01-25, 14:36:06 »
Cytuj
AI podpowiada
Generalnie w tej dziedzinie bajania AI można wsadzić sobie...

Padła zawartość pamięci FLASH. Albo softwarowo (czyli jakiś glicz zasilania/programu uszkodził strukturę) albo fizycznie (kość się "zajechała" zapisami - system plików JFFS sugeruje gołą kość SPI-FLASH, nie nośnik wysokopoziomowy typu eMMC).

Tak czy siak trzeba by ukraść zawartość z innego pieca (chyba że da się ściągnąć obraz/update od producenta) i albo po prostu nagrać na nowo (jak był soft-glicz) albo wymienić pamięć i nagrać (jak padła kostka).

Gdybym miał sam nad tym siedzieć:
1 Wylutować flasha
2 Zrobić dump programatorem
3 Spróbowac naprawić obraz z poziomu normalnego Linuksa
4 Zaflashować naprawiony obraz
5 Wlutować flasha z powrotem do pieca.

Jak 2 albo 3 pokażą palec, spróbować pozyskać dobry obraz z sieci.
« Ostatnia zmiana: 2024-01-25, 14:39:40 wysłana przez Paweł Kraszewski »
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

Offline pilo611

  • Nowy na forum
  • *
  • Wiadomości: 3
    • Zobacz profil
Odp: Problem z uruchomieniem systemu (Data CRC != calculated CRC)
« Odpowiedź #3 dnia: 2024-01-25, 16:37:29 »
Dziękuję bardzo za odpowiedź.
Jako że nigdy nie próbowałem naprawiać obrazu ze zgranej pamięci flash to prosiłbym o jakieś info jakich narzędzi trzeba do tego użyć ?
Wasza podpowiedź pozwoliła by mi zaoszczędzić sporo czasu na szukanie w necie 🙂 Z góry dziękuję !

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3066
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Odp: Problem z uruchomieniem systemu (Data CRC != calculated CRC)
« Odpowiedź #4 dnia: 2024-01-26, 05:55:11 »
Wzdeh... Niestety odpowiedź to "standardowe narzędzia systemowe Linuksa plus kilkanaście lat doświadczenia".

Ten flash ma chyba tylko 2MB, mogę w wolnym czasie rzucić okiem bez zobowiązań. Kontakt do mnie jest pod moim nickem z lewej strony tej odpowiedzi.
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

Offline pilo611

  • Nowy na forum
  • *
  • Wiadomości: 3
    • Zobacz profil
Odp: Problem z uruchomieniem systemu (Data CRC != calculated CRC)
« Odpowiedź #5 dnia: 2024-02-04, 21:02:04 »
Zrobiłem Dumpa przez bootloadera z układu S29GL128 Następnie próbowałem zrobić extrakt za pomocą oprogramowania firmware-mod-kit
ale niestety otrzymałem tylko to:

MD5 Checksum:  aa704e00a93eec47c300622c2a90295a
Signatures:    344

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------
2215808       0x21CF80        CRC32 polynomial table, little endian

Nie rozpoznaje systemu plików
firmware dump.bin udostępniam na https://megawrzuta.pl/download/17c3fb8fdfc05a5ff08f55c1d25780b9.html