Files
gk-sdk/source/gmp/usr/pm/pm_ddr.h
T

64 lines
1.3 KiB
C

#ifndef H_PM_DDR_H
#define H_PM_DDR_H
#define HASH_SIZE_PER_BYTE 32
#define DDR_CALIB_SIZE 832
#define DDR_PARAM_UPDATE_CYCLE (7 * 24 * 60 * 60)
struct lpds_param {
xmedia_u8 lpds_hash[HASH_SIZE_PER_BYTE];
xmedia_u8 ddr_hash[HASH_SIZE_PER_BYTE];
xmedia_u32 data_start;
xmedia_u32 data_size;
xmedia_u32 hash_flag;
xmedia_u32 str_flag;
xmedia_u32 resume_addr;
xmedia_u32 resume_addr_backup;
xmedia_u8 reserve0[24];
xmedia_u8 scrambling_key[16];
xmedia_u8 ddr_calib[DDR_CALIB_SIZE];
xmedia_u32 ddr_size;
xmedia_u32 hpm_state;
xmedia_u32 power_state;
xmedia_u8 reserve1[20];
xmedia_u32 ddr_suspend_crc;
xmedia_u32 ddr_resume_crc;
};
struct ddr_calib_data {
xmedia_u32 checksum;
xmedia_u32 gate_dqs0_result;
xmedia_u32 gate_dqs1_result;
xmedia_u32 rx_dqs0_result;
xmedia_u32 rx_dqsb0_result;
xmedia_u32 rx_dqs1_result;
xmedia_u32 rx_dqsb1_result;
xmedia_u32 rx_dm0_result;
xmedia_u32 rx_dm1_result;
xmedia_u32 rx_dq_result[16];
xmedia_u32 tx_dqs0_result;
xmedia_u32 tx_dqsb0_result;
xmedia_u32 tx_dqs1_result;
xmedia_u32 tx_dqsb1_result;
xmedia_u32 tx_dm0_result;
xmedia_u32 tx_dm1_result;
xmedia_u32 tx_dq_result[16];
xmedia_u32 time_sec;
};
xmedia_bool is_ram_off_str(void);
xmedia_s32 ddr_param_check_and_save(void);
xmedia_s32 xmedia_pm_get_ddr_param(struct lpds_param *p_lpds_param);
#endif