HPC.ru lite - Все форумы
Форум: КПК и смартфоны на Linux: Zaurus, планшеты Nokia, прочее
Тема: Зависания Cacko ROM 1.23 (Division by zero in kernel)

[Ответить]
Voblin [07.11.2005 09:00] Зависания Cacko ROM 1.23 (Division by zero in kernel):
Господа,

Встретился с проблемой в новой прошивке.
При попытке использовать CF Serial карту (на самом деле GPS) происходит полное зависание Z.

К зависанию приводит простая команда:
$ stty 4800 < /dev/ttyS3

Сразу после втыкания карты Division by zero in kernel. Ниже приведена инфа по карте и информация из лога.
Драйвер загружается serial_cs.

Есть идеи как лечить? Или лучше откатиться на 1.22 ?

$ cardclt resume 0
$ cardctl status 0
3.3V 16-bit PC Card
function 0: , [req attn]
$ cardctl info 0
PRODID_1="TFAC "
PRODID_2="CF30 GPS"
PRODID_3="2001"
PRODID_4=" "
MANFID=0000,0000
FUNCID=2
$ cardctl config 0
Vcc 3.3V Vpp1 0.0V Vpp2 0.0V
interface type is "memory and I/O"
irq 39
speaker output is enabled
function 0:
config base 0x0200
option 0x60 status 0x08 pin 0x00 copy 0x00 ext 0x00
io 0xf60003f8-0xf60003ff
$ cardctl ident 0
product info: "TFAC ", "CF30 GPS", "2001", " "
function: 2 (serial)
$


