diff options
author | Ben Kao <ben.kao@intel.com> | 2021-07-04 21:24:36 +0800 |
---|---|---|
committer | Werner Zeh <werner.zeh@siemens.com> | 2021-07-26 05:00:51 +0000 |
commit | 6eb52534513beda06e7787ee550c02198a447d5c (patch) | |
tree | 7c3eed5fc4fec5f853354de506152e1ec074fecc /src/soc/intel/jasperlake/chip.h | |
parent | 3b28ab098ec1e7f1ffadb335f110b584a82e83f5 (diff) |
soc/intel/jasperlake: Set xHCI LFPS period sampling off time
Provide an option to set xHCI LFPS period sampling off time
(SS_U3_LFPS_PRDC_SAMPLING_OFFTIME_CTRL in JSL EDS revision 2.0).
If the option is set in the devicetree, the bits[7:4] in
xHCI MMIO BAR + offset 0x80A4 (PMCTRL_REG) will be updated.
The host will sample LFPS for U3 wake-up detection when suspended, but
it doesn't sample LFPS at all time due to power management, the
default xHCI LFPS period sampling off time is 9ms. If the xHCI LFPS
period sampling off time is not 0ms, the host may miss the
device-initiated U3 wake-up and causes some kind of race condition for
U3 wake-up between the host and the device.
BUG=b:187801363, b:191426542
TEST=build coreboot with xhci_lfps_sampling_offtime_ms and flash
the image to the device. Run following command to check the bits[7:4]:
iotools mmio_read32 "XHCI MMIO BAR + 0x80A4"
Signed-off-by: Ben Kao <ben.kao@intel.com>
Change-Id: I0e13b7f51771dc185a105c5a84a8e377ee4d7d73
Reviewed-on: https://review.coreboot.org/c/coreboot/+/56063
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Diffstat (limited to 'src/soc/intel/jasperlake/chip.h')
-rw-r--r-- | src/soc/intel/jasperlake/chip.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/soc/intel/jasperlake/chip.h b/src/soc/intel/jasperlake/chip.h index 36e9a1350b..4a9d9a0cf1 100644 --- a/src/soc/intel/jasperlake/chip.h +++ b/src/soc/intel/jasperlake/chip.h @@ -85,6 +85,11 @@ struct soc_intel_jasperlake_config { /* Wake Enable Bitmap for USB3 ports */ uint16_t usb3_wake_enable_bitmap; + /* Set the LFPS periodic sampling off time for USB3 Ports. + Default value of PMCTRL_REG bits[7:4] is 9 which means periodic + sampling off interval is 9ms, the range is from 0 to 15. */ + uint8_t xhci_lfps_sampling_offtime_ms; + /* SATA related */ uint8_t SataMode; uint8_t SataSalpSupport; |