Intel Agilex® 7 SoC FPGA Boot User Guide

ID 683389
Date 2/01/2024
Public
Document Table of Contents

A.7. BOOT_SCRATCH_COLD8

Boot Scratch Register Intel Agilex® 7 F/I-Series Intel Agilex® 7 M-Series
Boot_Scratch_Cold8
Bit[31] Can be used as scratch memory. DBE Triggered Flag
  • Values
    • 0 – DDR DBE not triggered
    • 1 – DDR DBE triggered
  • Usage
    • U-Boot
      • drivers/ddr/altera/sdram_agilex7.c: ddr_ecc_dbe_status(): Evaluates if ECC DDR DBE was triggered or not.
Bit[30] Can be used as scratch memory. DDR Init in progress, set and checked by SPL
  • Values
    • 0 – DDR initialization not performed, or completed successfully
    • 1 – DDR initialization in progress
  • Usage
    • U-Boot
      • drivers/ddr/altera/sdram_agilex7.c: is_ddr_init_hang(): checks if the bit is set
      • drivers/ddr/altera/sdram_agilex7.c: ddr_init_inprogress(): sets or clears the bit
Bit[29] Can be used as scratch memory. OCRAM_DBE Error Flag
  • Values
    • 0 – Error did not happen
    • 1 – Error happened
  • Usage
    • U-Boot
      • drivers/ddr/altera/sdram_agilex7.c hps_ocram_dbe_status(): Return the status of OCRAM DBE errors.
      • drivers/ddr/altera/sdram_agilex7.c: ddr_init_inprogress(): sets or clears the bit
Bits[28:27] Can be used as scratch memory. Number of IO96B instance assigned to HPS
  • Usage
    • U-Boot
      • drivers/ddr/altera/sdram_agilex7.c: update_io96b_assigned_to_hps(): Write the IO96B instance assigned to the HPS during DDR handoff data population.
Bit[19]
Flag to indicate a CPU power domain is about to be turned on (value = 1)
  • Usage
    • ATF:
      • plat/intel/soc/common/socfpga_psci.c: socfpga_pwr_domain_on() - Handler called when a power domain is about to be turned on.
Bit[18]
ACF DDR Data rate set by SDM
  • Values
    • 0 – Half-rate
    • 1 – Quarter-rate
  • Usage
    • U-Boot
      • drivers/ddr/altera/sdram_agilex.c: sdram_mmr_init_full(): Use the value set by SDM is scratch register to configure this in DDRIOCTRL register.
Can be used as scratch memory.
Bits[17, 16, 1]
ECC_DBE_DDR1 Error Flag, Bit[16] – ECC_DBE_DDR0 Error Flag, Bit[1] – ECC_DBE_OCRAM Error Flag
  • Values
    • 0 – Error did not happen
    • 1 – Error happened
  • Usage
    • ATF
      • plat/intel/soc/common/sip/socfpga_sip_ecc.c: cold_reset_for_ecc_dbe(): checks if any of the flags are set, and if so requests HPS cold reset through the mailbox.
    • Linux
      • Set through the ATF SMC handler