Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Адреса и их обозначение

Ответить
Настройки темы
C/C++ - Адреса и их обозначение

Аватара для BoBaH 13

Ветеран


Сообщения: 1213
Благодарности: 221


Конфигурация

Профиль | Отправить PM | Цитировать


Изменения
Автор: BoBaH 13
Дата: 19-04-2024
Что это за адреса 0xBC100000 и т.п.?
Это не флешечные. Эти слишком большие для неё. Они там 6-ти значные.
Как по ним определить адрес на флешке?
Скрытый текст

Флешки имеются ввиду от 4 до 32 мегабайт.

Отправлено: 18:54, 19-04-2024

 

Аватара для yurfed

Ветеран


Сообщения: 20046
Благодарности: 3123

Профиль | Отправить PM | Цитировать


Цитата BoBaH 13:
Как по ним определить адрес на флешке? »
а что тут думать?
Flash Bank #1
Flash Bank #2

Либо по питанию USB не хватает, либо просто банально банки "дырявые".

-------
Хочу ли я - Могу ли я - Говно ли я - Магнолия


Отправлено: 02:44, 20-04-2024 | #2



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

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для BoBaH 13

Ветеран


Сообщения: 1213
Благодарности: 221

Профиль | Отправить PM | Цитировать


Вот этот скрипт целиком. Смотреть с FLASH and environment organization. Это примерно 1/3 смещения) от начала.
Цель: дать сценарий разметки флешки на 16 Мб с Non Dual Image c MT7628_ASIC_BOARD.

Отправлено: 12:33, 20-04-2024 | #3


Аватара для lxa85

Необычный


Contributor


Сообщения: 4463
Благодарности: 994

Профиль | Сайт | Отправить PM | Цитировать


Насколько я понял -- это код из проекта U-boot.
Если верить публикации
https://habr.com/ru/articles/585432/
то там такие адреса -- норма.
В целом не хватает подробностей проекта.
Ну и/или -- зачем дались именно эти адреса?
Да. Больше подробностей. С вводными, описанием действий и тд.

-------
- Я не разрешаю тебе быть плохой! Потому что плохие люди совершают плохие поступки. А это нехорошо!
(Из наставлений 5 летней девочки своей младшей сестре)


Отправлено: 21:47, 24-04-2024 | #4


Аватара для BoBaH 13

Ветеран


Сообщения: 1213
Благодарности: 221

Профиль | Отправить PM | Цитировать


Цитата lxa85:
Насколько я понял -- это код из проекта U-boot. »
Всё верно.
Задача: Апнуть роутер тп-линк 840 6.2 по флешки с 4 до 16 и оперативку с 32 до 64 Мб.
Цель : Разметить 16 Мб флешку. Для этого надо сделать необходимые настройки в убутособирателе. Файл выше от него.
Надо сделать бин файл который потом прикручивается в прошивку флешки вместе с фактори. Он рулит разметкой флешки согласно DTS.
Вот пример разметки на аналогичном устройстве с 16 Мб в стоке. См. с 120 строки.

А дефолтный убутособиратель целиком здесь.
Данный роутер в стоке с флешкой на 4 Мб которая делится на 3 раздела:
Uboot - загрузчик 64 Кб
Firmwarw - ОС 4 Мб - 64 Кб - 64 Кб
Factory - 64 Кб вайфайный уникальный для каждого роутера раздел. В других роутерах с чипами atheros называется ART.
В моём чип медиатековский МТ7628.

Этот убутособиратель из сырцов для 840-го с оф сайта.
Собран на основе для устройств с процами rt2880.
ХЗ как именно собираются дефолтные бины с одним разделом. В том файле сценарии уже для Dual Image.

С адресами выше разобрался. Там например даётся адрес старта (имхо отбалдёвый) разметки флешки на 2 Мб в 16-й системе:
BC000000 - при переводе его в 10-ю получится 3154116608
Первый банк памяти FLASH_1 начинается тоже с этого места.
BC100000 - это адрес уже FLASH_2 и при переводе в 10-ю получится 3155165184
3155165184 - 3154116608 = 1048576
1048576 / 1024 / 1024 = 1
Т.е. на 2 Мб флешке второй банк памяти находится на смещении 1 Мб от старта.
Убутособиратель для большого числа платформ и там применяются разные значения старта.

Все файлы о которых идёт речь имеются выше по ссылке здесь. Я например всё открываю с помощью нотепад++ включив подсветку синтаксиса. Только которые .о кракозябристые.
В стококовом убутособирателе выбор размера флеш включается только при активации Dual Image. Но без него тоже можно добавив в настройки для 7628-го в файле config.in (это в самом конце файла):
Скрытый текст
PHP код: Выделить весь код

define_bool ON_BOARD_SPI_FLASH_COMPONENT y

choice 
'Flash Size / PA3MEP FLASH' "4M ON_BOARD_4M_FLASH_COMPONENT \
                     8M ON_BOARD_8M_FLASH_COMPONENT \
                     16M ON_BOARD_16M_FLASH_COMPONENT
                    " 
4M

if [ "$DUAL_IMAGE_SUPPORT" "y" ]; then
choice 
'Flash Size for DUAL IMAGE' "4M ON_BOARD_4M_FLASH_COMPONENT \
                     8M ON_BOARD_8M_FLASH_COMPONENT \
                     16M ON_BOARD_16M_FLASH_COMPONENT
                    " 
4M
fi 


Упомянутый ранее файл это include / configs / rt2880.h. Взялся за него по аналогии с этим.
Пока придумал по принципу: Если не нравятся правила, то задай свои. Вставил в rt2880.h на третьей строчке после коммента:
Скрытый текст
PHP код: Выделить весь код

/*

 * FLASH and environment organization
 */
#define CFG_MAX_FLASH_BANKS    1    /* max number of memory banks */
#define CFG_MAX_FLASH_SECT    (263)    /* max number of sectors on one chip */
вот это:
#if defined (MT7628_FPGA_BOARD) || defined (MT7628_ASIC_BOARD)
#define PHYS_FLASH_START 0xBC000000
#elif defined (ON_BOARD_8M_FLASH_COMPONENT)
#define PHYS_FLASH_1 0xBC000000
#elif defined (ON_BOARD_16M_FLASH_COMPONENT)
#define PHYS_FLASH_1 0xBC000000
#endif 


Проверял. Бин собирается. Про ошибки не пишет.

Но пообщался с челом который в этой теме. У него другой принцип деления флешки. Вернее место откуда даётся сценарий.
Вот Гитхаб его. Сценарий деления задан в profiles/TP-LINK/TP-LINK_WR840N_V6_SPI-16M-64M.config аналог которого в стоковом убутособирателе в корневой папке WR840NV6_20_config.

Вот теперь вскочил вопрос. Откуда вернее задавать сценарий для разметки флешки?
С конфига для определённой модели или с rt2880.h?

Отправлено: 21:13, 25-04-2024 | #5



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Адреса и их обозначение

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Адреса IP и ID. Их отслеживание. Сохранение анонимности. postoronim Хочу все знать 26 04-02-2018 18:20
[решено] обозначение поверхностей в компасе Dimchik Хочу все знать 1 23-02-2012 00:58
Интерфейс - [решено] странное обозначение разделов WChek Microsoft Windows 2000/XP 19 28-01-2010 10:05
Удаленный рабочий стол, настроенный на разные адреса, отдельно их не хранит dimon4ick Хочу все знать 1 01-07-2008 11:36
Рисунки и обозначение сокетов под процессоры Alexmax Хочу все знать 2 16-11-2005 07:55




 
Переход