/* * Copyright (c) 2012-2018, 2020 The Linux Foundation. All rights reserved. * * Permission to use, copy, modify, and/or distribute this software for * any purpose with or without fee is hereby granted, provided that the * above copyright notice and this permission notice appear in all * copies. * * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR * PERFORMANCE OF THIS SOFTWARE. */ #ifndef WLAN_PMO_WOW_PULSE_CFG_H__ #define WLAN_PMO_WOW_PULSE_CFG_H__ #ifdef WLAN_FEATURE_WOW_PULSE /* * * gwow_pulse_support - WOW pulse feature configuration * @Min: 0 * @Max: 1 * @Default: 0 * * When set to 1 WOW pulse feature will be enabled. * * Related: gwow_pulse_pin, gwow_pulse_interval_low, gwow_pulse_interval_high * * Supported Feature: WOW pulse * * Usage: External * * */ #define CFG_PMO_WOW_PULSE_ENABLE CFG_INI_BOOL("gwow_pulse_support", \ 0, \ "Enable wow pulse") /* * * gwow_pulse_pin - GPIO pin for WOW pulse * @Min: 0 * @Max: 254 * @Default: 35 * * Which PIN to send the Pulse * * Supported Feature: WOW pulse * * Usage: External * * */ #define CFG_PMO_WOW_PULSE_PIN CFG_INI_UINT("gwow_pulse_pin", \ 0, 254, 35, \ CFG_VALUE_OR_DEFAULT, \ "Pin for wow pulse") /* * * gwow_pulse_interval_low - Pulse interval low * @Min: 160 * @Max: 480 * @Default: 180 * * The interval of low level in the pulse * * Supported Feature: WOW pulse * * Usage: External * * */ #define CFG_PMO_WOW_PULSE_LOW CFG_INI_UINT("gwow_pulse_interval_low", \ 160, 480, 180, \ CFG_VALUE_OR_DEFAULT, \ "Interval of low pulse") /* * * gwow_pulse_interval_high - Pulse interval high * @Min: 20 * @Max: 40 * @Default: 20 * * The interval of high level in the pulse * * Supported Feature: WOW pulse * * Usage: External * * */ #define CFG_PMO_WOW_PULSE_HIGH CFG_INI_UINT("gwow_pulse_interval_high", \ 20, 40, 20, \ CFG_VALUE_OR_DEFAULT, \ "Interval of high pulse") /* * * gwow_pulse_repeat_count - wow pulse repetition count * @Min: 1 * @Max: 0xffffffff * @Default: 1 * * The repeat count of wow pin wave. * Level low to level high is one time, 0xffffffff means endless. * * Supported Feature: WOW pulse * * Usage: External * * */ #define CFG_PMO_WOW_PULSE_REPEAT CFG_INI_UINT("gwow_pulse_repeat_count", \ 1, 0xffffffff, 1, \ CFG_VALUE_OR_DEFAULT, \ "Pulse repetition count") /* * * gwow_pulse_init_state - wow pulse init level * @Min: 0 * @Max: 1 * @Default: 0 * * The init level of wow pin, 1 is high level, 0 is low level. * * Supported Feature: WOW pulse * * Usage: External * * */ #define CFG_PMO_WOW_PULSE_INIT CFG_INI_UINT("gwow_pulse_init_state", \ 0, 1, 1, \ CFG_VALUE_OR_DEFAULT, \ "Pulse init level") #define CFG_WOW_PULSE_ALL \ CFG(CFG_PMO_WOW_PULSE_ENABLE) \ CFG(CFG_PMO_WOW_PULSE_PIN) \ CFG(CFG_PMO_WOW_PULSE_LOW) \ CFG(CFG_PMO_WOW_PULSE_HIGH) \ CFG(CFG_PMO_WOW_PULSE_REPEAT) \ CFG(CFG_PMO_WOW_PULSE_INIT) #else #define CFG_WOW_PULSE_ALL #endif /* WLAN_FEATURE_WOW_PULSE */ #endif /* WLAN_PMO_WOW_PULSE_CFG_H__ */