PDA

Просмотр полной версии : FAQ про Debug log в телефонах СЕ.



Xishnik787
03.05.2009, 19:18
Для диагностики работы телефона SE/Ericsson разработчиками предусмотрен режим отладки, при котором аппарат выдаёт всю отладочную информацию в последовательный порт. Процесс загрузки телефона становится наглядно видимым, ошибки, неисправности - тоже.
Аналогия существует у Нокии - их Self Tests, хотя возможности слегка отличаются.

Как снять debug log?

При наличии кабеля 4-в-1:

1.Открыть стандартную виндовую программу Гипертерминал (Start->Programs->Accessories->Communications), или же Win-R - hypertrm
2.В появившемся меню вписать любое название. "1" или "fdsasf" - не важно.
3.В следующем окошке выбрать ком-порт, на котором висит кабель 4-в-1, сетул3-бокс или (свой вариант).
4.В окошке настройки параметров порта выбрать: 115200-8-None-1-Hardware/None.
5.Важно: В меню "Transfer" выбрать "Capture Text", в окошке выбрать файл, который и будет нам далее интересен. Нажать "Start".
6.В выключенный телефон воткнуть кабель, телефон должен начать включаться. В это время в окне гипертерминала должна посыпаться читаемая информация. Это и есть дебаг-лог.
7.Теперь стоит подождать. В зависимости от проблемы лог может показать причину неисправности как за 1 секунду, так и за пару минут.
8.Лучше конечно передержать, чем недодержать. Но если информация примет вид дампа памяти.


@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Will dump 1 external RAM(s)
MEMORYDUMP RAM_0
20000000&50:97WAIADwiPhpRghyACQmHD1JDCBgQwkdCVgAK
20000060&64:RdGoaAIoEtE3HAvgAJkMIAloeEMIGIJoAGgjHDEcAPBN+X8 caGiHQvDbAiEw4AIgCHBMYDccCOAAm7gAG2gMInpDmlgIGM
смело можно выдёргивать кабель, такая информация ничего хорошего не прояснит, а места займёт прилично.

При наличии UFS

1.Запустить UFS-RTP.
2.Включить Charge ON, Mon On.
3.В выключенный телефон воткнуть кабель, телефон должен начать включаться, а лог появится в окне UFS.
4.Как только настал момент "хватит" или пошёл дамп памяти - нажать Mon Off.
5.Сохранить лог.

Расшифровка лога.


FSFLASH: CPU is ARM 926, revision 3, architecture 6 - Описанте аппаратных средств телефона - процессор, флеш.
FSFLASH: Inst Cache size is 32.00 Kb, 4-way, 32 bytes/line.
FSFLASH: Data Cache size is 16.00 Kb, 4-way, 32 bytes/line.
FSFLASH: NOR (Sibley) Flash device @ [0x44000000-0x47FFFFFF] 65536 Kb - Тип флеши, размер, диапазон адресов, производитель, модель.
FSFLASH: Vendor (0x20): ST
FSFLASH: Device: ?????? (0x8819)
FSFLASH: Unique Device Number: 0x13542530629F2966
FSFLASH: Page size: -
FSFLASH: Write Buffer Size: 1024 bytes
FSFLASH: Burst Mode: ON
FSFLASH: Erase region [0x44000000-0x47FFFFFF] has an erase block size of 256 Kb
FSFLASH: Mounting logical flash device 0 - Разбиение физической памяти на логические "диски". В данном случае 2*32Мб.
FSFLASH: Flash segment 0:0 located @ [0x45E00000,0x47DFFFFF] (32768 Kb)
FSFLASH: Flash type: NOR
FSFLASH: Block size: 1024
FSFLASH: Logical erase size: 256 Kb
FSFLASH: Write processes started, pid = 0x10031.
FSFLASH: Erase processes started, pid = 0x10032.
FSFLASH: Check
FSFLASH: Stage 1
FSFLASH: Stage 2
FSFLASH: Stage 3
FSFLASH: Stage 4
FSFLASH: Config block located @ 0x45E00000
FSFLASH: Mount block located @ 0x468B8C00
FSFLASH: CLEAN blocks 17853
FSFLASH: MIN CLEAN blocks 512
FSFLASH: BAD blocks 0 - Количество непригодных блоков, не страшно даже если там не 0.
FSFLASH: State 5 skipped
FSFLASH: Stage 6.1
FSFLASH: Stage 6.2 skipped
FSFLASH: Stage 7
FSFLASH: Stage 8
FSFLASH: Check done
FSFLASH: TOTAL number of blocks: 32768
FSFLASH: AVAILABLE blocks: 31596
FSFLASH: MAX logical block nbr: 31595
FSFLASH: COMMITTED blocks: 13598
FSFLASH: FREE blocks: 17998
FSFLASH: DIRTY blocks: 1189 (0 BAD)
FSFLASH: CLEAN blocks: 17849 (17849 NOR)
FSFLASH: HEADER blocks: 132
FS: Mounting FAT file system partition / for read/write
FS: SecPerClus = 2
FS: BytesPerSec = 512
FS: RootEntCnt = 512
FS: NumFATs = 1
FS: RsvdSecCnt = 1
FS: Type: FAT16
FS: AtFSX: 11.13
FS: Block size: 1024
FS: Read size: 1024
FS: FAT mirroring: OFF
FS: Sector locations
FS: Size: 53879 (0xD277)
FS: PBR: 1 (0x1)
FS: FAT start: 2 (0x2)
FS: Active FAT start: 2 (0x2)
FS: Root start: 108 (0x6C)
FS: Clusters: 26870 (0x68F6)
FS: Cluster start: 140 (0x8C)
FS: Cluster last: 53879 (0xD277)
FS: File System Size: 26870 (26870 Kb)
FS: Free Logical Blocks: 15521 (15521 Kb)
FS: Free Physical Blocks: 17997 (17997 Kb)
FS: Used Blocks: 11349 (11349 Kb)
FS: Partition / mounted
Описание логических разделов в файловой системе, из ценного - можно прикинуть, как много бэд-блоков, и только.

