You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Each kindle model has been produced in different revisions.
These are specified at the top of /include/asm-arm/arch-mx50/mx50_yoshi_board.h in the boards[] array:
static const struct board_type boards[] = ...
Each revision specifies board ID, name, RAM type and RAM quantity. When u-boot loads, in order to initialize the RAM, it reads from the nvram_info[] array from the same file which specifies a name, offset and size for each of a set of variables. One of these variables is called pcbsn.
The variable pcbsn is read by setup_board_info() in board/imx50_yoshi/imx50_yoshi.c which calls setup_board_info() which actually calls idme_get_var() in common/cmd_idme.c.
idme_get_var() then reads from the userdata partition which is hardcoded in u-boot using the address in CONFIG_MMC_USERDATA_ADDR. It reads at the offset specified in nvram_info[] for the pcbsn variable.
The value of pcbsn is saved in the board_id C variable (again by setup_board_info()) and then matched against the board id from the boards[] array by the function get_board_type() in the same imx50_yoshi.c file.
The text was updated successfully, but these errors were encountered:
We need to save this "userdata" partition data somewhere so it can still be read. One option is to leave it where it currently is for now, which is from 252 kB to 257 kB on the flash memory which doesn't waste that much storage and saves time.
Each kindle model has been produced in different revisions.
These are specified at the top of
/include/asm-arm/arch-mx50/mx50_yoshi_board.h
in theboards[]
array:Each revision specifies board ID, name, RAM type and RAM quantity. When u-boot loads, in order to initialize the RAM, it reads from the
nvram_info[]
array from the same file which specifies a name, offset and size for each of a set of variables. One of these variables is calledpcbsn
.The variable
pcbsn
is read bysetup_board_info()
inboard/imx50_yoshi/imx50_yoshi.c
which callssetup_board_info()
which actually callsidme_get_var()
incommon/cmd_idme.c
.idme_get_var()
then reads from theuserdata
partition which is hardcoded in u-boot using the address inCONFIG_MMC_USERDATA_ADDR
. It reads at the offset specified innvram_info[]
for thepcbsn
variable.The value of
pcbsn
is saved in theboard_id
C variable (again bysetup_board_info()
) and then matched against the board id from theboards[]
array by the functionget_board_type()
in the sameimx50_yoshi.c
file.The text was updated successfully, but these errors were encountered: