Загрузка данных


/* mimxrt1024_evk.overlay */

/ {
    /* Резервируем первые 32 КБ OCRAM для нужд PyOCD */
    reserved-memory {
        #address-cells = <1>;
        #size-cells = <1>;
        ranges;

        pyocd_ram_loader: memory@20200000 {
            reg = <0x20200000 0x8000>; /* Первые 32 КБ */
            no-map; /* Запрещаем линкеру отображать и использовать эту область */
        };
    };

    /* Создаем чистый регион для аудио во второй половине */
    soc {
        ocram_high: memory@20208000 {
            compatible = "zephyr,memory-region", "mmio-sram";
            reg = <0x20208000 0x8000>; /* Вторые 32 КБ */
            zephyr,memory-region = "AUDIO_RAM";
        };
    };
};

/* Честная, полная конфигурация для драйвера FlexRAM — никаких ошибок не будет! */
&flexram {
    flexram,bank-spec = <FLEXRAM_OCRAM>, <FLEXRAM_OCRAM>, /* 2 банка = 64 КБ */
                        <FLEXRAM_DTCM>, <FLEXRAM_DTCM>, <FLEXRAM_DTCM>, <FLEXRAM_DTCM>, <FLEXRAM_DTCM>,
                        <FLEXRAM_ITCM>;
};

&itcm { reg = <0x00000000 0x8000>; };   /* 32 КБ */
&dtcm { reg = <0x20000000 0x28000>; };  /* 160 КБ */

/* Указываем честный ПОЛНЫЙ размер, чтобы удовлетворить BUILD_ASSERT драйвера FlexRAM */
&ocram { reg = <0x20200000 0x10000>; }; /* 64 КБ */