Информация о версии прошивки.
BuildInfo: Label: <CRH109338_14_R19A003> Variant: <cxc1329257_U250_PT_PHONE>
BuildInfo: Generated: 2007-11-20 20:51 by Off.Bld
Product : <Sony Ericsson T650> Version: 0000
HW Setup : Marika P2A (Id:0x9900) IRDA: B073 BT: C073 RS232: Error
Vendor : <Sony Ericsson> PNP: SER USB: 0FCE BT: 0000
OS: core startup complete!
OS: Starting TimerProcess
OS: Vector 37 Pri 17 do not use DDA
WHAM_HW_ControlProcess is running

Сообщения от процессов "MPH", "RR" и других слабочитаемых - отвечают за работу GSM тракта, и особой смысловой нагрузки не несут.

MPH: PID 65639
RLC_DL: S I
RR: PID 65641
RR: RR_MM_PRIM 469955328
RR: MM_RR_PRIM 469955968
RR: MPH_RR_PRIM 469956608
RLC: RR_DOWNLINK_TBF_RELEASE_CNF = 469971331
RLC: RR_TBF_ESTABLISH_IND = 469971329
EILD_LLRS232_Init. Original GPIO routing:
RX : No
TX : No
CTS: No, Index=0
RTS: No, Index=0
### Print Server: Requesting DebugMux channel...

A
376 ### Print Server: Started OK
CA
376 CB: Process started, pid 0x100ee.
376 SEMC_ACB: Version = ACBM V3.13, debuglevel = 0x1131 [GLD] GRAM Bank 1 (noncached): 20400000 - 20800000
376 [GLD] GRAM Bank 2: 20800000 - 20C00000
376 [GLD] GRAM Bank 3: 20C00000 - 21000000
397 BT/EBT_sil.c: 380 SIL_OpenConnection: COM1:baud=115200 parity=N data=8 stop=1
397 RR state 0
397 CC: TTY mode = 0
397 * CC0 state 0
397 *********** FINAL FLASH DATE: 20080125 ************
397 MPH: PacketChannels activated
397 MPH: GDFS 0 read MCC 363
398 RTS INFO: Did NOT find the signal in the registered database. Sending process: IDBGSRV_Process(65715) Signal no: 20887 Receiving process:UMTS_L2_PT (65682)EILD_HCITL.c: 613 EILD_HCITL_SetTXPin: PinLevel = 1
401 PHY_MasterProcess: Temperature subscription success.[sysctrl] ON-button pressed - тип сигнала включения, зарядка или кнопка
401

