Linux Kernel
3.7.1
|
Go to the source code of this file.
Functions | |
void | ath5k_hw_set_ledstate (struct ath5k_hw *ah, unsigned int state) |
int | ath5k_hw_set_gpio_input (struct ath5k_hw *ah, u32 gpio) |
int | ath5k_hw_set_gpio_output (struct ath5k_hw *ah, u32 gpio) |
u32 | ath5k_hw_get_gpio (struct ath5k_hw *ah, u32 gpio) |
int | ath5k_hw_set_gpio (struct ath5k_hw *ah, u32 gpio, u32 val) |
void | ath5k_hw_set_gpio_intr (struct ath5k_hw *ah, unsigned int gpio, u32 interrupt_level) |
ath5k_hw_set_gpio_intr() - Initialize the GPIO interrupt (RFKill switch) : The &struct ath5k_hw : The GPIO pin to use : True to generate interrupt on active pin (high)
This function is used to set up the GPIO interrupt for the hw RFKill switch. That switch is connected to a GPIO pin and it's number is stored on EEPROM. It can either open or close the circuit to indicate that we should disable RF/Wireless to save power (we also get that from EEPROM).
DOC: GPIO/LED functions
Here we control the 6 bidirectional GPIO pins provided by the hw. We can set a GPIO pin to be an input or an output pin on GPIO control register and then read or set its status from GPIO data input/output registers.
We also control the two LED pins provided by the hw, LED_0 is our "power" LED and LED_1 is our "network activity" LED but many scenarios are available from hw. Vendors might also provide LEDs connected to the GPIO pins, we handle them through the LED subsystem on led.c ath5k_hw_set_ledstate() - Set led state : The &struct ath5k_hw : One of AR5K_LED_*
Used to set the LED blinking state. This only works for the LED connected to the LED_0, LED_1 pins, not the GPIO based.