User Info
Добро пожаловать, Guest Пользователей: 4 Поисковых ботов: 3 Гостей: 1
imx233 и NAND 32Mb помогите подружить
ADA007
Пункты: 3113
Регистрация: 01.08.2011
Пол: Мужчина
Здрям...Так получилось, что имеется такая связка imx233 и K9F5608U0D (32 Mb NAND). Покурив немного datasheet в nand_device_info.c дописал конфигурацию этого NAND-a
Код
{
.end_of_table = false,
.manufacturer_code = 0xec,
.device_code = 0x75,
.cell_technology = NAND_DEVICE_CELL_TECH_SLC,
.chip_size_in_bytes = 32LL*SZ_1M,
.block_size_in_pages = 16,
.page_total_size_in_bytes = 1*SZ_512 + 16,
.ecc_strength_in_bits = 4,
.ecc_size_in_bytes = 512,
.data_setup_in_ns = 20,
.data_hold_in_ns = 10,
.address_setup_in_ns = 0,
.gpmi_sample_delay_in_ns = 6,
.tREA_in_ns = -1,
.tRLOH_in_ns = -1,
.tRHOH_in_ns = -1,
"K9F5608U0D",
},
Далее получил ошибку от gpmi
Unsupported page data size 512
page_data_siza_in_bytes ему не понравилась.
.. а в gpmi-base.c написан case в котором только 2048 или 4096 эта переменная может равняться для успешного прохождения условия.
Ну далее методом тыка попробовал вставить туда case 512 с такими же параметрами, что и у 2048. На что получил такое
Код
bch_setup: cannot tune BCH for page size 512
Scanning for NCB...
GPMI: Checking page 0x00000000
Checking BB on common-formatted flash
Scanning device for bad blocks
gpmi_dma_exchange: error -110, CS = 0, channel 4
Ну в общем фигня получилась....
Помогите, кто чем может
sasamy
Пункты: 83542
Регистрация: 14.08.2009
Цитата
Unsupported page data size 512
Помогите, кто чем может
Боюсь тут уже не помочь ничем.
Jury093
Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата Далее получил ошибку от gpmi
Unsupported page data size 512
page_data_siza_in_bytes ему не понравилась.
.. а в gpmi-base.c написан case в котором только 2048 или 4096
значит прописали конфигурацию неправильно, ибо в DS сказано:
Код Automatic Program and Erase
- Page Program : (2K + 64)Byte
- Block Erase : (128K + 4K)Byte
• Page Read Operation
- Page Size : (2K + 64)Byte
т.е. размер страницы флеша 2048 и ваш gpmi справедливо ругается..
На любой вопрос есть любой ответ.
ADA007
Пункты: 3113
Регистрация: 01.08.2011
Пол: Мужчина
Цитата
значит прописали конфигурацию неправильно, ибо в DS сказано:
Странно...я в ДШ вычитал такое...
Page Program
-(512 + 16)Byte
Block Erase :
- (16K + 512)Byte
Page Read Operation
Page Size
- (512 + 16)Byte
Брал тут
(ссылка)
Чисто теоретически, я считаю, разобравшись в gpmi и прочем добавить поддержку 32 Мб можно....но стоит ли игра свеч? насколько сложно это сделать?
Jury093
Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата Странно...я в ДШ вычитал такое...
угу, похоже я не тот DS посмотрел, действительно 512 байт..
Цитата Чисто теоретически, я считаю, разобравшись в gpmi и прочем добавить поддержку 32 Мб можно....но стоит ли игра свеч? насколько сложно это сделать?
на сайте самсунга этот чип в статусе
EOL , имеет смысл прикручивать если нет под рукой другого. ибо, допустим, прикрутите, а он возьми и сдохни - нафига рисковать..
сложность процесса внедрения оценить не могу - не касался iMX. но если Саша сказал "в морг" - значит в морг..
На любой вопрос есть любой ответ.
ADA007
Пункты: 3113
Регистрация: 01.08.2011
Пол: Мужчина
Может немного не в тему....
Перепаял NAND на K9HCG08U1M (4Gb) .... то что было под рукой....
2.6.31. из ltib выдает такое
Код
Scanning for NAND Flash chips...
NAND device: Manufacturer ID: 0xec, Chip ID: 0xd7 (Samsung NAND 4GiB 3,3V 8-bit)
Manufacturer : Samsung (0xec)
Device Code : 0xd7
Cell Technology : MLC
Chip Size : 4 GiB
Pages per Block : 128
Page Geometry : 4096+128
ECC Strength : 4 bits
ECC Size : 512 B
Data Setup Time : 15 ns
Data Hold Time : 15 ns
Address Setup Time: 25 ns
GPMI Sample Delay : 6 ns
tREA : Unknown
tRLOH : Unknown
tRHOH : Unknown
Description : K9LBG08U0M (32Gb), K9HCG08U1M (64Gb), K9MDG08U5M (128Gb)
Scanning for NCB...
GPMI: Checking page 0x00000000
Checking BB on common-formatted flash
И застряет на этом сообщении....
А ядро из mfg выдает такое
Код
Scanning for NAND Flash chips...
NAND device: Manufacturer ID: 0xec, Chip ID: 0xd7 (Samsung NAND 4GiB 3,3V 8-bit)
Manufacturer : Samsung (0xec)
Device Code : 0xd7
Cell Technology : MLC
Chip Size : 4 GiB
Pages per Block : 128
Page Geometry : 4096+128
ECC Strength : 4 bits
ECC Size : 512 B
Data Setup Time : 15 ns
Data Hold Time : 15 ns
Address Setup Time: 25 ns
GPMI Sample Delay : 6 ns
tREA : Unknown
tRLOH : Unknown
tRHOH : Unknown
Description : K9LBG08U0M (32Gb), K9HCG08U1M (64Gb), K9MDG08U5M (128Gb)
Scanning for NCB...
GPMI: Checking page 0x00000000
Checking BB on common-formatted flash
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = c0004000
[00000000] *pgd=00000000
Internal error: Oops: 17 [#1] PREEMPT
Modules linked in:
CPU: 0 Not tainted (2.6.31-updater-00212-g1a80619-dirty #15)
PC is at rb_erase+0x310/0x354
LR is at __remove_hrtimer+0x64/0x74
pc : [<c012f5e4>] lr : [<c004b7bc>] psr: 80000093
sp : c0243ee0 ip : 00000000 fp : 00000000
r10: c024b150 r9 : 60000093 r8 : c024b670
r7 : 00000000 r6 : c024b158 r5 : 00000001 r4 : 00000000
r3 : 00000001 r2 : 00000000 r1 : c024b158 r0 : c024b670
Flags: Nzcv IRQs off FIQs on Mode SVC_32 ISA ARM Segment kernel
Control: 0005317f Table: 4183c000 DAC: 00000017
Process swapper (pid: 0, stack limit = 0xc0242270)
Stack: (0xc0243ee0 to 0xc0244000)
3ee0: c024b150 c024b670 00000001 c004b7bc c024b120 c024b670 00000000 202fbf00
3f00: 00000004 c004bcc4 00000000 1dcd6500 00000000 c0243f20 c004be90 ffff8c92
3f20: ffff8c91 ffff8c96 00000004 40019e58 ffff8c91 c024b670 00000000 202fbf00
3f40: 00000004 00000005 ffff8c91 c024b670 00000000 c004bed8 00000000 00000002
3f60: 00000001 c024b670 02faf080 c0054b54 00000002 00000000 1d4c56fd 00000004
3f80: 00000000 ffff8c96 60000013 c0247170 00000000 c11b9c60 202fbf00 00000004
3fa0: 1d4c56fd 00000004 c0242000 c0242000 c0259b40 c001be08 c0245a58 40019e58
3fc0: 41069265 40019e24 00000000 c001fcac c027d6a8 c00089ec c0008354 00000000
3fe0: 00000000 c001be08 00053175 c0259b98 c001c20c 40008034 00000000 00000000
[<c012f5e4>] (rb_erase+0x310/0x354) from [<c004b7bc>] (__remove_hrtimer+0x64/0x74)
[<c004b7bc>] (__remove_hrtimer+0x64/0x74) from [<c004bcc4>] (__hrtimer_start_range_ns+0x68/0x258)
[<c004bcc4>] (__hrtimer_start_range_ns+0x68/0x258) from [<c004bed8>] (hrtimer_start+0x24/0x2c)
[<c004bed8>] (hrtimer_start+0x24/0x2c) from [<c0054b54>] (tick_nohz_stop_sched_tick+0x2a8/0x384)
[<c0054b54>] (tick_nohz_stop_sched_tick+0x2a8/0x384) from [<c001fcac>] (cpu_idle+0x20/0xbc)
[<c001fcac>] (cpu_idle+0x20/0xbc) from [<c00089ec>] (start_kernel+0x284/0x2f0)
[<c00089ec>] (start_kernel+0x284/0x2f0) from [<40008034>] (0x40008034)
Code: e3c33003 e1a04003 e35c0000 0a000002 (e59c3000)
---[ end trace a56c0542d856c29c ]---
Kernel panic - not syncing: Attempted to kill the idle task!
Это ему NAND снова не нравится? Куда копать?
sasamy
Пункты: 83542
Регистрация: 14.08.2009
ADA007
Пункты: 3113
Регистрация: 01.08.2011
Пол: Мужчина
Попробывал Ваше ядро....по видимаму вы собрали 2.6.35 ...
Но почему-то у меня оно не запустилось
Гоняет по кругу это
Код
PowerPrep start initialize power...
Battery Voltage = 0.82V
No battery or bad batterydetected!!!.Disabling batteryvoltage measurements./r/nJul 12 201120:53:30
EMI_CTRL 0x1C084040
FRAC 0x92926152
init_ddr_mt46v32m16_133Mhz
power 0x00820710
Frac 0x92926152
start change cpu freq
hbus 0x00000003
cpu 0x00010002
0x80508002
PowerPrep start initialize power...
Battery Voltage = 0.82V
No battery or bad batterydetected!!!.Disabling batteryvoltage measurements./r/nJul 12 201120:53:30
EMI_CTRL 0x1C084040
FRAC 0x92926152
init_ddr_mt46v32m16_133Mhz
power 0x00820710
Frac 0x92926152
start change cpu freq
hbus 0x00000003
cpu 0x00010002
0x80508002
.... и т.д.
У меня такое было, когда я пробовал залить в плату 35-е ядро с ftp местного. Однако 2.6.31 стартует нормально....
Уже давно столкнулся с этим и не могу понять в чем причина, может Вы подскажете?
sasamy
Пункты: 83542
Регистрация: 14.08.2009
Так тут до ядра и не доходит дело - только загрузчик. Мне кажется у них там некорректно питание запускается, когда-то давно находил ошибку, видимо там немало еще :) но плате стартеркита впрочем они не мешают стартовать...
upd вы случайно не забыли дроссель запаять (L1 по схеме стартеркита 99, 97 контакты) ?
ADA007
Пункты: 3113
Регистрация: 01.08.2011
Пол: Мужчина
Ну дк 2.6.31 ж стартует .... может как-то настройки из него какие-то перенести нужно...
P.S. дроссель есть на 97 и 99 ногах 15uH