Ещё одна информация о прошивке:
************************************************** *************************************
426 * Sony Ericsson Mobile Communications AB
426 * Copyright 2003
426 ************************************************** *************************************
426 * Build date: R8BC004 prg1200-2562_GENERIC_SN
426 * Platform label: LDS_OSDD_U250_HB106_PRODUCT_071123_0912_ISO
426 * Platform patch label: LDS_U250_HB106_PRODUCT_071204_1416_ISO
426 ************************************************** *************************************
426
439

АТ - сервер обслуживания модема
443 AT process: Awake and AT your service!
443 AT/SysInfo SYS_VENDOR_NAME: Sony Ericsson
443 AT/SysInfo SYS_PRODUCT_NAME: Sony Ericsson T650
SimLock : NOT OK, PhoneLock : NOT OK, Sim Active : NOT ACTIVE
Это не ошибка, так всегда

1032 SL<-EVENT_SIM_STATE_CHANGED in State 0 from 100d2
1032 SL: Not active
1032 SL new SIM handle=0
1032 70[BrowserPushNotification_AddSubscription] SUCCESSBT/BT.c: 1317 HostController_Init: Configured for "STLC2500x"
1049 BT/BT.c: 1876 DirName = "/ifs/corrections"
ST Microelectronics: BT2.0+EDR, LM_Version = R5A
STLC2500 R4.2 12102005 12:40:14 ZAV100012
HW Id= V440BAA
1055 BT/BT.c: 2068 CHIP_ID = 0x00000000, HCI_Revision = 0x0402, BT_LMP_Subversion = 0x0520
1057 BT/BT.c: 2303 Download: STLC2500_R4_02_A7.ptc, Size = 10820
Сообщения от процесса ВТ/ВТ.с - информация о взаимодействии блютуз-чипа и ОС, главное - не должно быть ошибок.


С этого момента телефон включён, и должен показывать заставку.
1055
1091 Disp_CreateFont: Creating font 1
1093 Disp_CreateFont: Creating font 2
1094 Disp_CreateFont: Creating font 17
1104 Disp_CreateFont: Creating font 44
1105 Disp_CreateFont: Creating font 48
1107 Disp_CreateFont: Creating font 49
1124 Disp_CreateFont: Creating font 91
1126 Disp_CreateFont: Creating font 92
1127 Disp_CreateFont: Creating font 94
1129 ***** Investigating Language Availability *****

Список языков интерфейса.

1130 ENG: FS = Available, ROM = Available
1130 RUS: FS = Available, ROM = Unavailable
1130 ***********************************************
1132 MALL: **** NEW MAXIMUM HEAP 0 USAGE: 793536 bytes requested in total ****
1185 [Window#1.1 "Standby"] Lost focus
1221 [Window#2.1 "InitBook"] Got focus[sysctrl] Controlled initialization of processes complete
1231

Сообщения от подобных процессов ([Window#2.1 "InitBook"]) - большая гарантия того, что телефон уже нормально запустился, и что-то показал.


Сообщения от процесса BATT - полезны при анализе не заряжающихся, неверно определяющих АКБ телефонов.
8545 BATT: Compensated VBAT (3786 mV) based remaining capacity is 41.0%
8545 BATT: Average remaining capacity is 41.0%
63281 BATT: Battery Temperature is 30
Температура батареи - особо ценна, не так далеко и от этого же процесса можно увидеть и температуру платы.

А сообщения такого вида говорят что телефон видит сеть, и готов к работе.
81026 MPH: requestBCCH Norm TC 6, ARFCN 771, SI flag 20
81026 MPH: requestBCCH Norm TC 6, ARFCN 792, SI flag 20
81209 MPH B 807 1 1 1 1 27 2
81489 TL_Counter 6 CDT_Counter 11
81489
81568 MPH S 776 1 38 -490 -17 7 2380

Краш системы

Очень часто телефоны СЕ моргают, недозагружаются или виснут на заставке. Почти во всех этих случаях в дебаг-логе появляется сообщение об фатальной ошибке, вызвавшей остановку работы телефона.
Выглядит она так:

################################################## #################################
This is the Platform Error handler
По этому тексту и стоит искать её в логе, Ctrl-F "Platform Error"
SW Build: R1KG001 prgCXC1250200_GENERIC_CY
An error has been reported by the kernel:
user_called : 0x0
error code : 0x80100113 OSE_EUNEXPECTED_EXCEPTION_REGDUMP
subcode : data abort (data access memory abort) OSE_KRN (0x00100000)
product : Kernel
header file : ose_err.h
extra : 0x20269160
mode : supervisor
reg PC : 0x450A1B3C
reg LR : 0x450A185D
reg PSR : 0x00000013
reg SP : 0x2026922C
Всё что выше - не особо представляет интерес
для поиска неисправности.
Current Process: 0x0001010d
Process Name: @CALENDAR
А поле "Process Name" - ещё как представляет.
В данном случае стоит запомнить имя процесса - @CALENDAR
File:
Line: 0
CRASH ID: 0x205A02C8
FAR: 0x450A1B3C
IMEI: 352401-01-458002
Saved print info: start 0x202E7E4C size 50000 pos 27453

Типичные краш-логи

@MMI
Самый распространённый краш-лог возникает при невозможности проинициализировать дисплей. Конечно же чаще всего на w850.


[GVI] EC: 20 (DEVICE_NOT_INSTALLED) 00000000, pid:0x10101 (GraphicsServer_Process) cid: 104 (GetOriginalDisplayUpdateOrientation)

Найдя такую фразу в логе ("DEVICE_NOT_INSTALLED") можно
на 100% утвержать, что дело как минимум в связке дисплей-процессор.
В краш-логе в таком случае обычно фигурирует процесс @MMI

Если же с дисплеем всё в порядке видно другую фразу -

[GVI] DisplayDriver Installed:Wilma LCD QVGA by Hitachi driver: R63400A1 Ver:200701021 WxH=240x320
483
Иные интерпретации по процессу @MMI - неполадки с контроллером питания, его пропайка иногда решала проблему


@CALENDAR

Краш связан скорее всего с переполнением записей календаря.
Пока досконально не проверено, но похоже лечится только перезаписью GDFS_in_ssw через ТП.


Зависание лога на каком-то месте

При этом у телефона сразу после заставки пропадает и подсветка, и изображение, и он тихонечко висит.

Кусок типичного лога такой:

EILD_LLRS232_Init. Original GPIO routing:
RX : No
TX : No
CTS: No, Index=0
RTS: No, Index=0
### Print Server: Requesting DebugMux channel...
2
585 ### Print Server: Started OK
A
И всё, больше ни буквы.
В данном случае неисправность кроется в ЕДЖ-сопроцессоре EDGAR, d2003, в нём самом или пресловутой стекляшке рядом с ним.
Эта же неисправность приследует и db2012 телефоны типа w810, и лог точно такой же.

Другие проблемы

Стоит их искать по ключевым словам Failed и Error.
Каждую фразу с ними обдумать, лишнее отсеять.
Ошибками достоверно не являются такие сообщения:


HW Setup : Marika P2A (Id:0x9900) IRDA: B088 BT: C088 RS232: Error
RTS ERROR: Failed to allocate additional 896 byte as static memory, allocating as heap, 1109 32-bit needed (1025 configured)
Load Module Starter: Hunt for Program Manager failed(OBEX/obex_session.c line: 2291) OBEX Started.
1363 BT/BT.c: 2175 Data missing in GDFS ?!, DS_FileSize = 0, ==> skip download
1364 BT/BT.c: 2196 Failed to download GD_BT_Dynamic_Settings_File
5414 GMM: REG FAILED, Cause = DETACHED
1037 [SIM] *** ERROR *** No Card Present
1037 [SIMUTIL] Error OPA_UE_RESOURCE_ACCESS, domain error 50 reported from line 90 in 'csimservices_imp.c'.

Всё иное должно насторожить.

А если лога нет?

Тут важно отсеять причину в кабелях/разьемах. Если телефон видится и шьётся по ком-интерфейсу (4-в-1) - дебаг лог тоже обязан пойти.
По сути дебаг-лог выдаёт на порт прошивка. Прошивку же запускает EROM, который ничего в лог не пишет.
Т.е. если ЕРОМ прибит, или не прошла проверка ГДФС - мы ничего не увидим.
Слава богу в таком случае телефон хотя бы красным светодиодом мигает.

Ещё железные причины возможны. Но что - сказать трудно, скорее всего брак м/сх флеш (рам).


Статистика, как известно, сила, поэтому сбор логов с решениями проблемы будет полезен.
Наверное стоит писать прямо в этой теме, кусок лога - причина - решение.