1891ВМ12Я 0 24 января, 2016 Опубликовано 24 января, 2016 · Жалоба Очень интересует процесс загрузки процессора i.MX6S/D/Q с micro-SD карты памяти. Например Wandboard загружается с uSD карточки у которой простая msdos таблица разделов, а на первом разделе тупо FAT32 и лежит загрузчик. Но это плата Wandboard. Вопрос: если сделать плату на базе i.MX6S/D/Q (у них вроде одинаковая распиновка), напаять туда проц + LPDDR память и тупо подсунуть такую загрузочную micro-SD - грузиться будет? Я имею ввиду, является ли это встроенным в сам процессор функционалом, или требуется адаптировать некий дополнительный загрузчик и записывать его в другой вид памяти? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
McSava 0 25 января, 2016 Опубликовано 25 января, 2016 · Жалоба Если вы имеете ввиду аппаратные вещи, то в этом процессоре можно выбирать откдуа грузится, то это выбирается значением на контатктах во время загрузки процессора. Есть два контакта BOOT[1:0] которые отвечают за выбор, того откуда идёт выбор загрузочного устройства - из внутренних электрических прожиагемых "предохранителей", SERIAL или задается отдельной группой контактов на плате. Мы на своей плате делали надписи на слое шелкографии, что за что отвечает. По отличию запуска процессоров у Freescale/NXP был документ по правильному подключению питания процессоров. И Для Q и D есть отличия в схеме питания. Но в графе для iomux tool указано что регистры настройков выводов для Q и D идентичны. Правда сборкой проекта загрузчика я не занимался и подводных камней не знаю. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
1891ВМ12Я 0 25 января, 2016 Опубликовано 25 января, 2016 · Жалоба Правда сборкой проекта загрузчика я не занимался и подводных камней не знаю. Спасибо за отклик! Про эти выводы выбора загрузки я в курсе. Буду ждать еще отзывов! Вы можете уточнить этот момент у тех кто занимался софтом? Вся соль в том что можно ли рассчитывать что купив абсолютный новый проц у поставщика и подсунув ему uSD флэшку то я увижу его загружающимся? Или мне требуется заложить какой-то интерфейс загрузки и прошивки, может память какую-то? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_3m 7 25 января, 2016 Опубликовано 25 января, 2016 · Жалоба Вся соль в том что можно ли рассчитывать что купив абсолютный новый проц у поставщика и подсунув ему uSD флэшку то я увижу его загружающимся? Или мне требуется заложить какой-то интерфейс загрузки и прошивки, может память какую-то? Загрузится если на флэшке будет загрузочный образ с настройкой под конфигурацию памяти в данной плате. Если настройки контроллера памяти не соответствуют запаянным чипам памяти SDRAM - зависнет. Интерфейс загрузки лучше заложить. Обычно грузят через USB OTG. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
1891ВМ12Я 0 25 января, 2016 Опубликовано 25 января, 2016 · Жалоба Интерфейс загрузки лучше заложить. Обычно грузят через USB OTG. Неужели просто разъем USB-OTG сделать на плате и оно будет грузить с USB-флэшки, у которой первый раздел FAT32 с загрузчиком? До чего дошел прогресс (у меня лежит на столе Wandboard для примера, но я не знаю какие подготовительные работы были проведены чтобы оно загружалось так просто и удобно), мне главное убедиться что достаточно например запаять uSD разъем и USB-OTG и новый с завода проц будет загружаться без каких-либо проблем... В принципе, я уже понял ответы, тему можно закрыть, всё выяснил. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_3m 7 26 января, 2016 Опубликовано 26 января, 2016 · Жалоба Неужели просто разъем USB-OTG сделать на плате и оно будет грузить с USB-флэшки, у которой первый раздел FAT32 с загрузчиком? Через USB-OTG с флэшки грузиться не будет. Будет коннектиться с Mfgtool Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 27 января, 2016 Опубликовано 27 января, 2016 · Жалоба Неужели просто разъем USB-OTG сделать на плате и оно будет грузить с USB-флэшки, у которой первый раздел FAT32 с загрузчиком? На счет всяких бордов незнаю, но этот проц грузится только со специально подготовленной сд-карты или нанд-флеша. Никаких ФАТ16\32 , ЕХТ и пр. не будет грузиться, если есть такие функции где-то, то только если сначала грузится бут с поддержкой ФС и потом... СД-карту можно подготовить программой cfimager Через USB-OTG с флэшки грузиться не будет. Будет коннектиться с Mfgtool Mfgtool - просто заливает бинарник в память и запускает его. Дальше все зависит от того, что заливает, как правило, убут загружает специальный линукс, который уже прошивает нанд или сд-карту. достаточно например запаять uSD разъем и USB-OTG и новый с завода проц будет загружаться без каких-либо проблем... Если нужный софт подготовлен, то этих разъемов достаточно, хотя лучще еще вывести уарт1 для отладки, если что-то пошло не так :laughing: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
1891ВМ12Я 0 27 января, 2016 Опубликовано 27 января, 2016 · Жалоба На счет всяких бордов незнаю, но этот проц грузится только со специально подготовленной сд-карты или нанд-флеша. Никаких ФАТ16\32 , ЕХТ и пр. не будет грузиться, если есть такие функции где-то, то только если сначала грузится бут с поддержкой ФС и потом... СД-карту можно подготовить программой cfimager Ага! Я так и знал что не всё так просто. Спасибо за комментарий! Mfgtool - просто заливает бинарник в память и запускает его. Дальше все зависит от того, что заливает, как правило, убут загружает специальный линукс, который уже прошивает нанд или сд-карту. Если нужный софт подготовлен, то этих разъемов достаточно, хотя лучще еще вывести уарт1 для отладки, если что-то пошло не так :laughing: В общем, USB-OTG ставлю в обязательном порядке, UART - это святое и будет в первую очередь :) Буду максимально внимателен со всеми этими выводами и загрузочными битами! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KnightIgor 2 27 января, 2016 Опубликовано 27 января, 2016 · Жалоба В принципе, я уже понял ответы, тему можно закрыть, всё выяснил. Как ТопикСтартеру Вам флаг в руки, но мне до сих пор не ясно, КАКАЯ и ОТКУДА исполняется программа загрузчика, понимающая, что такое SDIO интерфейс, как читать SD карты, и какой именно файл/образ нужно оттуда прочесть и запустить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_3m 7 27 января, 2016 Опубликовано 27 января, 2016 · Жалоба Как ТопикСтартеру Вам флаг в руки, но мне до сих пор не ясно, КАКАЯ и ОТКУДА исполняется программа загрузчика, понимающая, что такое SDIO интерфейс, как читать SD карты, и какой именно файл/образ нужно оттуда прочесть и запустить. ОТКУДА - из встроенной в чип ROM. Программисты freescale написали загрузчик который на заводе отливают в кремнии (там есть баги, кстати). По сбросу ARM всегда выполняет код из этой ROM. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
1891ВМ12Я 0 29 января, 2016 Опубликовано 29 января, 2016 · Жалоба ОТКУДА - из встроенной в чип ROM. Программисты freescale написали загрузчик который на заводе отливают в кремнии (там есть баги, кстати). По сбросу ARM всегда выполняет код из этой ROM. Спасибо за информацию, для меня это критически важный момент. В принципе я был в курсе, но решил перестраховаться и еще раз убедиться в этой информации, я знаю на этом форуме есть те кто реально делал свои платы на базе iMX6. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Tarbal 4 29 января, 2016 Опубликовано 29 января, 2016 · Жалоба Спасибо за информацию, для меня это критически важный момент. В принципе я был в курсе, но решил перестраховаться и еще раз убедиться в этой информации, я знаю на этом форуме есть те кто реально делал свои платы на базе iMX6. А скоро прибавится. У меня два дизайна на нем же маячат. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 29 января, 2016 Опубликовано 29 января, 2016 · Жалоба Спасибо за информацию, для меня это критически важный момент. В принципе я был в курсе, но решил перестраховаться и еще раз убедиться в этой информации, я знаю на этом форуме есть те кто реально делал свои платы на базе iMX6. Еще не забудте про пару моментов: 1) Выбор загрузки идет через программирование фьюзов или резюки на порту EIM. Если не хотите связываться с однократно программируемыми фьюзами, на плате заложите эти резюки. 2) потребляемый ток от батарейки часов от 40 до 80мкА !!! Сначала не учел это - батарейки разряжались за 2 месяца :crying: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
1891ВМ12Я 0 1 февраля, 2016 Опубликовано 1 февраля, 2016 · Жалоба Есть два контакта BOOT[1:0] которые отвечают за выбор, того откуда идёт выбор загрузочного устройства - из внутренних электрических прожиагемых "предохранителей", SERIAL или задается отдельной группой контактов на плате. Мы на своей плате делали надписи на слое шелкографии, что за что отвечает. Про выводы BOOT_MODE[1:0] я понял - туда первым делом джамперы. Однако про SW1 Boot не совсем понял - где про это в документации? Допустим я ставлю BOOT_MODE[1:0] = 01 - загрузка от USB-OTG (на ПК появится виртуальный COM-порт???) а если BOOT_MODE[1:0] = 10 - то что? По умолчанию с завода идет eFuse с BT_FUSE_SEL=0 и таким образом все настройки берутся опираясь на то как выбраны "GPIO overrides" (это 32 вывода)? Вопросы: 1) На Вашей схеме SW1 Boot это 8 выводов хотя полный набор 32 бит. Почему? Из какой части документации эти SW1 Boot взяты? 2) Я вижу что в Wandboard в схеме wb-edm-imx6-rev-c1.pdf есть пример "Boot Config Select" и там 32 линии подключены! Однако в документации IMX6SDLRM.pdf в Table 8-3. GPIO Override Contact Assignments задействованы ну вообще другие выводы нежели в Wandboard. Например EIM_DA0 это BOOT_CFG1[0], а в Wandboard вообще EIM_DA0 не используется зато другие задействованы. Меня это очень напрягает. Я могу повторить схему как мартышка без понимания, но хотел бы понять :) 3) То что эти настроечные "GPIO overrides" сидят на тех же линиях что и память меня беспокоит - их надо стараться сделать как можно короче? Или одинаковыми по длине? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 49 3 февраля, 2016 Опубликовано 3 февраля, 2016 (изменено) · Жалоба выбраны "GPIO overrides" (это 32 вывода)? Нет. Это EIM_DA0 - DA15. Какую память вы туда подключаете?? Для DDR используются другие ноги. Про выводы BOOT_MODE[1:0] я понял - туда первым делом джамперы. Зачем тут джамперы, если предполагается загрузка только с усб или сд-карты?? boot0 садим на землю, boot1 через резюк 10к на 3В или к SNVS. Последнее как-бы по даташиту, но добавляет потребление по линии часовой батарейки, я соединял с 3В работает не хуже, а батарейку жрет меньше :laughing: а если BOOT_MODE[1:0] = 10 - то что? Это как раз то, что я использую. Первичная загрузка с усб, если нет - с первого бут-устройства(SD1). Линии EIM: 6,7,9,13-VCC(3V) 3,4,5,7,8,10,11,12,14,15 - GND через резюки 10к. Остальные не подключены никуда. Например Wandboard загружается с uSD карточки у которой простая msdos таблица разделов, а на первом разделе тупо FAT32 и лежит загрузчик. Но это плата Wandboard. Ну и мой вопрос, так сказать, "о птичках". Я так понял, что фриску используете под линуксом, почему именно этот проц? Ведь для линуксовых систем есть более продвинутые и дешевые процы, например А20 и т.д. от аллвиннера?? Периферии там даже больше, чем в МХ6... Изменено 3 февраля, 2016 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться