Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:2
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:6
Форум » starterkit.ru » Embedded Linux
Адаптация linux 3.6 на iMX233
ADA007
Добавлено 19.10.2012 22:07 Редактировалось 19.10.2012 22:09
0
Сообщение: 1
ADA007
0

Пункты: 3113
Регистрация: 01.08.2011
Пол: Мужчина
Доброго времени суток!
Пытаюсь адаптировать linux 3.6 под выпускаемый starterkit-ом dev board.
Ядро беру от суда - https://github.com/Freescale/linux-mainline
Там вроде есть адаптация под mxs ms-23 это dev board типа olinuxino или что-то вроде.
Задача заключается в том, чтобы переключить ssp1 на ssp2.
При компиляции нативного исходника после загрузки ядра на pin 90 define MX23_PAD_SSP1_SCK__SSP1_SCK выдается частота 400KHz .... Я попытался подправить исходник match-mx23.c так, чтобы ssp1 переключился на ssp2. Однако после всех моих попыток частота с pin 33 define MX23_PAD_GPMI_WRN__SSP2_SCK так и не пошла...

Прилагаю к теме мой исправленный архив с файлами match-mx23.c, config, а так же log загрузки ядра. http://zalil.ru/33871168

Помогите дельным советом, куда копать? Что нужно в ядре править еще, чтоб mmc начала работать через ssp2?
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 19.10.2012 22:28 Сообщение: 2
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
если в системе могут быть несколько интерфейсов, то обычно пины к ним, инициализация и блоки регистров прописывает в однотипных структурах..
посмотрите в соседних файлах с бордами, может где есть готовый пример - копипастите оттуда нужные блоки, проверяете пины и пробуете вызовы.. что-то типа
register_platform_device(&указатель на структуру)..
или
register_platform_device_ssp(&указатель на структуру)..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
ADA007
Добавлено 21.10.2012 12:51 Сообщение: 3
ADA007
0

Пункты: 3113
Регистрация: 01.08.2011
Пол: Мужчина
Цитата
копипастите оттуда нужные блоки...

Почему-то не смог найти нужные примеры для копипаста. Пытаюсь разобраться сам, почему же не генерится CLK на выход. По ДШ клок на ssp1 и ssp2 поступает один и тот же, а далее уже все зависит от настройки регистров самого ssp.
Инициализация интерфейса происходит в файле mxs-mmc.c. Так вот, в связи с этим вопрос = Как можно посмотреть содержимое регистров настройки ssp2 после инициализации (загрузки драйвера в ядре)?
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 21.10.2012 16:20 Сообщение: 4
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
не смотрел как организована раздатка тактовой в Imx233, но предполагаю типовую..
внутренний клок подается на узел sspX через бит разрешения в регистре блока синхронизации, далее интятся пины и разрешается работа узла ssp через бит в регистре соответствующего ssp..

если из ядра смотреть, то проще всего в файле борды и теле функции xx_probe драйвера ssp*.c выводить дамп регистров в консоль. потом смотреть в мануале на АРМ - все ли правильно..

если из юзерспейса, то пишете прожку на 10 строк в Си - mmap нужный блок регистров и вывод на консоль - в качестве образца можно взять сорц из темы о ногодрыгание АРМов и поправить адреса блоков регистров и доступ под свой АРМ..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
ADA007
Добавлено 23.10.2012 09:22 Сообщение: 5
ADA007
0

Пункты: 3113
Регистрация: 01.08.2011
Пол: Мужчина
Цитата
проще всего выводить дамп регистров в консоль..

Так и поступил...оказалось - это хардверная проблема была...определил по состоянию статусрегистров. Спасибо, все заработало.
Спуститься к концу Подняться к началу
Персональная информация
ADA007
Добавлено 26.10.2012 19:00 Сообщение: 6
ADA007
0

Пункты: 3113
Регистрация: 01.08.2011
Пол: Мужчина
Кто-нибудь пробовал запустить USB на imx233 для ядра 3.6?
Там есть драйвер mxs-phy.c...в папке /drivers/usb/otg/ ... пытаюсь его вкомпилить в ядро, но при загрузке среди сообщений от usbcore нет сообщения о том, что он подгрузил "mxs_phy".
И вообще в ядре как-то не видно, чтобы использовались функции этого драйвера, а ведь там как раз конфигурация физики usb происходит...как-то странно все это.
Может кто-нибудь мне объяснит, как такое может быть? может я чего-то не понимаю?
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 26.10.2012 23:03 Сообщение: 7
sasamy
4.70

Пункты: 76984
Регистрация: 14.08.2009
Цитата

Кто-нибудь пробовал запустить USB на imx233 для ядра 3.6?


по-моему поддержка USB появилась в ванильном ядре только в ветке 3.7
Спуститься к концу Подняться к началу
Персональная информация
ADA007
Добавлено 27.10.2012 12:55 Сообщение: 8
ADA007
0

Пункты: 3113
Регистрация: 01.08.2011
Пол: Мужчина
Хм...я вообще-то брал 3.6 от Freescale...конечно оно может отличаться от ванильного...но суть не в этом.
С kernel.org взял ванильное ядро 3.7-rc2 ... после сборки в консоль вываливает такое
Код

Uncompressing Linux... done, booting the kernel.

Error: unrecognized/unsupported machine ID (r1 = 0x00000a45).

Available machine support:

ID (hex) NAME
ffffffff Freescale i.MX28 (Device Tree)
ffffffff Freescale i.MX23 (Device Tree)

Please check your kernel config and/or bootloader.


Т.е. в регистре записана правильная информация про ID платы...и она соответствует #define MACH_TYPE_MX23EVK 2629 в файле /include/generated/mach-types.h

Что это? Глюк ванильного ядра?
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 28.10.2012 08:15 Сообщение: 9
sasamy
4.70

Пункты: 76984
Регистрация: 14.08.2009
Цитата

Что это? Глюк ванильного ядра?


для ядра 3.7 требуется загрузчик с поддержкой device tree - например u-boot последних релизов.
Спуститься к концу Подняться к началу
Персональная информация
ADA007
Добавлено 28.10.2012 21:02 Сообщение: 10
ADA007
0

Пункты: 3113
Регистрация: 01.08.2011
Пол: Мужчина
Цитата
например u-boot последних релизов.

А bootlets-ы с поддержкой device-tree уже есть? где их взять, если есть?
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux