[08:44:27] <Gordio>  смотрите какая драма: http://www.linux.org.ru/forum/linux-org-ru/10146768
 [09:03:38] <savalik>  ужасы то какие)
 [12:11:03] <beaver_rrr>  resetnow эпичен
 [12:12:18] <stuw>  и не говори )
 [17:16:44] <stuw>  resetnow, как nand продвигается? с tag-данными разобрался?
 [18:03:02] <resetnow>  stuw: написал вчера в вики. Если кратко, то сейчас проблемы следующие:
 [18:03:24] <resetnow>  1) при записи с включенным do_ecc не записываются ecc-байты
 [18:04:29] <resetnow>  2) местами неправильная адресация. Т. е. если принудительно записывать в oob данные, а потом прочитать, то раскладка будет слуедующая: 20 байт данных, потом 4 пропущено и до конца oob данные
 [18:04:54] <resetnow>  а эти 4 байта должны быть вначале, а не с отступом в 20 байт
 [18:05:46] <resetnow>  в TRM нашел раздел + тут драйвер из убута (он тоже со странностями, правда), пока что пытаюсь поправить проблему (1)
 [18:08:11] <resetnow>  ну и ubifs падает, потому что коррекция не выполняется при чтении. А не выполняется она, потому что ecc-байты неправильные.
 [18:08:53] <resetnow>  вообще если получится поправить, надо будет слегка причесать этот драйвер, сейчас он местами немного сумбурный
 [18:11:42] <stuw>  resetnow, по проблеме 2: что за структура пишется? пропуска в 4 байта не должно быть?
 [18:13:51] <stuw>  resetnow, еще ты как-то упоминал, что правил какую-то структуру. По вики пробежался, но не нашел какую. (может пропустил, еще раз перечитаю)
 [18:14:21] <resetnow>  stuw: это было давно и неправильно :)
 [18:14:40] <resetnow>  я пытался oobavail в 64 поправить, а оказалось, что проблема в другом
 [18:14:48] <stuw>  ок ) давай тогда по проблеме 2
 [18:14:51] <resetnow>  https://gitorious.org/ac100/marvin24s-kernel/source/66a8ee5599effdbbb364b38d48c3f6e3b7bf7a68:drivers/mtd/devices/tegra_nand.c#L151
 [18:15:13] <resetnow>  Точнее, чуть выше прокрутить, там описана структура блока oob
 [18:15:33] <resetnow>  * Skipped bytes(4)
 [18:15:45] <resetnow>  Это должно быть вначале, насколько я понимаю.
 [18:16:46] <resetnow>  Это не то чтобы сейчас срочно и актуально, сейчас я попробую еще правленый код по первой проблеме запустить
 [18:16:59] <resetnow>  Как же не хватает какого-то интерактивного отладчика
 [18:17:16] <resetnow>  Наверное, такие вещи через какой-нибудь JTAG отлаживают :)
 [18:17:32] <stuw>  да, я удаленную отладку так и не осилил (правда мне нужно было в самом начале загрузки)
 [18:17:32] <resetnow>  Кстати, как-то можно по USB залить ядро и запустить?
 [18:17:37] <stuw>  почитай про gdb-server
 [18:18:11] <stuw>  можно делать загрузочный образ (как это сделано в sosbootr5)
 [18:18:33] <stuw>  ecc-байты - это которые?
 [18:19:06] <resetnow>  В идеале так: на компьютере запустил скрипт, он перезагрузил тошибу, залил в нее образ ядра (не обязательно в emmc, можно просто запустить) и запустил
 [18:19:17] <resetnow>  * OOB flash layout for Tegra with Reed-Solomon 4 symbol correct ECC:
 [18:19:17] <resetnow>  * Skipped bytes(4)
 [18:19:17] <resetnow>  * Main area Ecc(36)
 [18:19:17] <resetnow>  * Tag data(20)
 [18:19:17] <resetnow>  * Tag data Ecc(4)
 [18:19:25] <stuw>  36 которые?
 [18:19:38] <resetnow>  36 — ecc для содержимого памяти
 [18:19:53] <resetnow>  4 (последнее) — ecc для тег-данных
 [18:21:54] <stuw>  поищи по коду, где используется eccpos. по идее там написано как ты и говоришь - ecc идет с 4 байта
 [18:24:35] <stuw>  1) при записи с включенным do_ecc не записываются ecc-байты <- а разве так не должно быть?
 [18:24:55] <stuw>  или смещения не должны гулять?
 [18:25:31] <stuw>  т.е. ecc не пишется, но oob идет по тем же смещениям, что и с ecc ?
 [18:26:21] <resetnow>  насколько я понял из TRM, ecc должен записисываться в нашем случае. Так как эти ecc-байты рассчитываются аппаратно по той информации, что пишется на страницу при dma-транзакции
 [18:27:29] <resetnow>  про смещения не очень понял. Пока не совсем понятно, какие проблемы со смещениями, но видно, что при прямой записи oob (через nandwrite) пропускаются байты не в начале, а с отступом в 20
 [18:27:46] <resetnow>  пока я с первой попробую разобраться проблемой
 [18:27:52] <stuw>  *упс, я прочитал при записи с ВЫключенным do_ecc
 [18:30:33] <stuw>  да, сполпинка разобраться, что в какой регистр должно идти не получается :)
 [18:30:49] <stuw>  я потопал домой, вечером еще вылезу.
 [18:31:00] <stuw>  думаю нужно пробовать сравнить с драйвером убута
 [18:31:11] <stuw>  в убуте обычно драйвера чуть проще написаны
 [18:31:12] <stuw>  :)
 [18:32:03] <resetnow_1>  Я сравниваю, там местами ощутимые отличия
 [18:32:18] <resetnow_1>  Пока что словил dma timeout на записи
 [18:33:59] <resetnow_1>  К слову, ожидал кернел паник или что-то вроде этого, а нет, в dmesg появляется дамп регистров и информация о драйвере, но система продолжает работать.
 [21:47:40] <resetnow>  хрен его знает, кроме dma timeout ничего полезного не вышло
 [21:49:03] <resetnow>  на всякий случай сдампил регистры прямо перед записью блока — ecc включен, область ecc должна сформироваться автоматически
 [21:49:05] <resetnow>  http://pastebin.com/eFZ7igxb
 [21:51:45] <resetnow>  у меня NAND_DMA_CFG_B пустой, вот это поворот
 [21:51:58] <resetnow>  ладно, с эти завтра