Skip to content

Commit beb4a37

Browse files
add imx952 19x19 evk support
Signed-off-by: Clark Wang <xiaoning.wang@nxp.com>
1 parent c344bd7 commit beb4a37

3 files changed

Lines changed: 69 additions & 0 deletions

File tree

bcu_ftdi_eeprom.c

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ struct ftdi_eeprom_field_code_tb ftdi_eeprom_field[] = {
8181
{ftdi_eeprom_board_id, 0x26,"NXP VAL_BOARD_12 Board"},
8282
{ftdi_eeprom_board_id, 0x27,"NXP i.MX943 Orange Box Board"},
8383
{ftdi_eeprom_board_id, 0x28,"NXP i.MX93W EVK Board"},
84+
{ftdi_eeprom_board_id, 0x29,"NXP i.MX952 EVK 19x19 Board"},
8485

8586
{ftdi_eeprom_soc_id, 0x1, "i.MX8DXL"},
8687
{ftdi_eeprom_soc_id, 0x2, "i.MX8MP"},
@@ -109,6 +110,7 @@ struct ftdi_eeprom_field_code_tb ftdi_eeprom_field[] = {
109110
{ftdi_eeprom_soc_id, 0x19, "VAL_BOARD_11 SOC"},
110111
{ftdi_eeprom_soc_id, 0x1a, "VAL_BOARD_12 SOC"},
111112
{ftdi_eeprom_soc_id, 0x1b, "i.MX93W"},
113+
{ftdi_eeprom_soc_id, 0x1c, "i.MX952"},
112114

113115
{ftdi_eeprom_pmic_id, 0x1, "PPF7100BVMA1ES"}, //On imx8dxl-evk
114116
{ftdi_eeprom_pmic_id, 0x2, "PCA9450CHN"}, //On imx8mpevk-cpu and imx8mpevk-cpu-pwr
@@ -315,6 +317,15 @@ struct ftdi_eeprom_user_area imx95evk19_ftdi_eeprom_user_area_info = {
315317
1
316318
};
317319

320+
struct ftdi_eeprom_user_area imx952evk19_ftdi_eeprom_user_area_info = {
321+
0x1, //config
322+
0x26, 0x0, 0x0, //board_id, board_rev_number, board_rev_char
323+
0x1a, 0x0, 0x0, //soc_id, soc_rev_number, soc_rev_char
324+
0x9, 0xF, 0xF, //pmic_id, pmic_rev_number, pmic_rev_char
325+
16,
326+
1
327+
};
328+
318329
struct ftdi_eeprom_user_area nxp_custom_ftdi_eeprom_user_area_info = {
319330
0x1, //config
320331
0x10, 0x1, 0x1, //board_id, board_rev_number, board_rev_char

bcu_ftdi_eeprom.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,7 @@ extern struct ftdi_eeprom_user_area val_board_3_ftdi_eeprom_user_area_info;
108108
extern struct ftdi_eeprom_user_area imx8dxl_obx_ftdi_eeprom_user_area_info;
109109
extern struct ftdi_eeprom_user_area imx95evk19_ftdi_eeprom_user_area_info;
110110
extern struct ftdi_eeprom_user_area imx95evk15_ftdi_eeprom_user_area_info;
111+
extern struct ftdi_eeprom_user_area imx952evk19_ftdi_eeprom_user_area_info;
111112
extern struct ftdi_eeprom_user_area nxp_custom_ftdi_eeprom_user_area_info;
112113
extern struct ftdi_eeprom_user_area val_board_4_ftdi_eeprom_user_area_info;
113114
extern struct ftdi_eeprom_user_area bench_imx8qm_ftdi_eeprom_user_area_info;

board.c

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1215,6 +1215,62 @@ struct board_power_group imx95evk15_power_groups[] = {
12151215
{NULL, 0}
12161216
};
12171217

1218+
struct mapping imx952evk19_board[] = {
1219+
{"vdd_sd2_3v3", power, IMX95EVK_POWER_PATH(1, 1, 0x11, 5, 5), 0x00},
1220+
{"vdd_soc", power, IMX95EVK_POWER_PATH(1, 2, 0x11, 5, 5), 0x00},
1221+
{"lpd5_vddq", power, IMX95EVK_POWER_PATH(1, 3, 0x11, 10, 10), 0x00},
1222+
{"lpd5_vdd2", power, IMX95EVK_POWER_PATH(1, 4, 0x11, 10, 10), 0x00},
1223+
{"lpd5_vdd1", power, IMX95EVK_POWER_PATH(2, 1, 0x12, 400, 400), 0x00},
1224+
{"vdd_ddr", power, IMX95EVK_POWER_PATH(2, 2, 0x12, 10, 10), 0x00}, //95 Only
1225+
{"vddq_ddr", power, IMX95EVK_POWER_PATH(2, 3, 0x12, 10, 10), 0x00},
1226+
{"vdd2_ddr", power, IMX95EVK_POWER_PATH(2, 4, 0x12, 250, 250), 0x00},
1227+
{"nvcc_sdio2", power, IMX95EVK_POWER_PATH(3, 1, 0x13, 100, 100), 0x00},
1228+
{"nvcc_3v3", power, IMX95EVK_POWER_PATH(3, 2, 0x13, 100, 100), 0x00},
1229+
{"vdd_usb_3v3", power, IMX95EVK_POWER_PATH(3, 3, 0x13, 400, 400), 0x00},
1230+
{"vdd_ana_0v8", power, IMX95EVK_POWER_PATH(3, 4, 0x13, 10, 10), 0x00},
1231+
{"vdd_ana_1v8", power, IMX95EVK_POWER_PATH(4, 1, 0x14, 50, 50), 0x00},
1232+
{"nvcc_enet_ccm", power, IMX95EVK_POWER_PATH(4, 2, 0x14, 100, 100), 0x00},
1233+
{"nvcc_wakeup", power, IMX95EVK_POWER_PATH(4, 3, 0x14, 100, 100), 0x00},
1234+
{"nvcc_bbsm_1v8", power, IMX95EVK_POWER_PATH(4, 4, 0x14, 10000, 10000), 0x00},
1235+
1236+
{"boot_mode", gpio, IMX95EVK_GPIO_EXTENDER_PATH"/pcal6524h{addr=0x22;port=0;pin_bitmask=0x0F;opendrain=0;}", 0x80},
1237+
{"ft_por_b", gpio, IMX95EVK_GPIO_EXTENDER_PATH"/pcal6524h{addr=0x22;port=1;pin_bitmask=0x01;opendrain=0;}", 0x00},
1238+
{"reset", gpio, IMX95EVK_GPIO_EXTENDER_PATH"/pcal6524h{addr=0x22;port=1;pin_bitmask=0x02;opendrain=0;}", 0x70},
1239+
{"onoff", gpio, IMX95EVK_GPIO_EXTENDER_PATH"/pcal6524h{addr=0x22;port=1;pin_bitmask=0x04;opendrain=0;}", 0x60},
1240+
{"remote_en", gpio, IMX95EVK_GPIO_EXTENDER_PATH"/pcal6524h{addr=0x22;port=1;pin_bitmask=0x08;opendrain=0;}", 0x51},
1241+
{"mode_dir", gpio, IMX95EVK_GPIO_EXTENDER_PATH"/pcal6524h{addr=0x22;port=1;pin_bitmask=0x10;opendrain=0;}", 0x41},
1242+
{"ft_sd_pwren", gpio, IMX95EVK_GPIO_EXTENDER_PATH"/pcal6524h{addr=0x22;port=1;pin_bitmask=0x20;opendrain=0;}", 0x11},
1243+
{"ft_sd_cd", gpio, IMX95EVK_GPIO_EXTENDER_PATH"/pcal6524h{addr=0x22;port=1;pin_bitmask=0x40;opendrain=0;}", 0x21},
1244+
{"ft_fta_sel", gpio, IMX95EVK_GPIO_EXTENDER_PATH"/pcal6524h{addr=0x22;port=1;pin_bitmask=0x80;opendrain=0;}", 0x31},
1245+
1246+
{"ft_io_nrst1", gpio, "/ft4232h_gpio{channel=1;pin_bitmask=0x08}", 0x00},
1247+
{"ft_io_nint1", gpio, "/ft4232h_gpio{channel=1;pin_bitmask=0x10}", 0x00},
1248+
{"ft_io_nint", gpio, "/ft4232h_gpio{channel=1;pin_bitmask=0x20}", 0x00},
1249+
{"ft_io_nrst", gpio, "/ft4232h_gpio{channel=1;pin_bitmask=0x40}", 0x00},
1250+
1251+
{"93lcx6", ftdi_eeprom, "/ft4232h_eeprom{uasize=0xFF}", 0x00},
1252+
{"temp", temperature, "/ft4232h_i2c{channel=1;dir_bitmask=0xF0;val_bitmask=0x00}/pct2075{addr=0x48}", 0x00},
1253+
1254+
{NULL, 0, NULL, 0} //null terminated
1255+
};
1256+
1257+
struct boot_mode imx952evk_board_boot_modes[] = {
1258+
{"usb", 0x09},
1259+
{"emmc", 0x0a},
1260+
{"sd", 0x0b},
1261+
{"nor", 0x0c},
1262+
{"nand_2k", 0x0d},
1263+
{"nand_4k", 0x0e},
1264+
{NULL, 0}
1265+
};
1266+
1267+
struct board_power_group imx952evk19_power_groups[] = {
1268+
{"GROUP_SOC", "vdd_sd2_3v3,vdd_soc,nvcc_bbsm_1v8,vdd_ana_1v8,vdd_ana_0v8,vdd_usb_3v3,vdd_ddr,vddq_ddr,vdd2_ddr"},
1269+
{"GROUP_SOC_FULL", "vdd_sd2_3v3,vdd_soc,nvcc_bbsm_1v8,vdd_ana_1v8,vdd_ana_0v8,vdd_usb_3v3,vdd_ddr,vddq_ddr,vdd2_ddr,nvcc_sdio2,nvcc_3v3,nvcc_wakeup,nvcc_enet_ccm"},
1270+
{"GROUP_DRAM", "lpd5_vdd1,lpd5_vddq,lpd5_vdd2"},
1271+
{NULL, 0}
1272+
};
1273+
12181274
struct boot_mode null_boot_mode[] = {
12191275
{NULL, 0}
12201276
};
@@ -2362,6 +2418,7 @@ struct board_info board_list[] =
23622418
{"imx93evk14", imx93evk14_board, imx93evk11_board_boot_modes, 0, NULL, NULL, null_board_links, &imx93evk14_ftdi_eeprom_user_area_info, 500},
23632419
{"imx95evk19", imx95evk19_board, imx95evk_board_boot_modes, 0, NULL, imx95evk19_power_groups, null_board_links, &imx95evk19_ftdi_eeprom_user_area_info, 500},
23642420
{"imx95evk15", imx95evk15_board, imx95evk_board_boot_modes, 0, NULL, imx95evk15_power_groups, null_board_links, &imx95evk15_ftdi_eeprom_user_area_info, 500},
2421+
{"imx952evk19", imx952evk19_board, imx952evk_board_boot_modes, 0, NULL, imx952evk19_power_groups, null_board_links, &imx952evk19_ftdi_eeprom_user_area_info, 500},
23652422
{"nxp_custom", nxp_custom_board, null_boot_mode, 0, NULL, nxp_custom_power_groups, null_board_links, &nxp_custom_ftdi_eeprom_user_area_info, 500},
23662423
{"nxp_custom_revB", nxp_custom_revB_board, nxp_custom_revB_boot_modes, 0, NULL, nxp_custom_revB_power_groups, null_board_links, &nxp_custom_revB_ftdi_eeprom_user_area_info, 500},
23672424
{"val_board_4", val_board_4_board, null_boot_mode, 0, NULL, val_board_4_power_groups, null_board_links, &val_board_4_ftdi_eeprom_user_area_info, 500},

0 commit comments

Comments
 (0)