$ dmesg
Linux version 2.4.18-rmk7-pxa3-embedix-021129 (maslovsky@linux) (gcc version 2.95.2 19991024 (release)) #25 Mon, 31 Oct 2005 08:49:43 +0300
CPU: Intel XScale-PXA255 revision 6
Machine: SHARP Shepherd
Converting old-style param struct to taglist
Memory clock: 99.53MHz (*27)
Run Mode clock: 199.07MHz (*2)
Turbo Mode clock: 398.13MHz (*2.0, active)
On node 0 totalpages: 16384
zone(0): 16384 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: console=ttyS0 root=/dev/mtdblock2 mtdparts=sharpsl-nand:7168k@0k(smf),32768k@7168k(root),-(home) jffs2_orphaned_inodes=delete LOGO=1 LAUNCH=q
Console: colour dummy device 80x30
Calibrating delay loop... 397.31 BogoMIPS
Memory: 64MB = 64MB total
Memory: 61944KB available (1896K code, 489K data, 132K init)
Dentry-cache hash table entries: 8192 (order: 4, 65536 bytes)
Inode-cache hash table entries: 4096 (order: 3, 32768 bytes)
Mount-cache hash table entries: 1024 (order: 1, 8192 bytes)
Buffer-cache hash table entries: 4096 (order: 2, 16384 bytes)
Page-cache hash table entries: 16384 (order: 4, 65536 bytes)
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
RCSR = 2
apm: BIOS version 1.2 Flags 0x02 (Driver version 1.14)
FCS : CCCR = 161
batok installed
Starting kswapd
Journalled Block Device driver loaded
JFFS2 version 2.1. (C) 2001, 2002 Red Hat, Inc., designed by Axis Communications AB.
Squashfs 2.2 (released 2005/07/03) (C) 2002-2004, 2005 Phillip Lougher
reset resolution unkown => 480x640
Console: switching to colour frame buffer device 80x30
fb0: W100FB frame buffer device
keyboard initialized.
pty: 256 Unix98 ptys configured
SharpSL serial driver version 5.05c (2001-07-0 with no serial options enabled
ttyS0 at iomem 0xf8100000 (irq = 14) is a PXA UART
ttyS1 at iomem 0xf8700000 (irq = 12) is a PXA UART
ttyS2 at iomem 0xf8200000 (irq = 13) is a PXA UART
rs_init: IRDA H/W initializaion
sharpled_init: done.
corgi remote controller
Cotulla Real Time Clock driver v1.00
Cotulla Touch Screen driver initialized
block: 128 slots per queue, batch=32
RAMDISK driver initialized: 16 RAM disks of 8192K size 1024 blocksize
Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=xxloop: loaded (max 8 devices)
PPP generic driver version 2.4.1
PPP BSD Compression module registered
ide_cs.c 1.26 1999/11/16 02:10:49 (David Hinds)
Corgi audio driver initialize
Sharp SL series flash device: 1000000 at 0
Using static partision definition
Creating 1 MTD partitions on "sharpsl-flash":
0x00120000-0x007f0000 : "Filesystem"
NAND device: Manufacture ID: 0xec, Chip ID: 0x79 (Samsung K9D1G08V0M)
Creating 3 MTD partitions on "Samsung K9D1G08V0M":
0x00000000-0x00700000 : "smf"
0x00700000-0x02700000 : "root"
0x02700000-0x08000000 : "home"
Linux Kernel Card Services 3.1.22
options:
Intel PXA250/210 PCMCIA (CS release 3.1.22)
pxa_pcmcia_init(0)
pxa_pcmcia_init(1)
Backlight Driver Initialized.
mice: PS/2 mouse device common for all mice
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 4096 bind 4096)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
NetWinder Floating Point Emulator V0.97 (double precision)
IrCOMM protocol (Dag Brattli)
cramfs: wrong magic
FAT: bogus logical sector size 381
VFS: Mounted root (jffs2 filesystem) readonly.
Freeing init memory: 132K
[SD]-clustsize = 4000
Partition check:
mmcda: mmcda1
SD Driver Initialized.
sharp_mmcsd 0.21 27 Sep 2002
VFS: Disk change detected on device mmcd(60,1)
mmcda: mmcda1
VFS: Disk change detected on device mmcd(60,1)
mmcda: mmcda1
MSDOS FS: IO charset utf8
usbdm: usbd_monitor 0.3 035 2002-06-12 20:00
monitor_connected: 1
monitor_load:
monitor_hotplug: agent: usbd interface: monitor action: load
usbdcore: usbdcore 0.1 035 2002-06-12 20:00 (dbg="")
net_fd 0.1 035 2002-06-12 20:00 (dbg="",alwaysup=0,OUT=64,IN=64)
vendorID: 4dd productID: 9031
pxa_bi 0.1-alpha 035 2002-06-12 20:00 (dbg="")
bi_modinit: call udc_startup_events
bi_device_event: call udc_enable
bi_device_event: call udc_all_interrupts
monitor_modinit: finished
ttyS03 at port 0xf60003f8 (irq = 39) is a 16550A
Division by zero in kernel.
Function entered at [<c002e7cc>] from [<c01d5a4c>]
Function entered at [<c010eb30>] from [<c010e480>]
Function entered at [<c010dd1c>] from [<c0111380>]
Function entered at [<c0111234>] from [<c00fb4b0>]
r8 = 00000000 r7 = C329A720 r6 = C329A720 r5 = 00000000
r4 = 00000000
Function entered at [<c00fb270>] from [<c005ebc8>]
Function entered at [<c005eb74>] from [<c005d7a0>]
r6 = 00000000 r5 = C3BAC780 r4 = C329A720
Function entered at [<c005d69c>] from [<c005d698>]
r8 = C00299E4 r7 = C080B000 r6 = 00000001 r5 = 00000802
r4 = 00000802
Function entered at [<c005d64c>] from [<c005d9f4>]
r4 = 00000005
Function entered at [<c005d9b0>] from [<c0029840>]
r7 = 00000005 r6 = 00000002 r5 = 0200AD44 r4 = BFFFFE94
Division by zero in kernel.
Function entered at [<c002e7cc>] from [<c01d5a4c>]
Function entered at [<c010eb30>] from [<c010e480>]
Function entered at [<c010dd1c>] from [<c0111380>]
Function entered at [<c0111234>] from [<c00fb4b0>]
r8 = 00000000 r7 = C329A8A0 r6 = C329A8A0 r5 = 00000000
r4 = 00000000
Function entered at [<c00fb270>] from [<c005ebc8>]
Function entered at [<c005eb74>] from [<c005d7a0>]
r6 = 00000000 r5 = C3BAC780 r4 = C329A8A0
Function entered at [<c005d69c>] from [<c005d698>]
r8 = C00299E4 r7 = C080B000 r6 = 00000001 r5 = 00000802
r4 = 00000802
Function entered at [<c005d64c>] from [<c005d9f4>]
r4 = 00000005
Function entered at [<c005d9b0>] from [<c0029840>]
r7 = 00000005 r6 = 00000004 r5 = 0200AD44 r4 = BFFFFD94
Division by zero in kernel.
Function entered at [<c002e7cc>] from [<c01d5a4c>]
Function entered at [<c010eb30>] from [<c010e480>]
Function entered at [<c010dd1c>] from [<c0111380>]
Function entered at [<c0111234>] from [<c00fb4b0>]
r8 = 00000000 r7 = C18C65A0 r6 = C18C65A0 r5 = 00000000
r4 = 00000000
Function entered at [<c00fb270>] from [<c005ebc8>]
Function entered at [<c005eb74>] from [<c005d7a0>]
r6 = 00000000 r5 = C3BAC780 r4 = C18C65A0
Function entered at [<c005d69c>] from [<c005d698>]
r8 = C00299E4 r7 = C080B000 r6 = 00000001 r5 = 00000802
r4 = 00000802
Function entered at [<c005d64c>] from [<c005d9f4>]
r4 = 00000005
Function entered at [<c005d9b0>] from [<c0029840>]
r7 = 00000005 r6 = 00000004 r5 = 0200AD44 r4 = BFFFFD84
pxa_pcmcia_suspend(0)
$
Voblin [11.11.2005 21:08] :
Что неужели ни у кого никаких идей?
Кстати я проверил с другим GF GPS и на другом завре - та же фигня.

