S32G-VNP-EVB3 Unable to load M7 from QSPI

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

S32G-VNP-EVB3 Unable to load M7 from QSPI

136 Views
SARATHI_22
Contributor I
hi,

I am currently working on a project using the S32G-VNP-EVB3 board and I am encountering an issue with booting from QSPI.
I have followed the "S32G-VNP-GLDBOX3 SOFTWARE ENABLEMENT GUIDE" to program a simple LED ON program,
which works successfully when booted from the SD card.
However, when I attempt to boot the same program from QSPI, the board remains idle with no response from the LED.

Here are the details of my setup
- Board: S32G-VNP-EVB3
- Development Environment: S32 Design Studio for S32 Platform Version 3.4 (Build id: 201217, Update 3)
- SDK:PlatformSDK_S32XX_2022_03 version 3.0.2

Steps Taken:
1. Successfully programmed and booted the LED ON program from the SD card, with LED D14 turning on.
2. Modified the IVT configuration for QSPI, using the same bin file.
3. Set the boot mode:
- BOOTMODE0: 1
- BOOTMODE1: 0
- BOOT CFG [0-31]: 0

"C:\NXP\S32DS.3.4\eclipse\mcu_data\processors\S32G399A\PlatformSDK_S32XX_2022_03\quadspi\default_boot_images\mx25_sim133sdr.bin" used for QSPI configuration.

Despite these steps, the board does not boot from QSPI and remains idle. I would greatly appreciate any guidance or suggestions you can provide to help resolve this issue.
I have attached the project below.

IVT details:

 

 

/**
**  Copyright 2021 NXP.
**  This software is owned or controlled by NXP and may only be used strictly in accordance with the applicable license terms.  
**  By expressly accepting such terms or by downloading, installing, activating and/or otherwise using the software  
**  you are agreeing that you have read, and that you agree to comply with and are bound by, such license terms.  
**  If you do not agree to be bound by the applicable license terms, then you may not retain, install, activate or otherwise use the software.  
*/  

#include "stdint.h"

/* IVT binary */
const uint8_t ivt_binary[256] = {

    /* HEADER */
    0xd1, 0x1, 0x0, 0x60, 
    
    /* reserved_1 */
    0xff, 0xff, 0xff, 0xff, 
    /* Self-Test DCD */
    0xff, 0xff, 0xff, 0xff, 
    /* Self-Test DCD (backup) */
    0xff, 0xff, 0xff, 0xff, 
    /* DCD */
    0xff, 0xff, 0xff, 0xff, 
    /* DCD (backup) */
    0xff, 0xff, 0xff, 0xff, 
    /* HSE */
    0xff, 0xff, 0xff, 0xff, 
    /* HSE (backup) */
    0xff, 0xff, 0xff, 0xff, 
    /* Application bootloader */
    0x0, 0x4, 0x0, 0x0, 
    /* Application bootloader (backup) */
    0xff, 0xff, 0xff, 0xff, 
    /* boot_config */
    0x0, 0x0, 0x0, 0x0, 
    /* life_cycle_config */
    0x0, 0x0, 0x0, 0x0, 
    /* reserved_2 */
    0xff, 0xff, 0xff, 0xff, 
    /* hse_fw_config */
    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
    /* reserved_3 */
    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
    /* gmac */
    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
    
};

 

 

linker file

 

 

MEMORY 
{         
    int_itcm                : ORIGIN = 0x00000000, LENGTH = 0x00000000
    int_dtcm                : ORIGIN = 0x20000000, LENGTH = 0x00010000
    int_sram_shareable      : ORIGIN = 0x22C00000, LENGTH = 0x00004000
    int_sram                : ORIGIN = 0x34004000, LENGTH = 0x00400000
    int_sram_stack_c0       : ORIGIN = 0x34404000, LENGTH = 0x00002000
    int_sram_stack_c1       : ORIGIN = 0x34406000, LENGTH = 0x00002000
    int_sram_stack_c2       : ORIGIN = 0x34408000, LENGTH = 0x00002000
    int_sram_stack_c3       : ORIGIN = 0x3440A000, LENGTH = 0x00002000
    int_sram_no_cacheable   : ORIGIN = 0x34500000, LENGTH = 0x00100000
    ram_rsvd2               : ORIGIN = 0x34600000, LENGTH = 0x00DFFFFF

    LLCE_CAN_SHAREDMEMORY   : ORIGIN = 0x43800000 LENGTH = 0x3C800
    LLCE_LIN_SHAREDMEMORY   : ORIGIN = 0x4383C800 LENGTH = 0xa0
    LLCE_BOOT_END           : ORIGIN = 0x4383C8A0 LENGTH = 0x50
    LLCE_MEAS_SHAREDMEMORY  : ORIGIN = 0x4384FFDF LENGTH = 0x20
}​

 

@nxp Thank you for your support.

 

Best regards,

 

Sarathi
0 Kudos
Reply
0 Replies