9e4b57398f
Although the RT1015 only supports 128 KB of FlexRAM being used at once, the default fusemap overallocates 160KB of FlexRAM. The JLink flashloader algorithm appears to rely on the 64KB of DTCM in the default fusemap being configured. Reducing the DTCM allocation resulted in JLink failing to flash the SOC. To resolve this, utilize the default fusemap of {O, O, D, D, I} for the RT1015 FlexRAM setup. Add a note about the restrictions on using overallocated FlexRAM to the SOC DTSI. Fixes #65889 Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
145 lines
3.6 KiB
Plaintext
145 lines
3.6 KiB
Plaintext
/*
|
|
* Copyright (c) 2019, Linaro
|
|
* Copyright (c) 2022, NXP
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
#include <nxp/nxp_rt10xx.dtsi>
|
|
|
|
&flexram {
|
|
flexram,num-ram-banks = <5>;
|
|
/* Note: RT1015 has five flexram banks, but only 4 of the 5 can
|
|
* be used at the same time, for a total of 128KB of RAM.
|
|
*/
|
|
flexram,bank-spec = <FLEXRAM_OCRAM>,
|
|
<FLEXRAM_OCRAM>,
|
|
<FLEXRAM_DTCM>,
|
|
<FLEXRAM_DTCM>,
|
|
<FLEXRAM_ITCM>;
|
|
};
|
|
|
|
&sysclk {
|
|
clock-frequency = <500000000>;
|
|
};
|
|
|
|
&itcm {
|
|
reg = <0x00000000 DT_SIZE_K(32)>;
|
|
};
|
|
|
|
&dtcm {
|
|
reg = <0x20000000 DT_SIZE_K(64)>;
|
|
};
|
|
|
|
&ocram {
|
|
reg = <0x20200000 DT_SIZE_K(64)>;
|
|
};
|
|
|
|
&ccm {
|
|
ipg-podf {
|
|
clock-div = <4>;
|
|
};
|
|
};
|
|
|
|
&gpt2 {
|
|
gptfreq = <12500000>;
|
|
};
|
|
|
|
/* RT1015 only has two LPSPI blocks */
|
|
/delete-node/ &lpspi3;
|
|
/delete-node/ &lpspi4;
|
|
|
|
/ {
|
|
soc {
|
|
/* Remove ADC2, it doesn't exist on RT1015 */
|
|
/delete-node/ adc@400C8000;
|
|
/* GPIOS 4 and 6-9 are not preset on RT1015 */
|
|
/delete-node/ gpio@401c4000;
|
|
/delete-node/ gpio@42000000;
|
|
/delete-node/ gpio@42004000;
|
|
/delete-node/ gpio@42008000;
|
|
/delete-node/ gpio@4200c000;
|
|
/* RT1015 has only one flexSPI controller */
|
|
/delete-node/ spi@402a4000;
|
|
};
|
|
};
|
|
|
|
/*
|
|
* GPIO pinmux options. These options define the pinmux settings
|
|
* for GPIO ports on the package, so that the GPIO driver can
|
|
* select GPIO mux options during GPIO configuration.
|
|
*/
|
|
|
|
&gpio1{
|
|
pinmux = <&iomuxc_gpio_ad_b0_00_gpio1_io00>,
|
|
<&iomuxc_gpio_ad_b0_01_gpio1_io01>,
|
|
<&iomuxc_gpio_ad_b0_02_gpio1_io02>,
|
|
<&iomuxc_gpio_ad_b0_03_gpio1_io03>,
|
|
<&iomuxc_gpio_ad_b0_04_gpio1_io04>,
|
|
<&iomuxc_gpio_ad_b0_05_gpio1_io05>,
|
|
<&iomuxc_gpio_ad_b0_06_gpio1_io06>,
|
|
<&iomuxc_gpio_ad_b0_07_gpio1_io07>,
|
|
<&iomuxc_gpio_ad_b0_08_gpio1_io08>,
|
|
<&iomuxc_gpio_ad_b0_09_gpio1_io09>,
|
|
<&iomuxc_gpio_ad_b0_10_gpio1_io10>,
|
|
<&iomuxc_gpio_ad_b0_11_gpio1_io11>,
|
|
<&iomuxc_gpio_ad_b0_12_gpio1_io12>,
|
|
<&iomuxc_gpio_ad_b0_13_gpio1_io13>,
|
|
<&iomuxc_gpio_ad_b0_14_gpio1_io14>,
|
|
<&iomuxc_gpio_ad_b0_15_gpio1_io15>,
|
|
<&iomuxc_gpio_ad_b1_10_gpio1_io26>,
|
|
<&iomuxc_gpio_ad_b1_11_gpio1_io27>,
|
|
<&iomuxc_gpio_ad_b1_12_gpio1_io28>,
|
|
<&iomuxc_gpio_ad_b1_13_gpio1_io29>,
|
|
<&iomuxc_gpio_ad_b1_14_gpio1_io30>,
|
|
<&iomuxc_gpio_ad_b1_15_gpio1_io31>;
|
|
gpio-reserved-ranges = <16 10>;
|
|
};
|
|
|
|
&gpio2{
|
|
pinmux = <&iomuxc_gpio_emc_04_gpio2_io04>,
|
|
<&iomuxc_gpio_emc_05_gpio2_io05>,
|
|
<&iomuxc_gpio_emc_06_gpio2_io06>,
|
|
<&iomuxc_gpio_emc_07_gpio2_io07>,
|
|
<&iomuxc_gpio_emc_08_gpio2_io08>,
|
|
<&iomuxc_gpio_emc_09_gpio2_io09>,
|
|
<&iomuxc_gpio_emc_16_gpio2_io16>,
|
|
<&iomuxc_gpio_emc_17_gpio2_io17>,
|
|
<&iomuxc_gpio_emc_18_gpio2_io18>,
|
|
<&iomuxc_gpio_emc_19_gpio2_io19>,
|
|
<&iomuxc_gpio_emc_20_gpio2_io20>,
|
|
<&iomuxc_gpio_emc_21_gpio2_io21>,
|
|
<&iomuxc_gpio_emc_22_gpio2_io22>,
|
|
<&iomuxc_gpio_emc_23_gpio2_io23>,
|
|
<&iomuxc_gpio_emc_24_gpio2_io24>,
|
|
<&iomuxc_gpio_emc_25_gpio2_io25>,
|
|
<&iomuxc_gpio_emc_26_gpio2_io26>,
|
|
<&iomuxc_gpio_emc_27_gpio2_io27>;
|
|
gpio-reserved-ranges = <0 4>, <10 6>;
|
|
};
|
|
|
|
&gpio3{
|
|
pinmux = <&iomuxc_gpio_emc_32_gpio3_io00>,
|
|
<&iomuxc_gpio_emc_33_gpio3_io01>,
|
|
<&iomuxc_gpio_emc_34_gpio3_io02>,
|
|
<&iomuxc_gpio_emc_35_gpio3_io03>,
|
|
<&iomuxc_gpio_sd_b1_00_gpio3_io20>,
|
|
<&iomuxc_gpio_sd_b1_01_gpio3_io21>,
|
|
<&iomuxc_gpio_sd_b1_02_gpio3_io22>,
|
|
<&iomuxc_gpio_sd_b1_03_gpio3_io23>,
|
|
<&iomuxc_gpio_sd_b1_04_gpio3_io24>,
|
|
<&iomuxc_gpio_sd_b1_05_gpio3_io25>,
|
|
<&iomuxc_gpio_sd_b1_06_gpio3_io26>,
|
|
<&iomuxc_gpio_sd_b1_07_gpio3_io27>,
|
|
<&iomuxc_gpio_sd_b1_08_gpio3_io28>,
|
|
<&iomuxc_gpio_sd_b1_09_gpio3_io29>,
|
|
<&iomuxc_gpio_sd_b1_10_gpio3_io30>,
|
|
<&iomuxc_gpio_sd_b1_11_gpio3_io31>;
|
|
gpio-reserved-ranges = <4 16>;
|
|
};
|
|
|
|
&gpio5{
|
|
pinmux = <&iomuxc_snvs_pmic_on_req_gpio5_io01>;
|
|
gpio-reserved-ranges = <0 1>;
|
|
};
|