Жаль, но из-за такого досадного недоразумения придется сносить новый ROM! GPS нужен... а копаться некогда. Видимо что-то там за ttyS3 цепляется.

И все равно БОЛЬШОЕ спасибо создателю нового ROM.
Все остальое оч. понравилось.

Желаю что бы это было единственным его глюком проявляющимся у единственного человека.
maslovsky [28.11.2005 16:46] :
На ZUG промелькнула информация, что замена модуля serial_cs на вот этото решила проблему:

http://sourceforge.net/project/showfiles.php?group_id=55933&release_id=162987

Подтвердить/опровергнуть не могу, проверь сам...
Voblin [05.12.2005 09:28] :
Не это не помогает. serial_cs по ссылке собран для Linux 2.4.6 и при modprobe выдает несоответствие версий.
Даже если сделать instmod -f serial_cs а потом modprobe serial_cs то он конечно стартует но все равно не работает.
На досуге может попробую с serial_cs от Cacko 1.22. Может заработает.
Кстати он может он там такой же?

Жаль я хотел выпустить новую версию qpegps (0.9.2.3.2) с некоторыми дополнениями, но хочется делать это когда удастся пускануть с новым ROM.
Не хочется уподобляться виндам у которых порой с новой версией ОС не работает новое ПО (да и старое тоже).
maslovsky [05.12.2005 13:49] :
Модули разные, рекомендую попробовать serial_cs от 1.22.
Voblin [07.12.2005 09:05] :
Попробова serial_cs от 1.22.
Но увы ситуация такая же как 1.23.
Видимо serial_cs не виноват.

$ stty xxxx < /dev/ttyS3
c xxxx отличным от 9600 вешает систему (проверил 19200, 2400, 4800).
Возможно кто-то уже зацепился за какой-либо tty и происходит конфликт?
Кто бы это тогда мог бы быть? Консоль? ВТ?
Нужно копатося.
Voblin [09.12.2005 22:07] :
Проблему криво но удалось решить.
Напишу как в readme.txt к qpegps.
http://sourceforge.net/project/showfiles.php?group_id=55933&release_id=162987
maslovsky [09.12.2005 22:53] :
Можно поточнее каким образом решилась проблема?
[Ответить]