С загрузчиком u-boot-2014.01-sk
Возможно, если да, то как?
То, что версия ядра 3 личше - я в курсе.
Только не дозрел я до неё сознанием.
Не смог не то, что SPI user mode сделать, но даже поменять
.bus num; .chip_select в spi0.0 b spi3.0.
Файл board-mx6q_sabrelite.c - хоть заредактируйся...
Да вроде внятно написал...
Хотим поставить linux-2.6.35 на SK-iMX6S-OEM
С UBIFS без компрессии + старт с u-boot-2014.01-sk.
Пока ничего не сделал. Пробовал "чинить" файл board-mx6q_sabrelite.c по образу и подобию v2.6. Не прокатило.
Пробовал менять bus_num ( допустим с 0 на 1 и с 3 на 2 ), на целевой системе, как были spi0.0 и spi3.0, так и остались.
/sys/bus/spi/devices/
lrwxrwxrwx 1 root root 0 Jan 1 04:29 spi0.0
lrwxrwxrwx 1 root root 0 Jan 1 04:29 spi3.0
Сделать SPI user mode ( /dev/spix.x ) как в v 2.6 - та же песня.
В версии 2.6 таких проблем не было.
Да и тормоза из-за компресии файловой системы - еще те.
Пока приложение/файл не кэшируется, то старт 2-4 секунды обеспечен.
Какие буквари курить?
Да и про саму плату: watchdog как независимый таймер в принципе не работает. У платы есть слабое место: высокая чувствительность к внешним электромангитным полям. Попробуйте стартануть watchdog и потом проведите пальцем руки ( имитация помех, вторую руку держим на корпусе ) между процессором и NAND по емкостям. Останов системы обеспечен, и ждать срабатывания аппаратного watchdog-а можно вечно.
Вы так изъясняетесь, что читающий получает вывих мозга ...
Извините, но это какой то словесный бред.
Watchdog на imx6 работает нормально, так же загадка заявления, какое он имеет отношение к аппаратной части модуля ...
Нет слов.
Вы понимаете разницу масштабов взаимодействия между электромагнитным полем (наводки от других цепей) и гальванической связью (замыкание чего то пальцами, эквивалент сопротивления в десятки-сотни килоом + паразитная емкость) ...
Тыкаясь пальцами по емкосям (которые номиналом 20пФ) между процессором и NAND, Вы сбиваете осцилляцию тактового генератора, никакого отношения к слабой ЭМИ защищенности устройства сей факт не имеет.
Неумение выслушать, вникнуть в суть, это норма?
Я в чем то нахамил?
Повторю вопрос в ТРЕТИЙ раз:
Как установить linux v2.6 на SK-iMX6S-OEM ( методика, где можно почитать? )
Разницу масштабов взаимодействия между электромагнитным полем (наводки от других цепей) и гальванической связью (замыкание чего то пальцами, эквивалент сопротивления в десятки-сотни килоом + паразитная емкость) прекрасно понимаю. Попробуйте рядом с модулем бросить пару проводов и скомутируйте через реле ампер 10 - 220V, то получите эффект похлеще пальца. Пальцем я уже искал, на что наводится. А дребезг контактов реле это нечто...
Ну и все таки запустите собаку и ткните пальцем в емкости. Неужто пройдет Reset? У меня на этой плате ни разу не вышло...
Собака - независимый блок процессра и должен жить пока есть питание.
Про версию Linux 3... Как сделать user mode SPI? ( у кого получилось? )
Тормоза ( жуткие ) при работе с компресованной ФС это норма?
Эти платы взял на пробу, для оценки. Пока юзаю imx53. В 53-х каких либо неудобств не отметил. Ну разве внешний таймер. Да и это можно скорее отнести к плюсам, ибо внутренний хорошо батарейку кушает, да и при смене модуля время внешнего не теряется.
Ну и еще, про сравнение модулей SK-iMX53-OEM и SK-iMX6S-OEM...
Была проведена проверка работоспособности обеих вблизи МГД-индуктора, расстояние один метр. Индуктор - жуткая штука. Если есть мелочь в кармане ( а рубли нонче железные ), то она начинает жутко вибрировать. Герконы на расстоянии до 6 м пребывают в фиксированном положении. Интерфессы типа Ethernet, RS-485, RS-232, ... запирает напрочь. Но модуль SK-iMX53-OEM - продолжает устойчиво работать. Так сказать плюс в карму:) SK-iMX6S-OEM встает колом. И из интерейсов продолжает работать только CAN, на скорости до 250000 кбит.
3.0 от 2.6 отличается только сменой нумерации - это одна и та же ветка, не было никаких глобальных перемен как в случае 2.4 -> 2.6
включить поддержку в конфиге
Device Drivers --->
[*] SPI support --->
<*> User mode SPI device driver support
прописать в списке устройств SPI spidev на нужном чипселекте и шине - это зависит куда вы хотите выставить интерфейс из юзерспейс, в общем случае примерно так
и дописать GPIO который в качестве чипселекта используется
static int mx6q_sabrelite_spi1_cs[] = {
MX6Q_SK_ECSPI1_CS0, MX6Q_SK_ECSPI1_CS1,
};
компрессия тут при чем ? вы сравниваете похоже с i.mx53-oem - там на плате у nand в 10 раз меньше емкость, сделайте раздел с корневой фс такого же размера как на im53 и будет примерно так же работать (я так понял про тормоза при монтировании КФС при старте речь ?), компрессия наоборот ускоряет работу на относительно медленных носителеях - нужно меньше читать/писать.
Попутал, думал на imx6s штатное ядро 2.6.35, поэтому сама постановка вопроса уже вводила в ступор.
Не знаю, если правильно помню, FS сразу начал с 3.0.35 для imx6.
Логичнее было тогда с описания этого эксперимента начать, а не связывать "обвинения" чувствительности к ЭМИ с тыкания пальцами.
Охотно верю, но Вы вдумайтесь, у Вас рядом с процессором идут провода с током в десяток ампер - страшное дело, не важно что imx53 каким-то чудом живет при этом. Модуль надо экранировать и тщательно продумывать земли, чтобы возвратные токи силовой части по земле сюрпризов не наложили.
Могу боардфайл от Vybrid модуля выложить, на нем SPI DEV штатно включен.
Да, watchdog это отдельный модуль тактирующийся от собственного RC генератора, но очевидно при аварийной остановке основного генератора, сброс от собаки ему не помогает. Тут нужно думать в первую очередь, как этого не допускать, а потом уже размышлять, как его перезапускать.
Думаете, есть такой же модуль но на котором быстрее работать будет ...
1) если так чувствительно, озадачтесь отключением компрессии, скажу откровенно, у меня с наскоку это не получилось, т.к. ключей отключающих компрессию при форматировании раздела я не нашел, пришел тогда к выводу, что без компрессии можно сделать только если образ UBI готовить на хосте готовить и потом записывать
2) тормоза скорее обусловлены не только самой компрессией, сколько размером блока на MLC флешках который составляет 1М (у SLC они по 256К), кстати, на SK-iMX6S-OEM-Ind ставятся SLC флешки ...
Кошмар, а потом начнете мне модули вышедшие из строя присылать ...
Я бы на его месте тоже :)
CAN сам по себе не может продолжать работать, значит и модуль продолжает работать, кроме остальных интерфейсов.
с добавлением строки
platform_device_register(&lvdsX_spi_gpio_device); // X - номер шины
В функцию: spi device_init
Не помогло:(
Глубже по коду пока не залезал...
Пытался менять номера bus. ( короче шаманством занялся, только бубна не хватало )
И что интересно, несмотря на то, что номер bus менял, в целевой системе они упорно не меняются. Таких фокусов в v2.6 не
было. Об этом написал выше.
Боюсь представить, какой секс будет, если я попытаюсь прицепить 1-wire ( а он нужен... )
полагаю что нигде, в лучшем случае найдете в архивах фрискейла BSP+pdf с описанием под ихние борды..
и мне не очень понятна идея цепляться за старые ядра при наличии готовых новых.. кроме случая драйверов под старое ядро и невозможности переписать под новое..
ну допустим у меня, например для imx6q:
на spidev0.0 подцеплена Альтера для загрузки в PS..
далее, на imx6s прикручен флеш на SPI:
легко перекручивается на spidev..
право, слегка надоедает в 51 раз выяснять имя и ревизию платы, что сделано в исходниках, выхлоп лога, симптоматику неисправности.. имхо, не вы первый и вероятно не вы последний..
Саша выше вам все расписал и разжевал, удивлюсь если не заработает.. да, и не забудьте проверить/поправить функцию инита SPI канала с нужными параметрами..