Ник:
Пароль:

Контакты

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

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

Ник:
Пароль:

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

ОбновитьПодробнееВсегоВсего:4
Форум » starterkit.ru » Отладочные платы » SK-AT91SAM9XE512-SIMXXX
u-boot 2011.12 and SD CARD
vibic
Добавлено 23.01.2012 19:12 Редактировалось 30.01.2012 21:49
0
Сообщение: 1
vibic
5

Пункты: 940
Регистрация: 23.01.2012
Пол: Мужчина
Доброе время суток всем!
Пишу за помощью к знатокам!
Хочу с сд карты грузить ядро linux, сейчас at91bootstrap грузит u-boot, а дальше затык, потому что не могу ничего вычитать с sd карты. Если кто сталкивался, помогите пожайлуста, хотелось бы на новом u-boot потому что уже прекрутил все, что только можно из неообходимого, кроме sd карты.

Пытаюсь заставить работать mmc/sd карту в u-boot, чего добился -
U-Boot> mmc part
mci: setting clock 195312 Hz, block size 512
mci: setting clock 195312 Hz, block size 512
mci: setting clock 195312 Hz, block size 512
mci: setting clock 195312 Hz, block size 512
mci: setting clock 12500000 Hz, block size 512

Partition Map for MMC device 0 -- Partition Type: DOS

Partition Start Sector Num Sectors Type
1 62 389484 c
U-Boot> fatls mmc 0:1
8868 boot.bin
247112 u-boot.bin

2 file(s), 0 dir(s)

U-Boot> fatload mmc 0:1 0x20400000 u-boot.bin 247112
reading u-boot.bin
gen_atmel_mci: CMDR 000d1052 (18) ARGR 0000ec00 (SR: 0000c0d7) XFER DTIP never unset, ignoring
u-boot для примера хватаю, понятно что ядро грузить буду, просто уже переделывал флешку много раз, ошибка одна и таже.

Плата почти аналогичная starterkit 9260, но с некоторыми отличиями, например камень 9g20 стоит и некоторые ноги чуток по другому используются, но сути дела не меняет.

Сам u-boot сейчас у меня работает с led одной штукой, увы второй напрямую на питание повешан, watchdog, hush shell, автодобивание по tab? вообщем все плюшки которые мне нужны.

Файлы вот так сконфигурированы:

/* SD/MMC card */
#define CONFIG_MMC 1
#define CONFIG_GENERIC_MMC 1
#define CONFIG_GENERIC_ATMEL_MCI 1
//#define CONFIG_ATMEL_MCI 1
//#define AT91_PMC_PCER (AT91_PMC + 0x10)
//#define AT91SAM9260_ID_MCI 9
//#define ATMEL_BASE_MCI 0xFFFA8000
//#define ATMEL_BASE_MMCI 0xFFF02400
#define CONFIG_SYS_MMC_CD_PIN AT91_PIN_PA4
//#define CONFIG_SYS_MMC_CLK_OD 1000000

#define CONFIG_CMD_USB 1
#define CONFIG_CMD_MMC 1
#define CONFIG_CMD_EXT2 1
#define CONFIG_CMD_FAT 1

Заремино конфиг для старого драйвера mci




Люди!!!
Если кто решит проблему u-boot 2011.12 (ну или очень близко к это версии, выше пока нету) + mmc/cd карточка, чтение файлов с fat/ext для arm atmel 9260 или 9g20, плиз поделитесь силой мысли!
indy.orca2012@gmail.com
На данный момент старый mci драйвер не работает вообще, у меня по крайней мере, хотя u-boot собираеться, новый работает только на чтение файловой таблицы c обоих fat/ext2, а при чтении файла падает!!!
Буду очень признателен, я еще пока не сишник, могу поправить если только вижу в явном виде ошибку. А там сложно.
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 23.01.2012 22:01 Сообщение: 2
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
попробуйте раскомментировать что-нить в этих строчках:
Код
//#define CONFIG_ATMEL_MCI 1
//#define AT91_PMC_PCER (AT91_PMC + 0x10)
//#define AT91SAM9260_ID_MCI 9
//#define ATMEL_BASE_MCI 0xFFFA8000
//#define ATMEL_BASE_MMCI 0xFFF02400


