Ник:
Пароль:

Контакты

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
Поисковых ботовПоисковых ботов:2
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:5
Форум » starterkit.ru » Embedded Linux
Эмуляция master-контроллера spi через gpio в linux
sasamy
Добавлено 03.06.2010 00:05 Редактировалось 03.06.2010 00:06 Сообщение: 11
sasamy
4.70

Пункты: 77156
Регистрация: 14.08.2009
А вот это
Enables support for the W90X900 USB controller

разве не подходит для ваших мнуков ? Я там из важного только поддержку nand не увидел, всякие i2c и spi на мнуках всеравно не имеют канала dma так что особо не интересны. spi вообще несложно поднять - создал очередь, вылавливай из нее собщения и кидай наружу данные :)
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 03.06.2010 00:06 Сообщение: 12
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
наш новоиспеченный контроллер spi готов к работе

вот этот момент мне непонятен. в первом сообщение ты определяешь пины, назначаешь имя
.name = "spi_gpio",
оно "от балды" или где-то определено?
и все.. как система по такому описанию привязывается к конкретному драйверу?!?!

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 03.06.2010 00:10 Редактировалось 03.06.2010 00:13 Сообщение: 13
sasamy
4.70

Пункты: 77156
Регистрация: 14.08.2009
Цитата
.name = "spi_gpio",
оно "от балды" или где-то определено?


Это не от балды и должно называться именно так. Немного про это написано в хидере spi_gpio.h:

include/linux/spi/spi_gpio.h
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 03.06.2010 00:18 Редактировалось 03.06.2010 00:22 Сообщение: 14
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
А вот это
Enables support for the W90X900 USB controller
разве не подходит для ваших мнуков ?

сколько я не крутил, "из коробки" ЮСБ-шина не запускалась
как я понял, не хватает поддержки OHCI части
мы в соседнем треде пробуем исправить/дописать/переписать, результаты есть, но все очень не быстро :)
на всякий случай ссылка на тред

Цитата
Это не от балды и должно называться именно так. Немного про это написано в хидере spi_gpio.h:

опа! а я как-то умудрился пропустить этот момент, сейчас попробую по-быстренькому переписать..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 03.06.2010 00:21 Сообщение: 15
sasamy
4.70

Пункты: 77156
Регистрация: 14.08.2009
Может в первом сообщении не совсем точно указано что нужно включить, на всякий случай должно быть так:
-*- Utilities for Bitbanging SPI masters
<*> GPIO-based bitbanging SPI Master
Спуститься к концу Подняться к началу
Персональная информация
Artemius
Добавлено 03.06.2010 00:21 Редактировалось 03.06.2010 00:22 Сообщение: 16
Artemius
0

Пункты: 3655
Регистрация: 02.12.2009
Извиняюсь что не по теме, но раз речь зашла о поддержке nuc950 в ядре
Цитата
Enables support for the W90X900 USB controller
разве не подходит для ваших мнуков ?

Там нечто очень похожее на драйвер EHCI, но неработоспособное, а OHCI вообще нет.

Цитата
Я там из важного только поддержку nand не увидел

Драйвер nand там есть, но я его не проверял, Юрий вроде тоже. Из важного там SD/MMC нет.

Цитата
всякие i2c и spi на мнуках всеравно не имеют канала dma так что особо не интересны

Большинство процессоров не имеет DMA на i2c, что не мешает им пользоваться и иметь драйвера :-).

А подробно про злоключения с nuc'ом на новом ядре можно почитать в соответствующей ветке.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 03.06.2010 00:29 Редактировалось 03.06.2010 00:34 Сообщение: 17
sasamy
4.70

Пункты: 77156
Регистрация: 14.08.2009
Цитата
Большинство процессоров не имеет DMA на i2c, что не мешает им пользоваться и иметь драйвера :-).


На всякий случай, тема смежная - с i2c можно поступить точно так же как с spi - в ядре есть поддержка эмуляции через gpio, один фик толку от таких контроллеров без дма мало, но для медленных устройств вполне нормально работает.

PS атмеловцы вообще даже сами рекомендуют использовать битбанг на gpio для i2c потому что ихний twi глючный и тоже неимеет канала pdc.
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 03.06.2010 00:45 Сообщение: 18
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
вах, Саша, ты шаман! :)
взял для пробы ядро 2.6.34 (с патчем от Artemius)
взвел SPI, SPI_BITBANG
просто прописал самые начальные определения с фейком вместо определения пинов, гружу

Код
spi_gpio: probe of spi_gpio.3 failed with error -22


т.е. все пошло, как ты и описывал

все, я выпадаю спать - в СПб 1 ночи :)

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

Пункты: 3383
Регистрация: 02.04.2010
ждем более развернутого поста про телодвежения с новым ядром
где качали патч?
буду тоже пробовать :-)
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 03.06.2010 09:58 Редактировалось 03.06.2010 09:59 Сообщение: 20
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
с утреца на свежую голову стал внимательно разглядывать что к чему..
1. в состав 2.6.17.14 входит драйвер SPI и SPI_BITBANG..
2. в состав 2.6.34 добавлен.. SPI_GPIO, в хидере которого прописан spi_gpio (его то я и не разглядел вчера)
все становится ясно..
наглая попытка перетащить SPI_GPIO в старое ядро с ходу не удалась, да и интерес не сильно большой - овчинка выделки не стоит..
собственно, это еще один аргумент о необходимости перехода на более свежее ядро.

2Hermes патч был выложен в этой теме
чем больше народу подключится к миграции на новое ядро - тем быстрее будет переход :)
если что - в резерве ~2 млрд китайцев :)))

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux