Rizwan Qureshi has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/35228 )
Change subject: src/soc/intel/{common,cnl,skl,icl}: Move global reset req function to common ......................................................................
Patch Set 25:
(2 comments)
https://review.coreboot.org/c/coreboot/+/35228/25/src/soc/intel/common/block... File src/soc/intel/common/block/cse/cse.c:
https://review.coreboot.org/c/coreboot/+/35228/25/src/soc/intel/common/block... PS25, Line 577: The reset type can be GLOBAL_RESET/ : * HOST_RESET_ONLY/CSE_RESET_ONLY.
So, is it supported on all platforms? Or just some?
Yes,to be more precise, it is supported from ME 6.0 onwards and also on TXE 3.0 and 4.0.
https://review.coreboot.org/c/coreboot/+/35228/25/src/soc/intel/common/block... PS25, Line 609: if (rst_type == CSE_RESET_ONLY)
So, I am a bit confused. […]
Aah, ok. There will be a response only when the GLOBAL_RESET request was not accepted, we do not have to wait for a response if a reset was initiated. In case of GLOBAL_RESET and HOST_ONLY_RESET, if the reset is initiated successfully the response doesn't matter anyway. However for CSE_ONLY_RESET in a successful case, the host side will be waiting for a response from CSE, which will never come (since CSE is being reset) and we will timeout eventually as a failure. The handling is different for CSE_ONLY_RESET to avoid the wait. I think we need to study the response in both cases, and also avoid the wait in case of successful CSE_ONLY_RESET. Need to to check if there is something in HFSTS registers which we can use to know that CSE is being reset and don't have to wait.