Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вопрос по U-Boot для bf527
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Операционные системы > Linux
ASergej_R19
Сам новичек.
Собрал u-boot для своей платы на bf527. На плате есть microSD.
Если в консольке регистрирую устройство через mmc_spi - то SD карта подключается и все ок. но при запуске платы устройство автоматом не регистрируется.
Пишет типа:
"CPU: ADSP bf527-0.2 (Detected Rev: 0.2) (spi flash boot)

Board: BF527 custom board...

Clock: VCO: 500 MHz, Core: 500 MHz, System: 125 MHz
RAM: 32 MiB
MMC:
SF: Detected M25PE16 with page size 64 KiB, total 2 MiB
In: serial
Out: serial
Err: serial
KGDB: [on serial] ready"

В файле для своей платы поставил:
/*
* SPI_MMC Settings
*/
#define CONFIG_MMC
#define CONFIG_GENERIC_MMC
#define CONFIG_MMC_SPI
#define CONFIG_MMC_SPI_BUS 0
#define CONFIG_MMC_SPI_CS 4
#define CONFIG_MMC_SPI_SPEED 25000000
#define CONFIG_MMC_SPI_MODE SPI_MODE_3

Что нужно сделать, что SD карта автоматом при запуске u-boot регистрировалась?
Jury093
Цитата(ASergej_R19 @ Nov 10 2016, 23:52) *
Сам новичек.
Что нужно сделать, что SD карта автоматом при запуске u-boot регистрировалась?

не очень понятно и сумбурно, но если "консольке регистрирую устройство через mmc_spi - то SD карта подключается и все ок" - это делалось из консоли в юбуте, то пропишите ваши действия в команду автозапуска
обычно это bootcmd
содержимое выводится через printenv
ASergej_R19
Да. Запускается юбут, дальше через консоль я регистрирую вручную через команду mmc_spi sd-карту. А хотелось бы чтобы это происходило автоматом при запуске юбута и инициализации драйвера.

На счет bootcmd - понял. Но это немного не то...

При запуске, юбут выводит в консоль:
"CPU: ADSP bf527-0.2 (Detected Rev: 0.2) (spi flash boot)

Board: BF527 custom board...

Clock: VCO: 500 MHz, Core: 500 MHz, System: 125 MHz
RAM: 32 MiB
MMC:
SF: Detected M25PE16 with page size 64 KiB, total 2 MiB
In: serial
Out: serial
Err: serial
KGDB: [on serial] ready"

Clock... - это конфигурируется работа процессора и тп.
RAM - тут конфигурируется sdram;
MMC - вот тут инициализируется драйвер MMC/SD и здесь же должна была-бы зарегистрироваться SD-карта, но этого не происходит.
SF - тут конфигурируется и подключается flash spi.... ну и так далее...

Через bootcmd - я смогу зарегистрировать sd-карту уже после загрузки всего юбута, но как это сделать при инициализации драйвера? Должен быть какой-то define, который я должен указать при компиляции и сборки юбута - но я никак не могу понять - что это за define... нашел defin'ы, с помощью которых можно указать настройки SPI для подключения SD карты, но должен быть еще какой-то который запустит собственно процедуру регистрации карты...
uriy
Цитата
Через bootcmd - я смогу зарегистрировать sd-карту уже после загрузки всего юбута, но как это сделать при инициализации драйвера?
Зачем вам это нужно?

Вот так я цепляю NAND флешку и затем загружаю с нее образ linux:

Код
bfin> setenv nandboot 'nand read $(loadaddr) 0x0 0x1000000;run ramargs;run addip;bootm'
bfin> setenv bootcmd run nandboot
bfin> saveenv
ASergej_R19
Да нет. Вы опять через bootcmd. С bootcmd - все и так понятно - это работает.

Я хотел на этапе сборки юбута, что бы драйвер MMC/SD запускался сразу с установками по умолчанию для подключения SD карты.
Если кто знает такой define или знает где посмотреть - буду очень признателен.
Jury093
Цитата(ASergej_R19 @ Nov 11 2016, 15:56) *
Да нет. Вы опять через bootcmd. С bootcmd - все и так понятно - это работает.
Я хотел на этапе сборки юбута, что бы драйвер MMC/SD запускался сразу с установками по умолчанию для подключения SD карты.
Если кто знает такой define или знает где посмотреть - буду очень признателен.

ах вот вы о чем.. к сожалению с блекфинами не работал, но пошел бы по след траектории:
раз вы можете из консоли проинтить sd/mmc, значит делаете это какой-то командой
ищете эту команду в сишных файлах в каталоге common
там д.б. функция, в теле которой вызываются п/п для инита sd/mmc через spi
осталось найти место куда их вписать для процесса инита периферии блекфина, видимо где-то в board/blackfin
например, если существует файл board.c, то в функцию board_init_f
возможно придется дописать вызовы хидеров и понять как вызывать п/п..
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.