src/intel: Define HFSTS3 register
Changes: 1. Define HFSTS3 register across SoCs(apl/cnl/icl/tgl). 2. Define cse_is_hfs3_fw_sku_custom() which checks ME's Firmware SKU is Custom or not. TEST=Verified on hatch, soraka, bobba and iclrvp. Change-Id: I4188e58a4a08d87be2d84674e00ed1407fb8bf82 Signed-off-by: Sridhar Siricilla <sridhar.siricilla@intel.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/38798 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Rizwan Qureshi <rizwan.qureshi@intel.com>
This commit is contained in:
committed by
Patrick Georgi
parent
3e89b65c2c
commit
3465d2730b
@@ -40,4 +40,18 @@ union me_hfsts1 {
|
|||||||
} __packed fields;
|
} __packed fields;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* ME Host Firmware Status Register 3 */
|
||||||
|
union me_hfsts3 {
|
||||||
|
u32 data;
|
||||||
|
struct {
|
||||||
|
u32 reserved_0: 4;
|
||||||
|
u32 fw_sku: 3;
|
||||||
|
u32 reserved_7: 2;
|
||||||
|
u32 reserved_9: 2;
|
||||||
|
u32 resered_11: 3;
|
||||||
|
u32 resered_14: 16;
|
||||||
|
u32 reserved_30: 2;
|
||||||
|
} __packed fields;
|
||||||
|
};
|
||||||
|
|
||||||
#endif /* _APOLLOLAKE_ME_H_ */
|
#endif /* _APOLLOLAKE_ME_H_ */
|
||||||
|
@@ -44,6 +44,20 @@ union me_hfsts1 {
|
|||||||
} __packed fields;
|
} __packed fields;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* ME Host Firmware Status Register 3 */
|
||||||
|
union me_hfsts3 {
|
||||||
|
u32 data;
|
||||||
|
struct {
|
||||||
|
u32 reserved_0: 4;
|
||||||
|
u32 fw_sku: 3;
|
||||||
|
u32 reserved_7: 2;
|
||||||
|
u32 reserved_9: 2;
|
||||||
|
u32 resered_11: 3;
|
||||||
|
u32 resered_14: 16;
|
||||||
|
u32 reserved_30: 2;
|
||||||
|
} __packed fields;
|
||||||
|
};
|
||||||
|
|
||||||
void dump_me_status(void *unused);
|
void dump_me_status(void *unused);
|
||||||
|
|
||||||
#endif /* _CANNONLAKE_ME_H_ */
|
#endif /* _CANNONLAKE_ME_H_ */
|
||||||
|
@@ -270,6 +270,13 @@ bool cse_is_hfs1_com_soft_temp_disable(void)
|
|||||||
return cse_check_hfs1_com(ME_HFS1_COM_SOFT_TEMP_DISABLE);
|
return cse_check_hfs1_com(ME_HFS1_COM_SOFT_TEMP_DISABLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool cse_is_hfs3_fw_sku_custom(void)
|
||||||
|
{
|
||||||
|
union me_hfsts3 hfs3;
|
||||||
|
hfs3.data = me_read_config32(PCI_ME_HFSTS3);
|
||||||
|
return hfs3.fields.fw_sku == ME_HFS3_FW_SKU_CUSTOM;
|
||||||
|
}
|
||||||
|
|
||||||
/* Makes the host ready to communicate with CSE */
|
/* Makes the host ready to communicate with CSE */
|
||||||
void cse_set_host_ready(void)
|
void cse_set_host_ready(void)
|
||||||
{
|
{
|
||||||
|
@@ -186,4 +186,10 @@ bool cse_is_hfs1_com_secover_mei_msg(void);
|
|||||||
*/
|
*/
|
||||||
bool cse_is_hfs1_com_soft_temp_disable(void);
|
bool cse_is_hfs1_com_soft_temp_disable(void);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Checks CSE's Firmware SKU is Custom or not.
|
||||||
|
* Returns true if CSE's Firmware SKU is Custom, otherwise false
|
||||||
|
*/
|
||||||
|
bool cse_is_hfs3_fw_sku_custom(void);
|
||||||
|
|
||||||
#endif // SOC_INTEL_COMMON_CSE_H
|
#endif // SOC_INTEL_COMMON_CSE_H
|
||||||
|
@@ -40,4 +40,18 @@ union me_hfsts1 {
|
|||||||
} __packed fields;
|
} __packed fields;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* ME Host Firmware Status Register 3 */
|
||||||
|
union me_hfsts3 {
|
||||||
|
u32 data;
|
||||||
|
struct {
|
||||||
|
u32 reserved_0: 4;
|
||||||
|
u32 fw_sku: 3;
|
||||||
|
u32 reserved_7: 2;
|
||||||
|
u32 reserved_9: 2;
|
||||||
|
u32 resered_11: 3;
|
||||||
|
u32 resered_14: 16;
|
||||||
|
u32 reserved_30: 2;
|
||||||
|
} __packed fields;
|
||||||
|
};
|
||||||
|
|
||||||
#endif /* _ICELAKE_ME_H_ */
|
#endif /* _ICELAKE_ME_H_ */
|
||||||
|
@@ -40,4 +40,17 @@ union me_hfsts1 {
|
|||||||
} __packed fields;
|
} __packed fields;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* ME Host Firmware Status Register 3 */
|
||||||
|
union me_hfsts3 {
|
||||||
|
u32 data;
|
||||||
|
struct {
|
||||||
|
u32 reserved_0: 4;
|
||||||
|
u32 fw_sku: 3;
|
||||||
|
u32 reserved_7: 2;
|
||||||
|
u32 reserved_9: 2;
|
||||||
|
u32 resered_11: 3;
|
||||||
|
u32 resered_14: 16;
|
||||||
|
u32 reserved_30: 2;
|
||||||
|
} __packed fields;
|
||||||
|
};
|
||||||
#endif /* _TIGERLAKE_ME_H_ */
|
#endif /* _TIGERLAKE_ME_H_ */
|
||||||
|
Reference in New Issue
Block a user