реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> AT91RM9200 + MMC не работает, карта криво монтируется или глюки в железе
Piligrim1158
сообщение Jun 14 2007, 12:49
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 26
Регистрация: 16-05-07
Пользователь №: 27 755



Ну вот и настол тот радосный день, развели свою, проц AT91AR9200 208 лапый, память MT48LC16M16A2. DataFlash:AT45DB161. Память пашет, флешку пишем, линукс стартуем и усе... теряем карту. Карта ММС 512мБ по трем проводам идет, подтяжки стоят 6к8 на данных и командной линии, на тактах не стоит(пробовал ставить не помогло). продольных нету. В общем проблема в том что карта падает, переодически линукс стартует, но крайне редко. Подскажите где копать,, а то вторую неделю понять немогу в чем проблема.

вот что имеем:

DBGU Serial port initialized.
Main Oscillator Frequency: 18438144 Hz
PLL A: CPU clock 191999512 Hz, master clock 63999837 Hz.
PLL B: USB clock 47999738 Hz
SDRAM initialized.
DataFlash: AT45DB161
N pages: 4096
Page Size: 528
Size: 2162688 bytes


U-Boot 1.1.1 (Oct 10 2006 - 20:28:51)

U-Boot code: 21F80000 -> 21F9B960 BSS: -> 21FD070C
RAM Configuration:
Bank #0: 20000000 64 MB
Atmel: AT49BV1614 (16Mbit)
Flash: 2 MB
DataFlash:AT45DB161
Nb pages: 4096
Page Size: 528
Size= 2162688 bytes
Logical address: 0xC0000000
Area 0:C0000000 to C0007FFF (RO)
Area 1:C0008000 to C001FFFF (RO)
Area 2:C0020000 to C0027FFF
Area 3:C0028000 to C020FFFF
In: serial
Out: serial
Err: serial
Hit any key to stop autoboot: 0
MAC: error during MII initialization
*** ERROR: `serverip' not set
## Booting image at 22000000 ...
Image Name: RT9200 Kernel Image
Image Type: ARM Linux Kernel Image (gzip compressed)
Data Size: 1111691 Bytes = 1.1 MB
Load Address: 20008000
Entry Point: 20008000
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK

Starting kernel ...

-------------------Линукс взят с поддержкой ММС и она включена естественно.

Linux version 2.6.19-rc4 (root@at9200) (gcc version 4.1.2 20060901 (prerelease) (Debian 4.1.1-13+b1)) #23 Fri Nov 3 02:44:20 MSK 2006
CPU: ARM920T [41129200] revision 0 (ARMv4T), cr=40003177
Machine: Generic AT91RM9200 board
Memory policy: ECC disabled, Data cache writeback
Clocks: CPU 191 MHz, master 63 MHz, main 18.438 MHz
CPU0: D VIVT write-back cache
CPU0: I cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
CPU0: D cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
Built 1 zonelists. Total pages: 16256
Kernel command line: root=/dev/mmcblk0p1 mem=64M
AT91: 96 gpio irqs in 3 banks
PID hash table entries: 256 (order: 8, 1024 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: 64MB = 64MB total
Memory: 62592KB available (1832K code, 407K data, 76K init)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
NET: Registered protocol family 2
IP route cache hash table entries: 512 (order: -1, 2048 bytes)
TCP established hash table entries: 2048 (order: 1, 8192 bytes)
TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
TCP: Hash tables configured (established 2048 bind 1024)
TCP reno registered
NetWinder Floating Point Emulator V0.97 (double precision)
io scheduler noop registered
io scheduler anticipatory registered (default)
io scheduler deadline registered
io scheduler cfq registered
atmel_usart.0: ttyS0 at MMIO 0xfefff200 (irq = 1) is a ATMEL_SERIAL
atmel_usart.1: ttyS1 at MMIO 0xfffc0000 (irq = 6) is a ATMEL_SERIAL
atmel_usart.2: ttyS2 at MMIO 0xfffc4000 (irq = 7) is a ATMEL_SERIAL
atmel_usart.3: ttyS3 at MMIO 0xfffc8000 (irq = 8) is a ATMEL_SERIAL
atmel_usart.4: ttyS4 at MMIO 0xfffcc000 (irq = 9) is a ATMEL_SERIAL
eth0: Link down.
eth0: AT91 ethernet at 0xfefbc000 int=24 10-HalfDuplex (00:00:00:00:11:11)
eth0: Realtek RTL8201(cool.gifL PHY
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=xx
ide-at91rm9200rt: registering channel 0 at c480601c, irq 25
ide-at91rm9200rt: unable to register
mice: PS/2 mouse device common for all mice
at91_rtc at91_rtc: rtc intf: dev (254:0)
at91_rtc at91_rtc: rtc core: registered at91_rtc as rtc0
AT91 Real Time Clock driver.
MMC: 4 wire bus mode not supported by this driver - using 1 wire
mmcblk0: mmc0:0001 509184KiB

<---- тута как я понял нашли карту...

mmcblk0:<6>TCP cubic registered
Initializing XFRM netlink socket
NET: Registered protocol family 1
NET: Registered protocol family 17
802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com>
All bugs added by David S. Miller <davem@redhat.com>
at91_rtc at91_rtc: setting the system clock to 2004-01-17 22:51:17 (1074379877)
p1
EXT2-fs warning: mounting unchecked fs, running e2fsck is recommended
VFS: Mounted root (ext2 filesystem).
Freeing init memory: 76K
INIT: version 2.86 booting
Unhandled fault: page translation fault (0xfffffff9) at 0x000afe0c


pgd = c3c34000
[00000000] *pgd=23c3e031, *pte=00000000, *ppte=00000000
Internal error: Oops: 0 [#1]
Modules linked in:
CPU: 0
PC is at __init_begin+0x3fff8000/0x30
LR is at elv_may_queue+0x2c/0x38
pc : [<00000000>] lr : [<c00e5e68>] Not tainted
sp : c02f7a34 ip : c02f7a24 fp : c02f7a60
r10: 00000000 r9 : c03616e0 r8 : ffffff91
r7 : 00000000 r6 : c3c1fb40 r5 : 00000000 r4 : c3c1fb30
r3 : 00000001 r2 : 00000071 r1 : 00000002 r0 : 00000000
Flags: Nzcv IRQs off FIQs on Mode SVC_32 Segment user
Control: 4000317F
Table: 23C34000 DAC: 00000015
Process init (pid: 1, stack limit = 0xc02f6250)
Stack: (0xc02f7a34 to 0xc02f8000)

------вырезано----
Code: bad PC value.
<0>Kernel panic - not syncing: Attempted to kill init!
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Jun 14 2007, 17:00
Сообщение #2


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



А к драйверу подхода нет?
В каком режиме работает интерфейс карты, MMC или SPI?
Go to the top of the page
 
+Quote Post
etoja
сообщение Jun 15 2007, 03:12
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 121
Регистрация: 14-01-05
Из: Москва
Пользователь №: 1 952



Карта у него работает в режиме SPI, так как в листинге присутствует строчка:

"MMC: 4 wire bus mode not supported by this driver - using 1 wire"

Проблема может быть в том, что ваша данная карта не может работать на высокой тактовой частоте.
Вам следует купить ММС карточку серии "MMC+" (или MMCplus). Такие карточки могут работать на тактовой частоте до 50МГц.
Рядом с разъёмом карты параллельно питанию карты должны стоять:
- керамический конденсатор 1uF x 6.3v
- электролитический конденсатор 100uF x 6.3v .

Как говорил классик: "Всё у нас получится, Феликс Эдмундович."
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Jun 15 2007, 04:56
Сообщение #4


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Там вообще мало вменяемое что-то написано.
MMC в любом режиме используют два провода для обмена.
Конденсаторами так обвешивать MMC - как мертовому припарки.
У меня от 0.1 uF отлично работает на 25 МГц.
Хороший драйвер поднимает частоту на шине обмена только когда прочитает конфигурацию из MMC и определит, что она на такой частоте карта может работать.
Похоже ситуация обратная, драйвер определил, что может быть высокая частота, попытался ее установить, а сам на такую частоту не был расчитан, например, не предусмотрен запас на удержание CS или не дожидается блока данных и т.д.

Цитата(etoja @ Jun 15 2007, 06:42) *
Карта у него работает в режиме SPI, так как в листинге присутствует строчка:

"MMC: 4 wire bus mode not supported by this driver - using 1 wire"

Проблема может быть в том, что ваша данная карта не может работать на высокой тактовой частоте.
Вам следует купить ММС карточку серии "MMC+" (или MMCplus). Такие карточки могут работать на тактовой частоте до 50МГц.
Рядом с разъёмом карты параллельно питанию карты должны стоять:
- керамический конденсатор 1uF x 6.3v
- электролитический конденсатор 100uF x 6.3v .

Как говорил классик: "Всё у нас получится, Феликс Эдмундович."
Go to the top of the page
 
+Quote Post
Piligrim1158
сообщение Jun 15 2007, 06:01
Сообщение #5


Участник
*

Группа: Новичок
Сообщений: 26
Регистрация: 16-05-07
Пользователь №: 27 755



Цитата(etoja @ Jun 15 2007, 07:12) *
Карта у него работает в режиме SPI, так как в листинге присутствует строчка:

"MMC: 4 wire bus mode not supported by this driver - using 1 wire"

Проблема может быть в том, что ваша данная карта не может работать на высокой тактовой частоте.
Вам следует купить ММС карточку серии "MMC+" (или MMCplus). Такие карточки могут работать на тактовой частоте до 50МГц.
Рядом с разъёмом карты параллельно питанию карты должны стоять:
- керамический конденсатор 1uF x 6.3v
- электролитический конденсатор 100uF x 6.3v .

Как говорил классик: "Всё у нас получится, Феликс Эдмундович."



Использую 2е карты ММС+ обе на 512 Мб одна PQI вторая Transcend. на последней вообще чудеса, размер определяет, а больше ничего. На том и повисаем. Инфа на обеих картах полностью идентична, так, что проблема не в том что на карте. Попробовал всавить первую карту в свою отладочную плату и грузимся с первого раза. Кондеры не помогают. Просто неочень хочется пересобирать линукс из-за карты. Т.к. все разведено по схеме отладочной, но правда добавленно два 485 драйвера, но они недолжны влиять на работу карты.
Подключены она на портыВ 17-21.
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Jun 15 2007, 06:27
Сообщение #6


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



А, что драйвер нельзя подправить без пересборки линукса?
Сколько у вас времени уходит на пересборку?
Если в режиме SPI, то я бы уделил больше внимания фронтам сигнала CS.


Цитата(Piligrim1158 @ Jun 15 2007, 09:31) *
Использую 2е карты ММС+ обе на 512 Мб одна PQI вторая Transcend. на последней вообще чудеса, размер определяет, а больше ничего. На том и повисаем. Инфа на обеих картах полностью идентична, так, что проблема не в том что на карте. Попробовал всавить первую карту в свою отладочную плату и грузимся с первого раза. Кондеры не помогают. Просто неочень хочется пересобирать линукс из-за карты. Т.к. все разведено по схеме отладочной, но правда добавленно два 485 драйвера, но они недолжны влиять на работу карты.
Подключены она на портыВ 17-21.
Go to the top of the page
 
+Quote Post
Piligrim1158
сообщение Jun 15 2007, 07:40
Сообщение #7


Участник
*

Группа: Новичок
Сообщений: 26
Регистрация: 16-05-07
Пользователь №: 27 755



Цитата(AlexandrY @ Jun 15 2007, 10:27) *
А, что драйвер нельзя подправить без пересборки линукса?
Сколько у вас времени уходит на пересборку?
Если в режиме SPI, то я бы уделил больше внимания фронтам сигнала CS.



да скорость и так стоит около 15МГц если верить дровам и осцилу. можно попробовать скинуть до 10. CS фронты нормальные.
Go to the top of the page
 
+Quote Post
dch
сообщение Jun 15 2007, 08:22
Сообщение #8


Профессионал
*****

Группа: Участник
Сообщений: 1 179
Регистрация: 15-09-04
Из: 141070 г. Королев МО, улица Горького 39-121
Пользователь №: 661



Цитата(Piligrim1158 @ Jun 14 2007, 16:49) *
Unhandled fault: page translation fault (0xfffffff9) at 0x000afe0c
pgd = c3c34000
[00000000] *pgd=23c3e031, *pte=00000000, *ppte=00000000
Internal error: Oops: 0 [#1]
Modules linked in:
CPU: 0
PC is at __init_begin+0x3fff8000/0x30
LR is at elv_may_queue+0x2c/0x38
pc : [<00000000>] lr : [<c00e5e68>] Not tainted
sp : c02f7a34 ip : c02f7a24 fp : c02f7a60
r10: 00000000 r9 : c03616e0 r8 : ffffff91
r7 : 00000000 r6 : c3c1fb40 r5 : 00000000 r4 : c3c1fb30
r3 : 00000001 r2 : 00000071 r1 : 00000002 r0 : 00000000
Flags: Nzcv IRQs off FIQs on Mode SVC_32 Segment user
Control: 4000317F
Table: 23C34000 DAC: 00000015
Process init (pid: 1, stack limit = 0xc02f6250)
Stack: (0xc02f7a34 to 0xc02f8000)

------вырезано----
Code: bad PC value.
<0>Kernel panic - not syncing: Attempted to kill init!


Вот этого не должно быть. Вам стек печатают. Обчно бывает когда со SDRAM не порядок.

Я убрал еще вот эту командочку:
Kernel command line: root=/dev/mmcblk0p1 mem=64M

сразу замонтировать FS на MMC пытается, что не есть хорошо в Вашей ситуации. Лучше дождаться когда Linux загрузится и замонтировать MMC в ручную. И c 2.6.19 лудше перейти на 2.6.20 с патчами от maxim - в 19 еще проблеммы были.
Go to the top of the page
 
+Quote Post
Piligrim1158
сообщение Jun 15 2007, 08:42
Сообщение #9


Участник
*

Группа: Новичок
Сообщений: 26
Регистрация: 16-05-07
Пользователь №: 27 755



Цитата(dch @ Jun 15 2007, 12:22) *
Вот этого не должно быть. Вам стек печатают. Обчно бывает когда со SDRAM не порядок.

Я убрал еще вот эту командочку:
Kernel command line: root=/dev/mmcblk0p1 mem=64M

сразу замонтировать FS на MMC пытается, что не есть хорошо в Вашей ситуации. Лучше дождаться когда Linux загрузится и замонтировать MMC в ручную. И c 2.6.19 лудше перейти на 2.6.20 с патчами от maxim - в 19 еще проблеммы были.



а что может быть с памятью? Uboot ночь висел и неподвисал, тесты правда еще не гонял, только скачал их. Да и прошивается флешина нормальна, а она как я понимаю кладет сначало в память, а потом уже в ЕЕПРОМ.
Go to the top of the page
 
+Quote Post
dch
сообщение Jun 16 2007, 10:01
Сообщение #10


Профессионал
*****

Группа: Участник
Сообщений: 1 179
Регистрация: 15-09-04
Из: 141070 г. Королев МО, улица Горького 39-121
Пользователь №: 661



u-boot крутится в вечном цикле который может целиком в стеке лежать - и на нем ничего не скатывается. Насчет прошивается тоже не показатель, даже если образ зипованный - бывает все шьется - а тест памяти не проходит, что приводит к ошибкам типа abort, segmentation fault. У Вас что то вызывает печать стека. По логу он у Вас находит ext2 на MMC. Все проверки начинаются со SDRAM.
Go to the top of the page
 
+Quote Post
Piligrim1158
сообщение Jun 18 2007, 06:16
Сообщение #11


Участник
*

Группа: Новичок
Сообщений: 26
Регистрация: 16-05-07
Пользователь №: 27 755



Цитата(dch @ Jun 16 2007, 14:01) *
u-boot крутится в вечном цикле который может целиком в стеке лежать - и на нем ничего не скатывается. Насчет прошивается тоже не показатель, даже если образ зипованный - бывает все шьется - а тест памяти не проходит, что приводит к ошибкам типа abort, segmentation fault. У Вас что то вызывает печать стека. По логу он у Вас находит ext2 на MMC. Все проверки начинаются со SDRAM.



Понял, спасибо. Будем тестить, скачал мемтест но пока нет ADC попробую сам простенький тест накатать.

Может есть у кого готовый тест? буду очень благодарен)) Мозги стоят 48LC16М16А2
Go to the top of the page
 
+Quote Post
dch
сообщение Jun 18 2007, 13:45
Сообщение #12


Профессионал
*****

Группа: Участник
Сообщений: 1 179
Регистрация: 15-09-04
Из: 141070 г. Королев МО, улица Горького 39-121
Пользователь №: 661



Цитата(Piligrim1158 @ Jun 18 2007, 10:16) *
Может есть у кого готовый тест?

Вот этот хороший - но он из Linux-а идет http://pyropus.ca/software/memtester/, переделанной версии под u-boot у меня нет.

В принципе есть patch для этого теста под ядро Linux-а и приложения uClinux:
http://www.ucrouter.ru/download/memtester-...41215.patch.tgz

но нужно чтобы ядро загрузилось, что может не получиться в Вашем случае.

Сорри в предыдущем посте не правильно написал "u-boot может целиком в стеке лежать" имелось в виду в кэше.
Go to the top of the page
 
+Quote Post
Piligrim1158
сообщение Jun 18 2007, 14:13
Сообщение #13


Участник
*

Группа: Новичок
Сообщений: 26
Регистрация: 16-05-07
Пользователь №: 27 755



Цитата(dch @ Jun 18 2007, 17:45) *
Вот этот хороший - но он из Linux-а идет http://pyropus.ca/software/memtester/, переделанной версии под u-boot у меня нет.

Сорри в предыдущем посте не правильно написал "u-boot может целиком в стеке лежать" имелось в виду в кэше.



ну Линукс иногда стартует нормально, 2-3 раза в день точно. попробую сейчас его поставить и проверить память. спасибо.
Go to the top of the page
 
+Quote Post
Piligrim1158
сообщение Jun 19 2007, 12:05
Сообщение #14


Участник
*

Группа: Новичок
Сообщений: 26
Регистрация: 16-05-07
Пользователь №: 27 755



Едем дальше, если верить MEMTESTу, то грабли в мозгах:

root@(none):/var/memtester-4.0.7# ./memtester 64 2
memtester version 4.0.7 (32-bit)
Copyright © 2006 Charles Cazabon.
Licensed under the GNU General Public License version 2 (only).

pagesize is 4096
pagesizemask is 0xfffff000
want 64MB (67108864 bytes)
got 57MB (60489728 bytes), trying mlock ...<4>memtester invoked oom-killer: gfp_mask=0x200d2, order=0, oomkilladj=0
Mem-info:
DMA per-cpu:
CPU 0: Hot: hi: 18, btch: 3 usd: 2 Cold: hi: 6, btch: 1 usd: 5
Active:14929 inactive:2 dirty:0 writeback:1 unstable:0 free:252 slab:336 mapped:5 pagetables:45
DMA free:1008kB min:1016kB low:1268kB high:1524kB active:59716kB inactive:8kB present:65024kB pages_scanned:108230 all_unreclaimable? yes
lowmem_reserve[]: 0 0
DMA: 0*4kB 0*8kB 1*16kB 1*32kB 1*64kB 1*128kB 1*256kB 1*512kB 0*1024kB 0*2048kB 0*4096kB = 1008kB
Swap cache: add 0, delete 0, find 0/0, race 0+0
Free swap = 0kB
Total swap = 0kB
Free swap: 0kB
16384 pages of RAM
295 free pages
717 reserved pages
336 slab pages
30 pages shared
0 pages swap cached
Out of Memory: Kill process 731 (memtester) score 961 and children.
Out of memory: Killed process 731 (memtester).
Killed

и сл. тест:
root@(none):/var/memtester-4.0.7# ./memtester 16 1
memtester version 4.0.7 (32-bit)
Copyright © 2006 Charles Cazabon.
Licensed under the GNU General Public License version 2 (only).

pagesize is 4096
pagesizemask is 0xfffff000
want 16MB (16777216 bytes)
got 16MB (16777216 bytes), trying mlock ...locked.
Loop 1/1:
Stuck Address : ok
Random Value : ok
Compare XOR : ok
Compare SUB : ok
Compare MUL : ok
Compare DIV : ok
Compare OR : ok
Compare AND : ok
Sequential Increment: ok
Solid Bits : testing 1Illegal instruction


Кто подскажет где копать?
продольные резисторы не стоят , какие ставить и с какой стороны лучше у проца или мозгов?
Go to the top of the page
 
+Quote Post
dch
сообщение Jun 20 2007, 13:47
Сообщение #15


Профессионал
*****

Группа: Участник
Сообщений: 1 179
Регистрация: 15-09-04
Из: 141070 г. Королев МО, улица Горького 39-121
Пользователь №: 661



Либо поменять микросхемы, у меня была ситуация когда были битые чипы Micrel-a либо понизить частоту
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 6th June 2024 - 13:03
Рейтинг@Mail.ru


Страница сгенерированна за 0.01515 секунд с 7
ELECTRONIX ©2004-2016