поищите в исходниках место, где вылетает эта строка:
Код
gen_atmel_mci: CMDR 000d1052 (18) ARGR 0000ec00 (SR: 0000c0d7) XFER DTIP never unset, ignoring

и разберитесь - чего не хватает. иногда достаточно вывести отладочный дамп переменных и поправив, пнуть юбут в нужном направление..

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

Пункты: 940
Регистрация: 23.01.2012
Пол: Мужчина
[quote]попробуйте раскомментировать что-нить в этих строчках:
Код
//#define CONFIG_ATMEL_MCI 1
//#define AT91_PMC_PCER (AT91_PMC + 0x10)
//#define AT91SAM9260_ID_MCI 9
//#define ATMEL_BASE_MCI 0xFFFA8000
//#define ATMEL_BASE_MMCI 0xFFF02400


поищите в исходниках место, где вылетает эта строка:
Код
gen_atmel_mci: CMDR 000d1052 (18) ARGR 0000ec00 (SR: 0000c0d7) XFER DTIP never unset, ignoring

и разберитесь - чего не хватает. иногда достаточно вывести отладочный дамп переменных и поправив, пнуть юбут в нужном направление..[/quote]

Пасибо за советы, дефайны я сам добавлял, пытаясь использовать старый драйвер, но в doc/readme.atmel_mci увы рекомендуют general использовать, да и сами видите, что он почти работает, старый сразу глохнет на mmc init, то есть юбут тупо затыкаеться и все. Насчет дампа не понял, подскажите если можно. Просто я уже не понимаю, куда рыть, остальное все что прикрутил, как бы readme+grep, плюс парсинг глазками. А тут уже все не понимаю просто, как заставить работать. Приму любые советы! А если решение, то буду прыгать от счастья, а то тупо сел на этом и обидно ведь, остальное то все работает и планы далеко идущие
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 23.01.2012 23:47 Редактировалось 23.01.2012 23:49 Сообщение: 4
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
уф.. еле вычитал, что у вас 9g20..
в свое время я прикручивал поддержку SD на 9260 ссылка
и 9g45 ссылка
полистайте.. там о старом юбуте, но может что полезного подчерпнете..
на сегодня у меня все - в СПб 0:42 - пора спать.. если получится - завтра пообсуждаем..

о дампе - выражение образное. ищете в сорцах юбута строчку или строчки, где формируется вышеприведенное выражение и выводите в консоль диагностику - где ищет, чего ожидает и условие правильного срабатывания.. собственно, нечто похоожее у вас уже есть "mci: CMDR 000d1052.." далее документацию на 9g20 и портянку-доку на стандарт sd/mmc.. и разбираетесь, кто спросил и что ему ответили..

у вас практически все работает - не хватает малого..

и вдогонку - проверьте базовые адреса для MCI! для разных семейств они отличаются..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 23.01.2012 23:51 Сообщение: 5
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
и совсем угасая.. попробуйте упростить команду, вдруг парсер лажается, до такой:
Код
fatload mmc 0 20400000 u-boot.bin

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
vibic
Добавлено 24.01.2012 13:04 Сообщение: 6
vibic
5

Пункты: 940
Регистрация: 23.01.2012
Пол: Мужчина
[quote]и совсем угасая.. попробуйте упростить команду, вдруг парсер лажается, до такой:
Код
fatload mmc 0 20400000 u-boot.bin
[/quote]
Попробовал, увы тоже самое, пока смотрю сырцы дальше. хнык.
Спуститься к концу Подняться к началу
Персональная информация
vibic
Добавлено 24.01.2012 14:42 Сообщение: 7
vibic
5

Пункты: 940
Регистрация: 23.01.2012
Пол: Мужчина
Цитата
уф.. еле вычитал, что у вас 9g20..
в свое время я прикручивал поддержку SD на 9260 ссылка
и 9g45 ссылка
полистайте.. там о старом юбуте, но может что полезного подчерпнете..
на сегодня у меня все - в СПб 0:42 - пора спать.. если получится - завтра пообсуждаем..

о дампе - выражение образное. ищете в сорцах юбута строчку или строчки, где формируется вышеприведенное выражение и выводите в консоль диагностику - где ищет, чего ожидает и условие правильного срабатывания.. собственно, нечто похоожее у вас уже есть "mci: CMDR 000d1052.." далее документацию на 9g20 и портянку-доку на стандарт sd/mmc.. и разбираетесь, кто спросил и что ему ответили..

