wireless: Add and use wiphy_<level> logging macros
Subsystems (5)
cover wireless: Add and use wiphy_<level> logging macros
Add some consistent use styles to wiphy messages
Joe Perches (4):
include/net/cfg80211.h: Add wiphy_<level> printk equivalents drivers/net/wireless: Use wiphy_<level> drivers/net/wireless/at76c50x-usb.c: Neaten macros
wireless: Convert wiphy_debug macro to function
drivers/net/wireless/adm8211.c | 53 ++++---- drivers/net/wireless/at76c50x-usb.c | 168 +++++++++++------------ drivers/net/wireless/ath/ar9170/cmd.c | 7 +- drivers/net/wireless/ath/ar9170/led.c | 4 +- drivers/net/wireless/ath/ar9170/main.c | 172 +++++++++++------------- drivers/net/wireless/ath/ar9170/phy.c | 8 +- drivers/net/wireless/ath/ath9k/ahb.c | 7 +- drivers/net/wireless/ath/ath9k/pci.c | 7 +- drivers/net/wireless/iwlwifi/iwl-agn.c | 11 +- drivers/net/wireless/iwlwifi/iwl-core.c | 2 +- drivers/net/wireless/iwlwifi/iwl3945-base.c | 13 +- drivers/net/wireless/mac80211_hwsim.c | 99 +++++++------- drivers/net/wireless/mwl8k.c | 123 +++++++---------- drivers/net/wireless/orinoco/cfg.c | 5 +- drivers/net/wireless/p54/eeprom.c | 76 +++++------ drivers/net/wireless/p54/fwio.c | 53 ++++---- drivers/net/wireless/p54/led.c | 8 +- drivers/net/wireless/p54/p54pci.c | 3 +- drivers/net/wireless/p54/txrx.c | 36 +++--- drivers/net/wireless/rtl818x/rtl8180_dev.c | 17 +-- drivers/net/wireless/rtl818x/rtl8187_dev.c | 11 +- drivers/net/wireless/rtl818x/rtl8187_rtl8225.c | 8 +- include/net/cfg80211.h | 65 +++++++++- net/wireless/core.c | 53 +++++++ 24 files changed, 528 insertions(+), 481 deletions(-)
PATCH 1/4 include/net/cfg80211.h: Add wiphy_<level> printk equivalents
Simplify logging messages for wiphy devices
--- include/net/cfg80211.h | 64 +++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 63 insertions(+), 1 deletions(-)
include/net/cfg80211.h +63 -1
@@ -1416,7 +1416,7 @@ static inline struct device *wiphy_dev(struct wiphy *wiphy)* * @wiphy: The wiphy whose name to return */ -static inline const char *wiphy_name (struct wiphy *wiphy) +static inline const char *wiphy_name (const struct wiphy *wiphy) {return dev_name (&wiphy->dev); }
@@ -2420,4 +2420,66 @@ void cfg80211_cqm_rssi_notify(struct net_device *dev,enum nl80211_cqm_rssi_threshold_event rssi_event, gfp_t gfp); +#ifdef __KERNEL__ + +/* Logging, debugging and troubleshooting/diagnostic helpers. */ + +/* wiphy_printk helpers, similar to dev_printk */ + +#define wiphy_printk(level, wiphy, format, args...) \ + printk(level "%s: " format, wiphy_name(wiphy), ##args) +#define wiphy_emerg(wiphy, format, args...) \ + wiphy_printk(KERN_EMERG, wiphy, format, ##args) +#define wiphy_alert(wiphy, format, args...) \ + wiphy_printk(KERN_ALERT, wiphy, format, ##args) +#define wiphy_crit(wiphy, format, args...) \ + wiphy_printk(KERN_CRIT, wiphy, format, ##args) +#define wiphy_err(wiphy, format, args...) \ + wiphy_printk(KERN_ERR, wiphy, format, ##args) +#define wiphy_warn(wiphy, format, args...) \ + wiphy_printk(KERN_WARNING, wiphy, format, ##args) +#define wiphy_notice(wiphy, format, args...) \ + wiphy_printk(KERN_NOTICE, wiphy, format, ##args) +#define wiphy_info(wiphy, format, args...) \ + wiphy_printk(KERN_INFO, wiphy, format, ##args) +#define wiphy_debug(wiphy, format, args...) \ + wiphy_printk(KERN_DEBUG, wiphy, format, ##args) + +#if defined(DEBUG ) +#define wiphy_dbg(wiphy, format, args...) \ + wiphy_printk(KERN_DEBUG, wiphy, format, ##args) +#elif defined(CONFIG_DYNAMIC_DEBUG ) +#define wiphy_dbg(wiphy, format, args...) \ + dynamic_pr_debug("%s: " format, wiphy_name(dev), ##args) +#else +#define wiphy_dbg(wiphy, format, args...) \ +({ \ + if (0) \ + wiphy_printk(KERN_DEBUG, wiphy, format, ##args); \ + 0; \ +}) +#endif + +#if defined(VERBOSE_DEBUG ) +#define wiphy_vdbg wiphy_dbg +#else + +#define wiphy_vdbg(wiphy, format, args...) \ +({ \ + if (0) \ + wiphy_printk(KERN_DEBUG, wiphy, format, ##args); \ + 0; \ +}) +#endif + +/* +* wiphy_WARN() acts like wiphy_printk(), but with the key difference +* of using a WARN/WARN_ON to get the message out, including the +* file/line information and a backtrace. +*/ +#define wiphy_WARN(wiphy, format, args...) \ + WARN(1, "wiphy: %s\n" format, wiphy_name(wiphy), ##args); + +#endif +#endif /* __NET_CFG80211_H */
Signature · 1 line
1.7.1
PATCH 2/4 drivers/net/wireless: Use wiphy_<level>
In reply to Joe PerchesStandardize the logging macros used.
--- drivers/net/wireless/adm8211.c | 53 ++++---- drivers/net/wireless/at76c50x-usb.c | 139 +++++++++---------- drivers/net/wireless/ath/ar9170/cmd.c | 7 +- drivers/net/wireless/ath/ar9170/led.c | 4 +- drivers/net/wireless/ath/ar9170/main.c | 172 +++++++++++------------- drivers/net/wireless/ath/ar9170/phy.c | 8 +- drivers/net/wireless/ath/ath9k/ahb.c | 7 +- drivers/net/wireless/ath/ath9k/pci.c | 7 +- drivers/net/wireless/iwlwifi/iwl-agn.c | 11 +- drivers/net/wireless/iwlwifi/iwl-core.c | 2 +- drivers/net/wireless/iwlwifi/iwl3945-base.c | 13 +- drivers/net/wireless/mac80211_hwsim.c | 99 +++++++------- drivers/net/wireless/mwl8k.c | 123 +++++++---------- drivers/net/wireless/orinoco/cfg.c | 5 +- drivers/net/wireless/p54/eeprom.c | 76 +++++------ drivers/net/wireless/p54/fwio.c | 53 ++++---- drivers/net/wireless/p54/led.c | 8 +- drivers/net/wireless/p54/p54pci.c | 3 +- drivers/net/wireless/p54/txrx.c | 36 +++--- drivers/net/wireless/rtl818x/rtl8180_dev.c | 17 +-- drivers/net/wireless/rtl818x/rtl8187_dev.c | 11 +- drivers/net/wireless/rtl818x/rtl8187_rtl8225.c | 8 +- 22 files changed, 398 insertions(+), 464 deletions(-)
drivers/net/wireless/adm8211.c +24 -29
@@ -373,8 +373,8 @@ static void adm8211_interrupt_rci(struct ieee80211_hw *dev) pktlen = status &RDES0_STATUS_FL ;if (pktlen >RX_PKT_SIZE ) {if (net_ratelimit ()) -printk (KERN_DEBUG "%s: frame too long (%d)\n" , -wiphy_name (dev->wiphy), pktlen); +wiphy_debug (dev->wiphy,"frame too long (%d)\n" , + pktlen); pktlen =RX_PKT_SIZE ; }
@@ -454,10 +454,10 @@ static void adm8211_interrupt_rci(struct ieee80211_hw *dev)static irqreturn_t adm8211_interrupt (int irq,void *dev_id) { -#define ADM8211_INT (x) \ -do { \ - if (unlikely(stsr & ADM8211_STSR_ ## x)) \ - printk(KERN_DEBUG "%s: " #x "\n", wiphy_name(dev->wiphy)); \ +#define ADM8211_INT (x) \ +do { \ + if (unlikely(stsr & ADM8211_STSR_ ## x)) \ + wiphy_debug(dev->wiphy, "%s\n", #x); \ } while (0)struct ieee80211_hw *dev = dev_id;
@@ -570,9 +570,9 @@ static int adm8211_write_bbp(struct ieee80211_hw *dev, u8 addr, u8 data) }if (timeout ==0 ) { -printk (KERN_DEBUG "%s: adm8211_write_bbp(%d,%d) failed" -" prewrite (reg=0x%08x)\n" , -wiphy_name (dev->wiphy), addr, data, reg); +wiphy_debug (dev->wiphy, +"adm8211_write_bbp(%d,%d) failed prewrite (reg=0x%08x)\n" , + addr, data, reg);return -ETIMEDOUT ; }
@@ -605,9 +605,9 @@ static int adm8211_write_bbp(struct ieee80211_hw *dev, u8 addr, u8 data)if (timeout ==0 ) {ADM8211_CSR_WRITE (BBPCTL ,ADM8211_CSR_READ (BBPCTL ) & ~ADM8211_BBPCTL_WR ); -printk (KERN_DEBUG "%s: adm8211_write_bbp(%d,%d) failed" -" postwrite (reg=0x%08x)\n" , -wiphy_name (dev->wiphy), addr, data, reg); +wiphy_debug (dev->wiphy, +"adm8211_write_bbp(%d,%d) failed postwrite (reg=0x%08x)\n" , + addr, data, reg);return -ETIMEDOUT ; }
@@ -675,8 +675,8 @@ static int adm8211_rf_set_channel(struct ieee80211_hw *dev, unsigned int chan)break ;default : -printk (KERN_DEBUG "%s: unsupported transceiver type %d\n" , -wiphy_name (dev->wiphy), priv->transceiver_type); +wiphy_debug (dev->wiphy,"unsupported transceiver type %d\n" , + priv->transceiver_type);break ; }
@@ -732,8 +732,8 @@ static int adm8211_rf_set_channel(struct ieee80211_hw *dev, unsigned int chan)/* Nothing to do for ADMtek BBP */ }else if (priv->bbp_type !=ADM8211_TYPE_ADMTEK ) -printk (KERN_DEBUG "%s: unsupported BBP type %d\n" , -wiphy_name (dev->wiphy), priv->bbp_type); +wiphy_debug (dev->wiphy,"unsupported bbp type %d\n" , + priv->bbp_type);ADM8211_RESTORE ();
@@ -1027,13 +1027,12 @@ static int adm8211_hw_init_bbp(struct ieee80211_hw *dev)break ;default : -printk (KERN_DEBUG "%s: unsupported transceiver %d\n" , -wiphy_name (dev->wiphy), priv->transceiver_type); +wiphy_debug (dev->wiphy,"unsupported transceiver %d\n" , + priv->transceiver_type);break ; } }else -printk (KERN_DEBUG "%s: unsupported BBP %d\n" , -wiphy_name (dev->wiphy), priv->bbp_type); +wiphy_debug (dev->wiphy,"unsupported bbp %d\n" , priv->bbp_type);ADM8211_CSR_WRITE (SYNRF ,0 );
@@ -1509,15 +1508,13 @@ static int adm8211_start(struct ieee80211_hw *dev)/* Power up MAC and RF chips */ retval =adm8211_hw_reset (dev);if (retval) { -printk (KERN_ERR "%s: hardware reset failed\n" , -wiphy_name (dev->wiphy)); +wiphy_err (dev->wiphy,"hardware reset failed\n" ); goto fail; } retval =adm8211_init_rings (dev);if (retval) { -printk (KERN_ERR "%s: failed to initialize rings\n" , -wiphy_name (dev->wiphy)); +wiphy_err (dev->wiphy,"failed to initialize rings\n" ); goto fail; }
@@ -1528,8 +1525,7 @@ static int adm8211_start(struct ieee80211_hw *dev) retval =request_irq (priv->pdev->irq, adm8211_interrupt,IRQF_SHARED ,"adm8211" , dev);if (retval) { -printk (KERN_ERR "%s: failed to register IRQ handler\n" , -wiphy_name (dev->wiphy)); +wiphy_err (dev->wiphy,"failed to register irq handler\n" ); goto fail; }
@@ -1906,9 +1902,8 @@ static int __devinit adm8211_probe(struct pci_dev *pdev, goto err_free_eeprom; } -printk (KERN_INFO "%s: hwaddr %pM, Rev 0x%02x\n" , -wiphy_name (dev->wiphy), dev->wiphy->perm_addr, - pdev->revision); +wiphy_info (dev->wiphy,"hwaddr %pm, rev 0x%02x\n" , + dev->wiphy->perm_addr, pdev->revision);return 0 ;
drivers/net/wireless/at76c50x-usb.c +67 -72
318 lines not on this page · raw message
drivers/net/wireless/ath/ar9170/cmd.c +3 -4
@@ -48,8 +48,7 @@ int ar9170_write_mem(struct ar9170 *ar, const __le32 *data, size_t len) err = ar->exec_cmd (ar,AR9170_CMD_WMEM , len, (u8 *) data,0 ,NULL );if (err) -printk (KERN_DEBUG "%s: writing memory failed\n" , -wiphy_name (ar->hw->wiphy)); +wiphy_debug (ar->hw->wiphy,"writing memory failed\n" );return err; }
@@ -67,8 +66,8 @@ int ar9170_write_reg(struct ar9170 *ar, const u32 reg, const u32 val) err = ar->exec_cmd (ar,AR9170_CMD_WREG ,sizeof (buf), (u8 *) buf,0 ,NULL );if (err) -printk (KERN_DEBUG "%s: writing reg %#x (val %#x) failed\n" , -wiphy_name (ar->hw->wiphy), reg, val); +wiphy_debug (ar->hw->wiphy,"writing reg %#x (val %#x) failed\n" , + reg, val);return err; }
drivers/net/wireless/ath/ar9170/led.c +2 -2
@@ -133,8 +133,8 @@ static int ar9170_register_led(struct ar9170 *ar, int i, char *name, err =led_classdev_register (wiphy_dev (ar->hw->wiphy), &ar->leds[i].l);if (err) -printk (KERN_ERR "%s: failed to register %s LED (%d).\n" , -wiphy_name (ar->hw->wiphy), ar->leds[i].name, err); +wiphy_err (ar->hw->wiphy,"failed to register %s LED (%d).\n" , + ar->leds[i].name, err);else ar->leds[i].registered = true;
drivers/net/wireless/ath/ar9170/main.c +80 -92
365 lines not on this page · raw message
drivers/net/wireless/ath/ar9170/phy.c +3 -5
@@ -670,8 +670,7 @@ static int ar9170_init_rf_banks_0_7(struct ar9170 *ar, bool band5ghz)ar9170_regwrite_finish (); err =ar9170_regwrite_result ();if (err) -printk (KERN_ERR "%s: rf init failed\n" , -wiphy_name (ar->hw->wiphy)); +wiphy_err (ar->hw->wiphy,"rf init failed\n" );return err; }
@@ -1702,9 +1701,8 @@ int ar9170_set_channel(struct ar9170 *ar, struct ieee80211_channel *channel, 0x200 | ar->phy_heavy_clip);if (err) {if (ar9170_nag_limiter (ar)) -printk (KERN_ERR "%s: failed to set " -"heavy clip\n" , -wiphy_name (ar->hw->wiphy)); +wiphy_err (ar->hw->wiphy, +"failed to set heavy clip\n" ); } }
drivers/net/wireless/ath/ath9k/ahb.c +2 -5
@@ -131,11 +131,8 @@ static int ath_ahb_probe(struct platform_device *pdev) ah = sc->sc_ah;ath9k_hw_name (ah, hw_name,sizeof (hw_name)); -printk (KERN_INFO -"%s: %s mem=0x%lx, irq=%d\n" , -wiphy_name (hw->wiphy), - hw_name, - (unsigned long )mem, irq); +wiphy_info (hw->wiphy,"%s mem=0x%lx, irq=%d\n" , + hw_name, (unsigned long )mem, irq);return 0 ;
drivers/net/wireless/ath/ath9k/pci.c +2 -5
@@ -209,11 +209,8 @@ static int ath_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) }ath9k_hw_name (sc->sc_ah, hw_name,sizeof (hw_name)); -printk (KERN_INFO -"%s: %s mem=0x%lx, irq=%d\n" , -wiphy_name (hw->wiphy), - hw_name, - (unsigned long )mem, pdev->irq); +wiphy_info (hw->wiphy,"%s mem=0x%lx, irq=%d\n" , + hw_name, (unsigned long )mem, pdev->irq);return 0 ;
drivers/net/wireless/iwlwifi/iwl-agn.c +6 -5
@@ -27,6 +27,8 @@* *****************************************************************************/ +#define pr_fmt (fmt) KBUILD_MODNAME ": " fmt +#include <linux/kernel.h> #include <linux/module.h> #include <linux/init.h>
@@ -4389,19 +4391,18 @@ static int __init iwl_init(void) {int ret; - printk(KERN_INFO DRV_NAME ": " DRV_DESCRIPTION ", " DRV_VERSION "\n"); - printk(KERN_INFO DRV_NAME ": " DRV_COPYRIGHT "\n"); +pr_info (DRV_DESCRIPTION ", " DRV_VERSION "\n" ); +pr_info (DRV_COPYRIGHT "\n" ); ret =iwlagn_rate_control_register ();if (ret) { - printk(KERN_ERR DRV_NAME - "Unable to register rate control algorithm: %d\n", ret); +pr_err ("Unable to register rate control algorithm: %d\n" , ret);return ret; } ret =pci_register_driver (&iwl_driver);if (ret) { - printk(KERN_ERR DRV_NAME "Unable to initialize PCI module\n"); +pr_err ("Unable to initialize PCI module\n" ); goto error_register; }
drivers/net/wireless/iwlwifi/iwl-core.c +1 -1
@@ -170,7 +170,7 @@ struct ieee80211_hw *iwl_alloc_all(struct iwl_cfg *cfg,struct ieee80211_hw *hw =ieee80211_alloc_hw (sizeof (struct iwl_priv ), hw_ops);if (hw ==NULL ) { -printk (KERN_ERR "%s: Can not allocate network device\n" , +pr_err ("%s: Can not allocate network device\n" , cfg->name); goto out; }
drivers/net/wireless/iwlwifi/iwl3945-base.c +7 -6
@@ -27,6 +27,8 @@* *****************************************************************************/ +#define pr_fmt (fmt) KBUILD_MODNAME ": " fmt +#include <linux/kernel.h> #include <linux/module.h> #include <linux/init.h>
@@ -3932,7 +3934,7 @@ static int iwl3945_pci_probe(struct pci_dev *pdev, const struct pci_device_id *e* space for this driver's private structure */ hw =iwl_alloc_all (cfg, &iwl3945_hw_ops);if (hw ==NULL ) { - printk(KERN_ERR DRV_NAME "Can not allocate network device\n"); +pr_err ("Can not allocate network device\n" ); err = -ENOMEM ; goto out; }
@@ -4224,19 +4226,18 @@ static int __init iwl3945_init(void) {int ret; - printk(KERN_INFO DRV_NAME ": " DRV_DESCRIPTION ", " DRV_VERSION "\n"); - printk(KERN_INFO DRV_NAME ": " DRV_COPYRIGHT "\n"); +pr_info (DRV_DESCRIPTION ", " DRV_VERSION "\n" ); +pr_info (DRV_COPYRIGHT "\n" ); ret =iwl3945_rate_control_register ();if (ret) { - printk(KERN_ERR DRV_NAME - "Unable to register rate control algorithm: %d\n", ret); +pr_err ("Unable to register rate control algorithm: %d\n" , ret);return ret; } ret =pci_register_driver (&iwl3945_driver);if (ret) { - printk(KERN_ERR DRV_NAME "Unable to initialize PCI module\n"); +pr_err ("Unable to initialize PCI module\n" ); goto error_register; }
drivers/net/wireless/mac80211_hwsim.c +46 -53
206 lines not on this page · raw message
drivers/net/wireless/mwl8k.c +52 -71
276 lines not on this page · raw message
drivers/net/wireless/orinoco/cfg.c +2 -3
@@ -117,9 +117,8 @@ static int orinoco_change_vif(struct wiphy *wiphy, struct net_device *dev,case NL80211_IFTYPE_MONITOR :if (priv->broken_monitor && !force_monitor) { -printk (KERN_WARNING "%s: Monitor mode support is " -"buggy in this firmware, not enabling\n" , -wiphy_name (wiphy)); +wiphy_warn (wiphy, +"Monitor mode support is buggy in this firmware, not enabling\n" ); err = -EINVAL ; }break ;
drivers/net/wireless/p54/eeprom.c +35 -41
148 lines not on this page · raw message
drivers/net/wireless/p54/fwio.c +26 -27
95 lines not on this page · raw message
drivers/net/wireless/p54/led.c +4 -4
@@ -57,8 +57,8 @@ static void p54_update_leds(struct work_struct *work) err =p54_set_leds (priv);if (err &&net_ratelimit ()) -printk (KERN_ERR "%s: failed to update LEDs (%d).\n" , -wiphy_name (priv->hw->wiphy), err); +wiphy_err (priv->hw->wiphy, +"failed to update leds (%d).\n" , err);if (rerun) ieee80211_queue_delayed_work(priv->hw, &priv->led_work,
@@ -102,8 +102,8 @@ static int p54_register_led(struct p54_common *priv, err =led_classdev_register (wiphy_dev (priv->hw->wiphy), &led->led_dev);if (err) -printk (KERN_ERR "%s: Failed to register %s LED.\n" , -wiphy_name (priv->hw->wiphy), name); +wiphy_err (priv->hw->wiphy, +"failed to register %s led.\n" , name);else led->registered =1 ;
drivers/net/wireless/p54/p54pci.c +1 -2
@@ -466,8 +466,7 @@ static int p54p_open(struct ieee80211_hw *dev)P54P_READ (dev_int);if (!wait_for_completion_interruptible_timeout (&priv->boot_comp,HZ )) { -printk (KERN_ERR "%s: Cannot boot firmware!\n" , -wiphy_name (dev->wiphy)); +wiphy_err (dev->wiphy,"cannot boot firmware!\n" );p54p_stop (dev);return -ETIMEDOUT ; }
drivers/net/wireless/p54/txrx.c +19 -17
@@ -38,8 +38,8 @@ static void p54_dump_tx_queue(struct p54_common *priv)u32 largest_hole =0 , free;spin_lock_irqsave (&priv->tx_queue.lock, flags); -printk (KERN_DEBUG "%s: / --- tx queue dump (%d entries) ---\n" , -wiphy_name (priv->hw->wiphy),skb_queue_len (&priv->tx_queue)); +wiphy_debug (priv->hw->wiphy,"/ --- tx queue dump (%d entries) ---\n" , +skb_queue_len (&priv->tx_queue)); prev_addr = priv->rx_start; skb_queue_walk(&priv->tx_queue, skb) {
@@ -48,21 +48,23 @@ static void p54_dump_tx_queue(struct p54_common *priv) hdr = (void *) skb->data; free = range->start_addr - prev_addr; -printk (KERN_DEBUG "%s: | [%02d] => [skb:%p skb_len:0x%04x " -"hdr:{flags:%02x len:%04x req_id:%04x type:%02x} " -"mem:{start:%04x end:%04x, free:%d}]\n" , -wiphy_name (priv->hw->wiphy), i++, skb, skb->len, -le16_to_cpu (hdr->flags),le16_to_cpu (hdr->len), -le32_to_cpu (hdr->req_id),le16_to_cpu (hdr->type), - range->start_addr, range->end_addr, free); +wiphy_debug (priv->hw->wiphy, +"| [%02d] => [skb:%p skb_len:0x%04x " +"hdr:{flags:%02x len:%04x req_id:%04x type:%02x} " +"mem:{start:%04x end:%04x, free:%d}]\n" , + i++, skb, skb->len, +le16_to_cpu (hdr->flags),le16_to_cpu (hdr->len), +le32_to_cpu (hdr->req_id),le16_to_cpu (hdr->type), + range->start_addr, range->end_addr, free); prev_addr = range->end_addr; largest_hole = max(largest_hole, free); } free = priv->rx_end - prev_addr; largest_hole =max (largest_hole, free); -printk (KERN_DEBUG "%s: \\ --- [free: %d], largest free block: %d ---\n" , -wiphy_name (priv->hw->wiphy), free, largest_hole); +wiphy_debug (priv->hw->wiphy, +"\\ --- [free: %d], largest free block: %d ---\n" , + free, largest_hole);spin_unlock_irqrestore (&priv->tx_queue.lock, flags); }#endif /* P54_MM_DEBUG */
@@ -538,8 +540,7 @@ static void p54_rx_trap(struct p54_common *priv, struct sk_buff *skb)case P54_TRAP_BEACON_TX :break ;case P54_TRAP_RADAR : -printk (KERN_INFO "%s: radar (freq:%d MHz)\n" , -wiphy_name (priv->hw->wiphy), freq); +wiphy_info (priv->hw->wiphy,"radar (freq:%d mhz)\n" , freq);break ;case P54_TRAP_NO_BEACON :if (priv->vif)
@@ -558,8 +559,8 @@ static void p54_rx_trap(struct p54_common *priv, struct sk_buff *skb)wiphy_rfkill_set_hw_state (priv->hw->wiphy, false);break ;default : -printk (KERN_INFO "%s: received event:%x freq:%d\n" , -wiphy_name (priv->hw->wiphy), event, freq); +wiphy_info (priv->hw->wiphy,"received event:%x freq:%d\n" , + event, freq);break ; } }
@@ -584,8 +585,9 @@ static int p54_rx_control(struct p54_common *priv, struct sk_buff *skb)p54_rx_eeprom_readback (priv, skb);break ;default : -printk (KERN_DEBUG "%s: not handling 0x%02x type control frame\n" , -wiphy_name (priv->hw->wiphy),le16_to_cpu (hdr->type)); +wiphy_debug (priv->hw->wiphy, +"not handling 0x%02x type control frame\n" , +le16_to_cpu (hdr->type));break ; }return 0 ;
drivers/net/wireless/rtl818x/rtl8180_dev.c +7 -10
@@ -357,7 +357,7 @@ static int rtl8180_init_hw(struct ieee80211_hw *dev)/* check success of reset */ if (rtl818x_ioread8 (priv, &priv->map->CMD) &RTL818X_CMD_RESET ) { -printk (KERN_ERR "%s: reset timeout!\n" ,wiphy_name (dev->wiphy)); +wiphy_err (dev->wiphy,"reset timeout!\n" );return -ETIMEDOUT ; }
@@ -441,8 +441,7 @@ static int rtl8180_init_rx_ring(struct ieee80211_hw *dev) &priv->rx_ring_dma);if (!priv->rx_ring || (unsigned long )priv->rx_ring &0xFF ) { -printk (KERN_ERR "%s: Cannot allocate RX ring\n" , -wiphy_name (dev->wiphy)); +wiphy_err (dev->wiphy,"cannot allocate rx ring\n" );return -ENOMEM ; }
@@ -499,8 +498,8 @@ static int rtl8180_init_tx_ring(struct ieee80211_hw *dev, ring =pci_alloc_consistent (priv->pdev,sizeof (*ring) * entries, &dma);if (!ring || (unsigned long )ring &0xFF ) { -printk (KERN_ERR "%s: Cannot allocate TX ring (prio = %d)\n" , -wiphy_name (dev->wiphy), prio); +wiphy_err (dev->wiphy,"cannot allocate tx ring (prio = %d)\n" , + prio);return -ENOMEM ; }
@@ -565,8 +564,7 @@ static int rtl8180_start(struct ieee80211_hw *dev) ret =request_irq (priv->pdev->irq, rtl8180_interrupt,IRQF_SHARED ,KBUILD_MODNAME , dev);if (ret) { -printk (KERN_ERR "%s: failed to register IRQ handler\n" , -wiphy_name (dev->wiphy)); +wiphy_err (dev->wiphy,"failed to register irq handler\n" ); goto err_free_rings; }
@@ -1103,9 +1101,8 @@ static int __devinit rtl8180_probe(struct pci_dev *pdev, goto err_iounmap; } -printk (KERN_INFO "%s: hwaddr %pM, %s + %s\n" , -wiphy_name (dev->wiphy), mac_addr, - chip_name, priv->rf->name); +wiphy_info (dev->wiphy,"hwaddr %pm, %s + %s\n" , + mac_addr, chip_name, priv->rf->name);return 0 ;
drivers/net/wireless/rtl818x/rtl8187_dev.c +5 -6
@@ -573,7 +573,7 @@ static int rtl8187_cmd_reset(struct ieee80211_hw *dev) }while (--i);if (!i) { -printk (KERN_ERR "%s: Reset timeout!\n" ,wiphy_name (dev->wiphy)); +wiphy_err (dev->wiphy,"reset timeout!\n" );return -ETIMEDOUT ; }
@@ -589,8 +589,7 @@ static int rtl8187_cmd_reset(struct ieee80211_hw *dev) }while (--i);if (!i) { -printk (KERN_ERR "%s: eeprom reset timeout!\n" , -wiphy_name (dev->wiphy)); +wiphy_err (dev->wiphy,"eeprom reset timeout!\n" );return -ETIMEDOUT ; }
@@ -1527,9 +1526,9 @@ static int __devinit rtl8187_probe(struct usb_interface *intf,mutex_init (&priv->conf_mutex);skb_queue_head_init (&priv->b_tx_status.queue); -printk (KERN_INFO "%s: hwaddr %pM, %s V%d + %s, rfkill mask %d\n" , -wiphy_name (dev->wiphy), mac_addr, - chip_name, priv->asic_rev, priv->rf->name, priv->rfkill_mask); +wiphy_info (dev->wiphy,"hwaddr %pm, %s v%d + %s, rfkill mask %d\n" , + mac_addr, chip_name, priv->asic_rev, priv->rf->name, + priv->rfkill_mask);#ifdef CONFIG_RTL8187_LEDS eeprom_93cx6_read (&eeprom,0x3F , ®);
drivers/net/wireless/rtl818x/rtl8187_rtl8225.c +4 -4
@@ -366,8 +366,8 @@ static void rtl8225_rf_init(struct ieee80211_hw *dev)rtl8225_write (dev,0x02 ,0x044d );msleep (100 );if (!(rtl8225_read (dev,6 ) & (1 <<7 ))) -printk (KERN_WARNING "%s: RF Calibration Failed! %x\n" , -wiphy_name (dev->wiphy),rtl8225_read (dev,6 )); +wiphy_warn (dev->wiphy,"rf calibration failed! %x\n" , +rtl8225_read (dev,6 )); }rtl8225_write (dev,0x0 ,0x127 );
@@ -735,8 +735,8 @@ static void rtl8225z2_rf_init(struct ieee80211_hw *dev)rtl8225_write (dev,0x02 ,0x044D );msleep (100 );if (!(rtl8225_read (dev,6 ) & (1 <<7 ))) -printk (KERN_WARNING "%s: RF Calibration Failed! %x\n" , -wiphy_name (dev->wiphy),rtl8225_read (dev,6 )); +wiphy_warn (dev->wiphy,"rf calibration failed! %x\n" , +rtl8225_read (dev,6 )); }msleep (200 );
Signature · 6 lines
1.7.1 -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
PATCH 4/4 wireless: Convert wiphy_debug macro to function
In reply to Joe PerchesSave a few bytes of text
(allyesconfig)
$ size drivers/net/wireless/built-in.o* text data bss dec hex filename 3924568 100548 871056 4896172 4ab5ac drivers/net/wireless/built-in.o.new 3926520 100548 871464 4898532 4abee4 drivers/net/wireless/built-in.o.old
$ size net/wireless/core.o* text data bss dec hex filename 12843 216 3768 16827 41bb net/wireless/core.o.new 12328 216 3656 16200 3f48 net/wireless/core.o
--- include/net/cfg80211.h | 5 ++- net/wireless/core.c | 53 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 56 insertions(+), 2 deletions(-)
include/net/cfg80211.h +3 -2
@@ -2442,8 +2442,9 @@ void cfg80211_cqm_rssi_notify(struct net_device *dev, wiphy_printk(KERN_NOTICE, wiphy, format, ##args) #define wiphy_info(wiphy, format, args...) \ wiphy_printk(KERN_INFO, wiphy, format, ##args) -#define wiphy_debug(wiphy, format, args...) \ - wiphy_printk(KERN_DEBUG, wiphy, format, ##args) + +int wiphy_debug(const struct wiphy *wiphy, const char *format, ...) + __attribute__ ((format (printf, 2, 3))); #if defined(DEBUG) #define wiphy_dbg(wiphy, format, args...) \
net/wireless/core.c +53 -0
56 lines not on this page · raw message
Signature · 1 line
1.7.1
PATCH 3/4 drivers/net/wireless/at76c50x-usb.c: Neaten macros
In reply to Joe Perches--- drivers/net/wireless/at76c50x-usb.c | 27 ++++++++++++--------------- 1 files changed, 12 insertions(+), 15 deletions(-)
drivers/net/wireless/at76c50x-usb.c +13 -16
@@ -89,22 +89,19 @@#define DBG_DEFAULTS 0/* Use our own dbg macro */ -#define at76_dbg(bits, format, arg...) \ - do { \ - if (at76_debug & (bits)) \ - printk(KERN_DEBUG DRIVER_NAME ": " format "\n" , \ - ## arg); \ - } while (0) - -#define at76_dbg_dump(bits, buf, len, format, arg...) \ - do { \ - if (at76_debug & (bits)) { \ - printk(KERN_DEBUG DRIVER_NAME ": " format "\n" , \ - ## arg); \ - print_hex_dump_bytes("", DUMP_PREFIX_OFFSET, \ - buf, len); \ - } \ - } while (0) +#define at76_dbg(bits, format, arg...) \ +do { \ + if (at76_debug & (bits)) \ + printk(KERN_DEBUG DRIVER_NAME ": " format "\n", ##arg); \ +} while (0) + +#define at76_dbg_dump(bits, buf, len, format, arg...) \ +do { \ + if (at76_debug & (bits)) { \ + printk(KERN_DEBUG DRIVER_NAME ": " format "\n", ##arg); \ + print_hex_dump_bytes("", DUMP_PREFIX_OFFSET, buf, len); \ + } \ +} while (0)static uint at76_debug =DBG_DEFAULTS ;
Signature · 1 line
1.7.1
Re: [PATCH net-next 4/4] wireless: Convert wiphy_debug macro to function
In reply to Joe PerchesQuoted 18 lines · Joe Perches
Save a few bytes of text
(allyesconfig)
$ size drivers/net/wireless/built-in.o* text data bss dec hex filename 3924568 100548 871056 4896172 4ab5ac drivers/net/wireless/built-in.o.new 3926520 100548 871464 4898532 4abee4 drivers/net/wireless/built-in.o.old$ size net/wireless/core.o* text data bss dec hex filename 12843 216 3768 16827 41bb net/wireless/core.o.new 12328 216 3656 16200 3f48 net/wireless/core.oSigned-off-by Joe Perches <[email protected]>
net/wireless/core.c static void __exit cfg80211_exit(void) · line 911
Quoted 5 lines
net/wireless/core.c +2
-0@@ -907,3 +907,56 @@ static void __exit cfg80211_exit(void)destroy_workqueue (cfg80211_wq); }module_exit (cfg80211_exit); + +#ifdef __KERNEL__
Do we need this part?
Signature · 2 lines
John W. Linville Someday the world will need a hero, and you [email protected] might be all we have. Be ready.
Re: [PATCH net-next 4/4] wireless: Convert wiphy_debug macro to function
Quoted 10 lines · John W. Linville
net/wireless/core.c static void __exit cfg80211_exit(void) · line 911
Quoted 8 lines
net/wireless/core.c +2
-0@@ -907,3 +907,56 @@ static void __exit cfg80211_exit(void)destroy_workqueue (cfg80211_wq); }module_exit (cfg80211_exit); + +#ifdef __KERNEL__Do we need this part?
No, not really.
I'm not too sure about the need for the addedcfg80211.h #ifdef __KERNEL__ either.
Re: [PATCH net-next 4/4] wireless: Convert wiphy_debug macro to function
Quoted 12 lines · Joe Perches
Quoted 10 lines · John W. Linville
net/wireless/core.c static void __exit cfg80211_exit(void) · line 911
Quoted 8 lines
net/wireless/core.c +2
-0@@ -907,3 +907,56 @@ static void __exit cfg80211_exit(void)destroy_workqueue (cfg80211_wq); }module_exit (cfg80211_exit); + +#ifdef __KERNEL__Do we need this part?
Quoted 4 lines
No, not really.
I'm not too sure about the need for the added
cfg80211.h#ifdef__KERNEL__either.
Good point -- I'll remove both of them.
John
Signature · 2 lines
John W. Linville Someday the world will need a hero, and you [email protected] might be all we have. Be ready.