1*d9836fb4SBjoern A. Zeeb /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */ 2*d9836fb4SBjoern A. Zeeb /* 3*d9836fb4SBjoern A. Zeeb * Copyright (C) 2012-2014, 2019-2021 Intel Corporation 4*d9836fb4SBjoern A. Zeeb * Copyright (C) 2013-2015 Intel Mobile Communications GmbH 5*d9836fb4SBjoern A. Zeeb * Copyright (C) 2016-2017 Intel Deutschland GmbH 6*d9836fb4SBjoern A. Zeeb */ 7*d9836fb4SBjoern A. Zeeb #ifndef __iwl_fw_api_system_h__ 8*d9836fb4SBjoern A. Zeeb #define __iwl_fw_api_system_h__ 9*d9836fb4SBjoern A. Zeeb 10*d9836fb4SBjoern A. Zeeb #define SOC_CONFIG_CMD_FLAGS_DISCRETE BIT(0) 11*d9836fb4SBjoern A. Zeeb #define SOC_CONFIG_CMD_FLAGS_LOW_LATENCY BIT(1) 12*d9836fb4SBjoern A. Zeeb 13*d9836fb4SBjoern A. Zeeb #define SOC_FLAGS_LTR_APPLY_DELAY_MASK 0xc 14*d9836fb4SBjoern A. Zeeb #define SOC_FLAGS_LTR_APPLY_DELAY_NONE 0 15*d9836fb4SBjoern A. Zeeb #define SOC_FLAGS_LTR_APPLY_DELAY_200 1 16*d9836fb4SBjoern A. Zeeb #define SOC_FLAGS_LTR_APPLY_DELAY_2500 2 17*d9836fb4SBjoern A. Zeeb #define SOC_FLAGS_LTR_APPLY_DELAY_1820 3 18*d9836fb4SBjoern A. Zeeb 19*d9836fb4SBjoern A. Zeeb /** 20*d9836fb4SBjoern A. Zeeb * struct iwl_soc_configuration_cmd - Set device stabilization latency 21*d9836fb4SBjoern A. Zeeb * 22*d9836fb4SBjoern A. Zeeb * @flags: soc settings flags. In VER_1, we can only set the DISCRETE 23*d9836fb4SBjoern A. Zeeb * flag, because the FW treats the whole value as an integer. In 24*d9836fb4SBjoern A. Zeeb * VER_2, we can set the bits independently. 25*d9836fb4SBjoern A. Zeeb * @latency: time for SOC to ensure stable power & XTAL 26*d9836fb4SBjoern A. Zeeb */ 27*d9836fb4SBjoern A. Zeeb struct iwl_soc_configuration_cmd { 28*d9836fb4SBjoern A. Zeeb __le32 flags; 29*d9836fb4SBjoern A. Zeeb __le32 latency; 30*d9836fb4SBjoern A. Zeeb } __packed; /* 31*d9836fb4SBjoern A. Zeeb * SOC_CONFIGURATION_CMD_S_VER_1 (see description above) 32*d9836fb4SBjoern A. Zeeb * SOC_CONFIGURATION_CMD_S_VER_2 33*d9836fb4SBjoern A. Zeeb */ 34*d9836fb4SBjoern A. Zeeb 35*d9836fb4SBjoern A. Zeeb /** 36*d9836fb4SBjoern A. Zeeb * struct iwl_system_features_control_cmd - system features control command 37*d9836fb4SBjoern A. Zeeb * @features: bitmap of features to disable 38*d9836fb4SBjoern A. Zeeb */ 39*d9836fb4SBjoern A. Zeeb struct iwl_system_features_control_cmd { 40*d9836fb4SBjoern A. Zeeb __le32 features[4]; 41*d9836fb4SBjoern A. Zeeb } __packed; /* SYSTEM_FEATURES_CONTROL_CMD_API_S_VER_1 */ 42*d9836fb4SBjoern A. Zeeb 43*d9836fb4SBjoern A. Zeeb #endif /* __iwl_fw_api_system_h__ */ 44