[18:06:17] <stuw> больше влияет то, как сильно флешка насиловалась
[18:06:53] <stuw> * я у своего паяльника жало подточил, в целом паять мелочь можно, но нужен опыт, чтобы таким паяльником фигачить ))
[18:07:03] <resetnow_> там есть какой-то счетчик записи, я только не понял, где он физически находится
[18:07:18] <stuw> это все внутри чипа, на сколько я понял
[18:07:42] <resetnow_> а еще кажется, что я что-то не так настроил и блок с количествоом записей больше 0 считается как bad
[18:09:12] <stuw> а что ты мог неправильно настроить?
[18:09:21] <stuw> тайминги если только
[18:09:23] <stuw> может в них дело
[18:12:59] <stuw> resetnow_, можешь выводы команд куда-нибудь выложить?
[18:13:09] <stuw> интересно поглядеть, что там за информация имеется
[18:17:25] <stuw> resetnow_, кстати, если dd читал блоками не кратными erasesize, то могла быть очень большая просада по скорости
[18:30:28] <resetnow_> stuw: да, это я понял уже. Я вообще никаких параметров не указывал
[18:30:36] <resetnow_> сейчас спрошу на основном канале про это
[18:35:07] <stuw> resetnow_, кстати, у тебя в даташите одно значение 0, а в патче ты поставил 20. Ты с 0 пробовал патч?
[18:37:25] <resetnow_> нет, я посмотрел тайминги для других микросхем и не нашел 0
[18:37:34] <resetnow_> на всякий случай поставил 20
[18:37:51] <resetnow_> просто 0 — очень странное значение для тайминга
[18:37:59] <resetnow_> надо попробовать
[19:24:40] <stuw> resetnow_, echo test | curl -F 'sprunge=<-' http://sprunge.us <- так можно постить в веб данные (чтобы не делать фотки)
[19:24:58] <stuw> это марвин как-то запостил команду
[19:26:51] <resetnow_> stuw: спасибо, а то неудобно dmesg на флешке перекидывать
[19:30:05] <stuw> resetnow_, а почему length=64 ?
[19:30:38] <resetnow_> stuw: потому что до этого пробовал размер страницы, блока, теперь вот размер oob
[19:31:14] <stuw> в dmesg что-то про 64 > 20. Пробовал 20 ?
[19:31:47] <resetnow_> да, это какое-то другое 64, оно всегда 64
[19:33:10] <resetnow_> без опции --oob читает.
[19:35:25] <stuw> я домой потопал, логи потом почитаю )
[19:36:58] <resetnow_> ок)
[21:19:39] <savalik> ну вы прям хардкорно взялись в последние дни я смотрю) респект и уважуха ^_^
[21:39:20] <resetnow_> в общем, эти 20 берутся вот отсюда
[21:39:20] <resetnow_> https://gitorious.org/ac100/marvin24s-kernel/source/66a8ee5599effdbbb364b38d48c3f6e3b7bf7a68:drivers/mtd/devices/tegra_nand.c#L159
[21:39:32] <resetnow_> и я пока слабо представляю, как это разрулить
[21:39:49] <resetnow_> т. е. запись-чтения oob-блока почму-то не выполняется
[21:40:13] <resetnow_> у других платформ вообще как-то по другому все сделано, не находил похожей структуры взаимодействия
[21:42:48] <resetnow_> возможно, нужно что-то менять именно в тегровской реализации, потому что этот код тянется еще с древних ядер
[21:43:50] <resetnow_> хотя на всяких колибри работает же. Наверное. Надо найти плату с тегрой и с nand
[21:43:58] <zombah> что вы такое интересное мутите?
[21:44:45] <resetnow_> zombah: я впаял себе в тошибу еще памяти и пытаюсь с ней работать http://ac100.wikispaces.com/%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0+NAND+%D0%BF%D0%B0%D0%BC%D1%8F%D1%82%D0%B8
[21:45:10] <zombah> лихо
[21:45:18] <resetnow_> ну почти заработало
[21:45:44] <resetnow_> читать уже можно, но mtd и прочие высокоуровневые системы не заводятся
[21:46:59] <zombah> а какого размера этот нанд?
[21:47:31] <resetnow_> какого поставишь, такого и будет, я для теста выдернул из флешки 128 мб
[21:47:58] <zombah> у seaboard нанд смотрю, глянь в его ядро
[21:48:51] <zombah> http://u-boot.10912.n7.nabble.com/PATCH-0-6-tegra-Add-NAND-flash-support-td116413.html
[21:50:00] <zombah> из хромиум ядра, счас найду репо
[21:50:12] <resetnow_> только у них device tree
[21:50:28] <zombah> а у нас?
[21:50:35] <resetnow_> а у нас пока только в ветке 3.1 работает
[21:50:42] <resetnow_> она без dt
[21:51:13] <resetnow_> добавили описание в файл борды (paz00)
[21:51:22] <zombah> seaboard тоже harmony можно туда черепикнуть патчи марвина и вперед
[21:51:40] <resetnow_> хотя стоп, tegra_nand.c общий для всех тегр
[21:52:00] <resetnow_> т. е. надо смотреть, как nand сделан у других платформ, получается
[21:52:27] <zombah> да там в борде только клоки и все
[21:52:42] <zombah> https://codereview.chromium.org/6623073/diff/39001/include/configs/tegra2_seaboard.h
[21:53:35] <resetnow_> https://chromium.googlesource.com/chromiumos/third_party/kernel-next/+/0.11.241.B/drivers/mtd/devices/
[21:53:55] <resetnow_> там тегра вообще одна с нандом
[21:55:40] <resetnow_> хрен его знает, я сегодня уже не осилю что-то менять, буду завтра смотреть.
[21:56:29] <resetnow_> какие-то проблемы с размером out-of-band блока
[21:56:42] <zombah> а какой корпус у нанда этого? soic?
[22:05:37] <zombah> а ну типа соика, прикольно
[22:08:25] <zombah> аа помню видел
[22:08:50] <zombah> а чем разница между нанд и тем что у нас по дефолту
[22:11:20] <zombah> он шустрее?
[22:13:44] <resetnow_> не знаю, если честно. На том, что по дефолту, написано inand. Думаю, технологически то же самое, но в дефолтном чипе есть встроенный контроллер, который следит за бэдблоками и прочим.
[22:17:25] <resetnow_> интересно, а что будет, если вообще отключить CONFIG_MTD_NAND_ECC
[22:17:48] <resetnow_> хотя нет, это из другой области
[22:54:35] <resetnow_> в тегровском драйвере nand местами код работает через магические константы и хардкод
[22:54:39] <resetnow_> writel(0xaa55aa55, RESP_REG);
[22:54:43] <resetnow_> /* ... poison me ... */
[22:54:53] <resetnow_> 480 строка
[22:55:11] <resetnow_> в общем, в планах добавить дебаг в функцию чтения-записи oob
[23:03:02] <stuw_> resetnow_1, nandread с параметром -v (verbose) должен выводить инфу о размере oob (https://gitorious.org/android-enablement/system-core/source/b6b8793b8b6dad500f6884539e47efb4c161576a:toolbox/nandread.c#L130)
[23:03:09] <stuw_> что он у тебя выводит?
[23:06:37] <stuw_> по идее должно читаться столько, сколько ядро вернуло в mtdinfo.oobsize
[23:06:47] <stuw_> может ядро шалит и не то возвращает?
[23:08:54] <resetnow_1> Я выключил компьютер, но ошибка (та, где multi page) как раз из-за того, что oobsize неправильный
[23:09:18] <resetnow_1> Т. е. размер всего блока oob — 64 байта
[23:09:26] <resetnow_1> А в функцию попадает 20
[23:09:45] <resetnow_1> nandread -v попробую сейчас
[23:12:35] <resetnow_1> Так, а ещё у меня нет nandread, только nanddump
[23:16:07] <resetnow_1> В принципе, какая разница. mtdinfo правильно показывает.
[23:18:13] <stuw_> правильно, в смысле 20 ?
[23:18:58] <resetnow_1> Сейчас я открою и посмотрю
[23:29:17] <resetnow_> https://gitorious.org/colibri-t20-embedded-linux-bsp/colibri_t20-linux-kernel/source/7a0dba83ce48f3ff913b136f9d9329600a866ca3:drivers/mtd/devices/tegra_nand.c#L1265
[23:30:41] <resetnow_> oobsz = mtd->oobavail;
[23:31:30] <resetnow_> хотя нет, все правильно, он равен 20
[23:32:51] <stuw_> ладно, затра будем дальше ковырять. сегодня уже мысль не так шустра ))
[23:32:57] <resetnow_> я так понимаю, проверяется, что ooblen не больше, чем место под tagdata
[23:33:07] <resetnow_> да
[23:33:42] <resetnow_> у меня уже смешались все эти oob, mtd и прочие
[23:36:23] <resetnow_> последним моим сегодняшним предположением будет то, что oobavail нужно заменить на 64. Как я понимаю, этот параметр задает общий объем oob-блока, а tagdata заданы следующим параметром — размер и смещение