1/* 2 * Copyright 2006, Johannes Berg <johannes@sipsolutions.net> 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License version 2 as 6 * published by the Free Software Foundation. 7 */ 8 9#include <linux/list.h> 10#include <linux/spinlock.h> 11#include <linux/leds.h> 12#include "ieee80211_i.h" 13 14#ifdef CONFIG_MAC80211_LEDS 15void ieee80211_led_rx(struct ieee80211_local *local); 16void ieee80211_led_tx(struct ieee80211_local *local); 17void ieee80211_led_assoc(struct ieee80211_local *local, 18 bool associated); 19void ieee80211_led_radio(struct ieee80211_local *local, 20 bool enabled); 21void ieee80211_led_names(struct ieee80211_local *local); 22void ieee80211_led_init(struct ieee80211_local *local); 23void ieee80211_led_exit(struct ieee80211_local *local); 24void ieee80211_mod_tpt_led_trig(struct ieee80211_local *local, 25 unsigned int types_on, unsigned int types_off); 26#else 27static inline void ieee80211_led_rx(struct ieee80211_local *local) 28{ 29} 30static inline void ieee80211_led_tx(struct ieee80211_local *local) 31{ 32} 33static inline void ieee80211_led_assoc(struct ieee80211_local *local, 34 bool associated) 35{ 36} 37static inline void ieee80211_led_radio(struct ieee80211_local *local, 38 bool enabled) 39{ 40} 41static inline void ieee80211_led_names(struct ieee80211_local *local) 42{ 43} 44static inline void ieee80211_led_init(struct ieee80211_local *local) 45{ 46} 47static inline void ieee80211_led_exit(struct ieee80211_local *local) 48{ 49} 50static inline void ieee80211_mod_tpt_led_trig(struct ieee80211_local *local, 51 unsigned int types_on, 52 unsigned int types_off) 53{ 54} 55#endif 56 57static inline void 58ieee80211_tpt_led_trig_tx(struct ieee80211_local *local, __le16 fc, int bytes) 59{ 60#ifdef CONFIG_MAC80211_LEDS 61 if (local->tpt_led_trigger && ieee80211_is_data(fc)) 62 local->tpt_led_trigger->tx_bytes += bytes; 63#endif 64} 65 66static inline void 67ieee80211_tpt_led_trig_rx(struct ieee80211_local *local, __le16 fc, int bytes) 68{ 69#ifdef CONFIG_MAC80211_LEDS 70 if (local->tpt_led_trigger && ieee80211_is_data(fc)) 71 local->tpt_led_trigger->rx_bytes += bytes; 72#endif 73} 74