у вас практически все работает - не хватает малого..

и вдогонку - проверьте базовые адреса для MCI! для разных семейств они отличаются..

Можете исходники той версии вроде 1.3.4 с исправлениями для 9g20 куда нить выложить? А то в обоих ветках все ссылки уже истекли по срокам. Буду очень признателен, кстати в 1.3.4 уже был hush shell? Его будет обидно потерять.
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 24.01.2012 18:36 Сообщение: 8
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
Буду очень признателен, кстати в 1.3.4 уже был hush shell? Его будет обидно потерять.

честно гря, я не в курсе.. исходники всех версий юбута можно найти, например, на denx.de

0. напомню, что у меня 9g45, а не 9g20
1. я не уверен, что быстро найду архив в сорцами, где-то на виртуалках лежит..
2. если найду, то лучше через почту - пишите на jremizov{дог}mail.ru
3. у пипла в инете схожая проблема - жалуются на таймауты при блочном обмене (еррату смотрели, там ничего не написано об mci?)
4. вот [url=http://old.nabble.com/-U-Boot---PATCH--AT91SAM9260-9XE%3A-add-support-for-MultiMedia-Card-Interface-(MCI)-td29068839i20.html]тут[/url] прикладывают некий патч "This patch adds SD/MMC support to AT91SAM9260/9XE/9G20
using the generic MMC framework."

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
vibic
Добавлено 25.01.2012 23:31 Сообщение: 9
vibic
5

Пункты: 940
Регистрация: 23.01.2012
Пол: Мужчина
Цитата
Цитата
Буду очень признателен, кстати в 1.3.4 уже был hush shell? Его будет обидно потерять.

честно гря, я не в курсе.. исходники всех версий юбута можно найти, например, на denx.de

0. напомню, что у меня 9g45, а не 9g20
1. я не уверен, что быстро найду архив в сорцами, где-то на виртуалках лежит..
2. если найду, то лучше через почту - пишите на jremizov{дог}mail.ru
3. у пипла в инете схожая проблема - жалуются на таймауты при блочном обмене (еррату смотрели, там ничего не написано об mci?)
4. вот [url=http://old.nabble.com/-U-Boot---PATCH--AT91SAM9260-9XE%3A-add-support-for-MultiMedia-Card-Interface-(MCI)-td29068839i20.html]тут[/url] прикладывают некий патч "This patch adds SD/MMC support to AT91SAM9260/9XE/9G20
using the generic MMC framework."



4. Увы все что там есть, да и в инете все патчи, уже вошли в 2011.12 и явно есть бага, я пока не понял, понял одно нашел схожие случаи. Меня смущает, когда я дебаг включил, там блочное чтение, команда 18, а потом стоп передачи 12 команда и все, после watchdog срабатывает, ну и само собой ресет.

Пока тупо вышел из положения bootstrap 3.0 гружу с сд карты, а им ядро, но меня это не устраивает, если посмотрите в конфиги, что я выложил, я там понатворил с hush shell (bootcount bootlimit тоже прикольные вещи и netconsole, а еще утилита доступа к переменным из никсов), почти все что он может, увы он пока не умеет арифметику с переменными. Мне бы u-boot с sd картой победить
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 26.01.2012 01:07 Редактировалось 26.01.2012 01:27 Сообщение: 10
sasamy
4.70

Пункты: 77067
Регистрация: 14.08.2009
Цитата
я там понатворил с hush shell (bootcount bootlimit тоже прикольные вещи и netconsole, а еще утилита доступа к переменным из никсов), почти все что он может, увы он пока не умеет арифметику с переменными.


Если реально нужны такие извраты в загрузчике - смотрите лучше
http://barebox.org

там еще и не такие штуки можно вытворять :)
Цитата

If you develop features for Barebox, you can use the 'sandbox' target which compiles Barebox as a POSIX application in the Linux userspace: it can be started like a normal command and even has network access (tun/tap). Files from the local filesystem can be used to simulate devices.


http://wiki.barebox.org/doku.php?id=start
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Отладочные платы » SK-AT91SAM9XE512-SIMXXX