ATAG: различия между версиями
DmT (обсуждение | вклад) | Azt59 (обсуждение | вклад) (→Структура ATAG) | ||
Строка 42: | Строка 42: | ||
|} | |} | ||
− | + | В [[ROKR]] [[Z6]] из стандартных используются только ATAG_CORE, ATAG_CMDLINE и ATAG_NONE. | |
---- | ---- | ||
{| border="1" | {| border="1" | ||
Строка 83: | Строка 83: | ||
Используется для передачи коммандной строки ядру.Строка длжна быть NULL terminated. Значения length_of_cmdline указывает на завершающий символ(/n). | Используется для передачи коммандной строки ядру.Строка длжна быть NULL terminated. Значения length_of_cmdline указывает на завершающий символ(/n). | ||
|} | |} | ||
+ | Загрузчик телефона также передаёт ядру и нетипичные параметры такие как | ||
+ | ATAG_POWERUP_REASON | ||
+ | ATAG_IPU_BUFFER_ADDRESS | ||
+ | ATAG_IS_IPU_INITIALIZED | ||
+ | ATAG_GPU_CONTEXT | ||
+ | ATAG_USB_FIRMWARE_ADDRESS | ||
+ | ATAG_USB_FIRMWARE_SIZE | ||
+ | ATAG_MBM_VERSION | ||
+ | ATAG_MBM_LOADER_VERSION | ||
+ | ATAG_BOARDID 0xf1000409 | ||
+ | ATAG_FLAT_DEV_TREE_ADDRESS | ||
+ | ATAG_FLASHING_COMPLETED | ||
+ | MOT_LOGO_VERSION_SIZE_OLD | ||
+ | MOT_LOGO_VERSION_SIZE | ||
+ | ATAG_LOGO_VERSION | ||
+ | ATAG_MEMORY_TYPE | ||
+ | ATAG_BATTERY_STATUS_AT_BOOT | ||
+ | ATAG_BOOT_FREQUENCY | ||
+ | ATAG_MEDL_INFO | ||
+ | ATAG_MBM_BOOTUP_TIME | ||
+ | ATAG_BP_LOADER_VERSION | ||
+ | ATAG_CLI_LOGO_VERSION | ||
+ | Эти параметры используются только для загрузки специфического ядра телефона | ||
+ | |||
--------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | ||
− | + | Подробное описание стандартных тэгов можно найти на [http://www.simtec.co.uk/products/SWLINUX/files/booting_article.html#ATAG_CORE http://www.simtec.co.uk/products/SWLINUX/files/booting_article.html#ATAG_CORE] |
Версия 15:27, 3 марта 2009
Определение
ATAG - структура, содержащая параметры загрузки ядра Linux. В MOTOMAGX находится в CG41.Получив управление, Bootloader должен после инициализации оборудования заполнить структуру ATAG, после чего передать её ядру.
Структура ATAG
Тип структуры | Идентификатор |
---|---|
ATAG_CORE | 0x54410001 |
ATAG_MEM | 0x54410002 |
ATAG_VIDEOTEXT | 0x54410003 |
ATAG_RAMDISK | 0x54410004 |
ATAG_INITRD2 | 0x54420005 |
ATAG_SERIAL | 0x54410006 |
ATAG_REVISION | 0x54410007 |
ATAG_VIDEOLFB | 0x54410008 |
ATAG_CMDLINE | 0x54410009 |
ATAG_NONE | 0x00000000 |
В ROKR Z6 из стандартных используются только ATAG_CORE, ATAG_CMDLINE и ATAG_NONE.
Tag | Tag Name | Value | Size | Structure members | Description |
---|---|---|---|---|---|
ATAG_CORE | Заголовок структуры | 0x54410001 | 5 (2 if no data) |
| Нет |
ATAG_NONE | Нулевой тэг | 0x00000000 | 2 | None | В Z6 flags=0x00000000,pagesize=0x00000100,rootdev=0x00000000. Этот Тэг используется для завершения структкры ATAG его размер должен быть 0 (а не 2 как у тэгов данных). |
ATAG_CMDLINE | Тэг коммандная строка | 0x54410009 | 2 + ((length_of_cmdline + 3) / 4) |
| В ROKR Z6 используется такая строка ipu_mem=4444K@0x93700000 brdrev=P3A noinitrd console=/dev/null rw mem=60M@0x90000000 init=/linuxrc ip=off root=/dev/mtdblock/root mtdparts=nand0:192k@256k(pds),128k(setup),256k(logo),128k(secure),1536k@1088k(kern)ro,3968k(bpsw),29680k(root)ro,7680k(lang),7m(user),10752k(resrc),66512k(mass_storage),16k(kpanic),2672k(rsv) Используется для передачи коммандной строки ядру.Строка длжна быть NULL terminated. Значения length_of_cmdline указывает на завершающий символ(/n). |
Загрузчик телефона также передаёт ядру и нетипичные параметры такие как ATAG_POWERUP_REASON ATAG_IPU_BUFFER_ADDRESS ATAG_IS_IPU_INITIALIZED ATAG_GPU_CONTEXT ATAG_USB_FIRMWARE_ADDRESS ATAG_USB_FIRMWARE_SIZE ATAG_MBM_VERSION ATAG_MBM_LOADER_VERSION ATAG_BOARDID 0xf1000409 ATAG_FLAT_DEV_TREE_ADDRESS ATAG_FLASHING_COMPLETED MOT_LOGO_VERSION_SIZE_OLD MOT_LOGO_VERSION_SIZE ATAG_LOGO_VERSION ATAG_MEMORY_TYPE ATAG_BATTERY_STATUS_AT_BOOT ATAG_BOOT_FREQUENCY ATAG_MEDL_INFO ATAG_MBM_BOOTUP_TIME ATAG_BP_LOADER_VERSION ATAG_CLI_LOGO_VERSION Эти параметры используются только для загрузки специфического ядра телефона
Подробное описание стандартных тэгов можно найти на http://www.simtec.co.uk/products/SWLINUX/files/booting_article.html#ATAG_CORE