X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=drivers%2Fstaging%2Frtl8187se%2Fr8180_core.c;h=d4ba717ff0dfa2a8ebec694e95f8713290d4ccf0;hb=b596f52209ae6206dc01cd659008d26a5244d092;hp=5947a6f8e16f971a46ef3d89b363ebae1ed3450e;hpb=a4ae54f90e0a7063799eb90852aa8648ccfbb791;p=mirror_ubuntu-zesty-kernel.git diff --git a/drivers/staging/rtl8187se/r8180_core.c b/drivers/staging/rtl8187se/r8180_core.c index 5947a6f8e16f..d4ba717ff0df 100644 --- a/drivers/staging/rtl8187se/r8180_core.c +++ b/drivers/staging/rtl8187se/r8180_core.c @@ -160,34 +160,34 @@ static struct pci_driver rtl8180_pci_driver = { u8 read_nic_byte(struct net_device *dev, int x) { - return 0xff&readb((u8 *)dev->mem_start + x); + return 0xff&readb((u8 __iomem *)dev->mem_start + x); } u32 read_nic_dword(struct net_device *dev, int x) { - return readl((u8 *)dev->mem_start + x); + return readl((u8 __iomem *)dev->mem_start + x); } u16 read_nic_word(struct net_device *dev, int x) { - return readw((u8 *)dev->mem_start + x); + return readw((u8 __iomem *)dev->mem_start + x); } void write_nic_byte(struct net_device *dev, int x, u8 y) { - writeb(y, (u8 *)dev->mem_start + x); + writeb(y, (u8 __iomem *)dev->mem_start + x); udelay(20); } void write_nic_dword(struct net_device *dev, int x, u32 y) { - writel(y, (u8 *)dev->mem_start + x); + writel(y, (u8 __iomem *)dev->mem_start + x); udelay(20); } void write_nic_word(struct net_device *dev, int x, u16 y) { - writew(y, (u8 *)dev->mem_start + x); + writew(y, (u8 __iomem *)dev->mem_start + x); udelay(20); } @@ -275,18 +275,18 @@ static int proc_get_stats_tx(struct seq_file *m, void *v) return 0; } -void rtl8180_proc_module_init(void) +static void rtl8180_proc_module_init(void) { DMESG("Initializing proc filesystem"); rtl8180_proc = proc_mkdir(RTL8180_MODULE_NAME, init_net.proc_net); } -void rtl8180_proc_module_remove(void) +static void rtl8180_proc_module_remove(void) { remove_proc_entry(RTL8180_MODULE_NAME, init_net.proc_net); } -void rtl8180_proc_remove_one(struct net_device *dev) +static void rtl8180_proc_remove_one(struct net_device *dev) { remove_proc_subtree(dev->name, rtl8180_proc); } @@ -325,7 +325,7 @@ static const struct rtl8180_proc_file rtl8180_proc_files[] = { { "" } }; -void rtl8180_proc_init_one(struct net_device *dev) +static void rtl8180_proc_init_one(struct net_device *dev) { const struct rtl8180_proc_file *f; struct proc_dir_entry *dir; @@ -351,8 +351,8 @@ void rtl8180_proc_init_one(struct net_device *dev) data type+functions in kernel */ -short buffer_add(struct buffer **buffer, u32 *buf, dma_addr_t dma, - struct buffer **bufferhead) +static short buffer_add(struct buffer **buffer, u32 *buf, dma_addr_t dma, + struct buffer **bufferhead) { struct buffer *tmp; @@ -463,7 +463,7 @@ int get_curr_tx_free_desc(struct net_device *dev, int priority) return ret; } -short check_nic_enought_desc(struct net_device *dev, int priority) +static short check_nic_enought_desc(struct net_device *dev, int priority) { struct r8180_priv *priv = ieee80211_priv(dev); struct ieee80211_device *ieee = netdev_priv(dev); @@ -589,7 +589,7 @@ void fix_rx_fifo(struct net_device *dev) set_nic_rxring(dev); } -void rtl8180_irq_disable(struct net_device *dev) +static void rtl8180_irq_disable(struct net_device *dev) { struct r8180_priv *priv = (struct r8180_priv *)ieee80211_priv(dev); @@ -705,8 +705,8 @@ void rtl8180_rtx_disable(struct net_device *dev) dev_kfree_skb_any(priv->rx_skb); } -short alloc_tx_desc_ring(struct net_device *dev, int bufsize, int count, - int addr) +static short alloc_tx_desc_ring(struct net_device *dev, int bufsize, int count, + int addr) { int i; u32 *desc; @@ -830,7 +830,7 @@ short alloc_tx_desc_ring(struct net_device *dev, int bufsize, int count, return 0; } -void free_tx_desc_rings(struct net_device *dev) +static void free_tx_desc_rings(struct net_device *dev) { struct r8180_priv *priv = (struct r8180_priv *)ieee80211_priv(dev); struct pci_dev *pdev = priv->pdev; @@ -866,7 +866,7 @@ void free_tx_desc_rings(struct net_device *dev) buffer_free(dev, &(priv->txbeaconbufs), priv->txbuffsize, 1); } -void free_rx_desc_ring(struct net_device *dev) +static void free_rx_desc_ring(struct net_device *dev) { struct r8180_priv *priv = (struct r8180_priv *)ieee80211_priv(dev); struct pci_dev *pdev = priv->pdev; @@ -878,7 +878,7 @@ void free_rx_desc_ring(struct net_device *dev) buffer_free(dev, &(priv->rxbuffer), priv->rxbuffersize, 0); } -short alloc_rx_desc_ring(struct net_device *dev, u16 bufsize, int count) +static short alloc_rx_desc_ring(struct net_device *dev, u16 bufsize, int count) { int i; u32 *desc; @@ -1092,7 +1092,7 @@ u16 N_DBPSOfRate(u16 DataRate) /* * For Netgear case, they want good-looking signal strength. */ -long NetgearSignalStrengthTranslate(long LastSS, long CurrSS) +static long NetgearSignalStrengthTranslate(long LastSS, long CurrSS) { long RetSS; @@ -1128,7 +1128,7 @@ long NetgearSignalStrengthTranslate(long LastSS, long CurrSS) /* * Translate 0-100 signal strength index into dBm. */ -long TranslateToDbm8185(u8 SignalStrengthIndex) +static long TranslateToDbm8185(u8 SignalStrengthIndex) { long SignalPower; @@ -1145,8 +1145,8 @@ long TranslateToDbm8185(u8 SignalStrengthIndex) * No dramatic adjustion is apply because dynamic mechanism need some degree * of correctness. Ported from 8187B. */ -void PerformUndecoratedSignalSmoothing8185(struct r8180_priv *priv, - bool bCckRate) +static void PerformUndecoratedSignalSmoothing8185(struct r8180_priv *priv, + bool bCckRate) { /* Determin the current packet is CCK rate. */ priv->bCurCCKPkt = bCckRate; @@ -1170,7 +1170,7 @@ void PerformUndecoratedSignalSmoothing8185(struct r8180_priv *priv, /* * This is rough RX isr handling routine */ -void rtl8180_rx(struct net_device *dev) +static void rtl8180_rx(struct net_device *dev) { struct r8180_priv *priv = (struct r8180_priv *)ieee80211_priv(dev); struct sk_buff *tmp_skb; @@ -1496,7 +1496,7 @@ drop: /* this is used when we have not enough mem */ } -void rtl8180_dma_kick(struct net_device *dev, int priority) +static void rtl8180_dma_kick(struct net_device *dev, int priority) { struct r8180_priv *priv = (struct r8180_priv *)ieee80211_priv(dev); @@ -1508,7 +1508,7 @@ void rtl8180_dma_kick(struct net_device *dev, int priority) force_pci_posting(dev); } -void rtl8180_data_hard_stop(struct net_device *dev) +static void rtl8180_data_hard_stop(struct net_device *dev) { struct r8180_priv *priv = (struct r8180_priv *)ieee80211_priv(dev); @@ -1518,7 +1518,7 @@ void rtl8180_data_hard_stop(struct net_device *dev) rtl8180_set_mode(dev, EPROM_CMD_NORMAL); } -void rtl8180_data_hard_resume(struct net_device *dev) +static void rtl8180_data_hard_resume(struct net_device *dev) { struct r8180_priv *priv = (struct r8180_priv *)ieee80211_priv(dev); @@ -1532,8 +1532,9 @@ void rtl8180_data_hard_resume(struct net_device *dev) * This function TX data frames when the ieee80211 stack requires this. * It checks also if we need to stop the ieee tx queue, eventually do it */ -void rtl8180_hard_data_xmit(struct sk_buff *skb, struct net_device *dev, int -rate) { +static void rtl8180_hard_data_xmit(struct sk_buff *skb, struct net_device *dev, + int rate) +{ struct r8180_priv *priv = (struct r8180_priv *)ieee80211_priv(dev); int mode; struct ieee80211_hdr_3addr *h = (struct ieee80211_hdr_3addr *) skb->data; @@ -1584,7 +1585,7 @@ rate) { * might use a different lock than tx_lock (for example mgmt_tx_lock) */ /* these function may loop if invoked with 0 descriptors or 0 len buffer */ -int rtl8180_hard_start_xmit(struct sk_buff *skb, struct net_device *dev) +static int rtl8180_hard_start_xmit(struct sk_buff *skb, struct net_device *dev) { struct r8180_priv *priv = (struct r8180_priv *)ieee80211_priv(dev); unsigned long flags; @@ -1660,7 +1661,7 @@ u16 rtl8180_len2duration(u32 len, short rate, short *ext) return duration; } -void rtl8180_prepare_beacon(struct net_device *dev) +static void rtl8180_prepare_beacon(struct net_device *dev) { struct r8180_priv *priv = (struct r8180_priv *)ieee80211_priv(dev); struct sk_buff *skb; @@ -1704,7 +1705,7 @@ short rtl8180_tx(struct net_device *dev, u8 *txbuf, int len, int priority, u16 RtsDur = 0; u16 ThisFrameTime = 0; u16 TxDescDuration = 0; - u8 ownbit_flag = false; + bool ownbit_flag = false; switch (priority) { case MANAGE_PRIORITY: @@ -1854,7 +1855,7 @@ short rtl8180_tx(struct net_device *dev, u8 *txbuf, int len, int priority, if (remain == len && !descfrag) { ownbit_flag = false; - *tail = *tail | (1<<29) ; /* fist segment of the packet */ + *tail = *tail | (1<<29); /* fist segment of the packet */ *tail = *tail | (len); } else { ownbit_flag = true; @@ -1953,7 +1954,7 @@ short rtl8180_tx(struct net_device *dev, u8 *txbuf, int len, int priority, void rtl8180_irq_rx_tasklet(struct r8180_priv *priv); -void rtl8180_link_change(struct net_device *dev) +static void rtl8180_link_change(struct net_device *dev) { struct r8180_priv *priv = ieee80211_priv(dev); u16 beacon_interval; @@ -1976,7 +1977,7 @@ void rtl8180_link_change(struct net_device *dev) rtl8180_set_chan(dev, priv->chan); } -void rtl8180_rq_tx_ack(struct net_device *dev) +static void rtl8180_rq_tx_ack(struct net_device *dev) { struct r8180_priv *priv = ieee80211_priv(dev); @@ -1985,7 +1986,7 @@ void rtl8180_rq_tx_ack(struct net_device *dev) priv->ack_tx_to_ieee = 1; } -short rtl8180_is_tx_queue_empty(struct net_device *dev) +static short rtl8180_is_tx_queue_empty(struct net_device *dev) { struct r8180_priv *priv = ieee80211_priv(dev); @@ -2023,7 +2024,7 @@ short rtl8180_is_tx_queue_empty(struct net_device *dev) return 1; } -void rtl8180_hw_wakeup(struct net_device *dev) +static void rtl8180_hw_wakeup(struct net_device *dev) { unsigned long flags; struct r8180_priv *priv = ieee80211_priv(dev); @@ -2035,7 +2036,7 @@ void rtl8180_hw_wakeup(struct net_device *dev) spin_unlock_irqrestore(&priv->ps_lock, flags); } -void rtl8180_hw_sleep_down(struct net_device *dev) +static void rtl8180_hw_sleep_down(struct net_device *dev) { unsigned long flags; struct r8180_priv *priv = ieee80211_priv(dev); @@ -2046,7 +2047,7 @@ void rtl8180_hw_sleep_down(struct net_device *dev) spin_unlock_irqrestore(&priv->ps_lock, flags); } -void rtl8180_hw_sleep(struct net_device *dev, u32 th, u32 tl) +static void rtl8180_hw_sleep(struct net_device *dev, u32 th, u32 tl) { struct r8180_priv *priv = ieee80211_priv(dev); u32 rb = jiffies; @@ -2093,7 +2094,7 @@ void rtl8180_hw_sleep(struct net_device *dev, u32 th, u32 tl) spin_unlock_irqrestore(&priv->ps_lock, flags); } -void rtl8180_wmm_param_update(struct work_struct *work) +static void rtl8180_wmm_param_update(struct work_struct *work) { struct ieee80211_device *ieee = container_of(work, struct ieee80211_device, wmm_param_update_wq); struct net_device *dev = ieee->dev; @@ -2195,7 +2196,7 @@ void rtl8180_hw_sleep_wq(struct work_struct *work); void rtl8180_sw_antenna_wq(struct work_struct *work); void rtl8180_watch_dog(struct net_device *dev); -void watch_dog_adaptive(unsigned long data) +static void watch_dog_adaptive(unsigned long data) { struct r8180_priv *priv = ieee80211_priv((struct net_device *)data); @@ -2213,7 +2214,7 @@ void watch_dog_adaptive(unsigned long data) TxPwrTracking87SE((struct net_device *)data); /* Perform DIG immediately. */ - if (CheckDig((struct net_device *)data) == true) + if (CheckDig((struct net_device *)data)) queue_work(priv->ieee80211->wq, (void *)&priv->ieee80211->hw_dig_wq); rtl8180_watch_dog((struct net_device *)data); @@ -2271,7 +2272,7 @@ static void rtl8180_set_channel_map(u8 channel_plan, struct ieee80211_device *ie } case COUNTRY_CODE_GLOBAL_DOMAIN: { - GET_DOT11D_INFO(ieee)->bEnabled = 0; + GET_DOT11D_INFO(ieee)->bEnabled = false; Dot11d_Reset(ieee); ieee->bGlobalDomain = true; break; @@ -2429,7 +2430,7 @@ short rtl8180_init(struct net_device *dev) init_timer(&priv->SwAntennaDiversityTimer); priv->SwAntennaDiversityTimer.data = (unsigned long)dev; priv->SwAntennaDiversityTimer.function = (void *)SwAntennaDiversityTimerCallback; - priv->bDigMechanism = 1; + priv->bDigMechanism = true; priv->InitialGain = 6; priv->bXtalCalibration = false; priv->XtalCal_Xin = 0; @@ -2548,7 +2549,7 @@ short rtl8180_init(struct net_device *dev) (priv->EarlyRxThreshold == 7 ? RCR_ONLYERLPKT : 0); - priv->IntrMask = IMR_TMGDOK | IMR_TBDER | IMR_THPDER | + priv->IntrMask = IMR_TMGDOK | IMR_TBDER | IMR_THPDER | IMR_THPDOK | IMR_TVODER | IMR_TVODOK | IMR_TVIDER | IMR_TVIDOK | @@ -2757,7 +2758,7 @@ void rtl8185_tx_antenna(struct net_device *dev, u8 ant) mdelay(1); } -void rtl8185_write_phy(struct net_device *dev, u8 adr, u32 data) +static void rtl8185_write_phy(struct net_device *dev, u8 adr, u32 data) { u32 phyw; @@ -2969,7 +2970,7 @@ void rtl8180_watch_dog(struct net_device *dev) priv->ieee80211->NumRxBcnInPeriod = 0; } -int _rtl8180_up(struct net_device *dev) +static int _rtl8180_up(struct net_device *dev) { struct r8180_priv *priv = ieee80211_priv(dev); @@ -2991,7 +2992,7 @@ int _rtl8180_up(struct net_device *dev) return 0; } -int rtl8180_open(struct net_device *dev) +static int rtl8180_open(struct net_device *dev) { struct r8180_priv *priv = ieee80211_priv(dev); int ret; @@ -3012,7 +3013,7 @@ int rtl8180_up(struct net_device *dev) return _rtl8180_up(dev); } -int rtl8180_close(struct net_device *dev) +static int rtl8180_close(struct net_device *dev) { struct r8180_priv *priv = ieee80211_priv(dev); int ret; @@ -3065,7 +3066,7 @@ void rtl8180_restart_wq(struct work_struct *work) up(&priv->wx_sem); } -void rtl8180_restart(struct net_device *dev) +static void rtl8180_restart(struct net_device *dev) { struct r8180_priv *priv = ieee80211_priv(dev); @@ -3106,7 +3107,7 @@ static void r8180_set_multicast(struct net_device *dev) priv->promisc = promisc; } -int r8180_set_mac_adr(struct net_device *dev, void *mac) +static int r8180_set_mac_adr(struct net_device *dev, void *mac) { struct r8180_priv *priv = ieee80211_priv(dev); struct sockaddr *addr = mac; @@ -3129,7 +3130,7 @@ int r8180_set_mac_adr(struct net_device *dev, void *mac) } /* based on ipw2200 driver */ -int rtl8180_ioctl(struct net_device *dev, struct ifreq *rq, int cmd) +static int rtl8180_ioctl(struct net_device *dev, struct ifreq *rq, int cmd) { struct r8180_priv *priv = (struct r8180_priv *)ieee80211_priv(dev); struct iwreq *wrq = (struct iwreq *) rq; @@ -3251,7 +3252,7 @@ static int rtl8180_pci_probe(struct pci_dev *pdev, return 0; fail1: if (dev->mem_start != (unsigned long)NULL) { - iounmap((void *)dev->mem_start); + iounmap((void __iomem *)dev->mem_start); release_mem_region(pci_resource_start(pdev, 1), pci_resource_len(pdev, 1)); } @@ -3268,7 +3269,6 @@ fail_free: pci_disable_device(pdev); DMESG("wlan driver load failed\n"); - pci_set_drvdata(pdev, NULL); return ret; } @@ -3298,7 +3298,7 @@ static void rtl8180_pci_remove(struct pci_dev *pdev) free_tx_desc_rings(dev); if (dev->mem_start != (unsigned long)NULL) { - iounmap((void *)dev->mem_start); + iounmap((void __iomem *)dev->mem_start); release_mem_region(pci_resource_start(pdev, 1), pci_resource_len(pdev, 1)); } @@ -3310,16 +3310,6 @@ static void rtl8180_pci_remove(struct pci_dev *pdev) DMESG("wlan driver removed\n"); } -/* fun with the built-in ieee80211 stack... */ -extern int ieee80211_crypto_init(void); -extern void ieee80211_crypto_deinit(void); -extern int ieee80211_crypto_tkip_init(void); -extern void ieee80211_crypto_tkip_exit(void); -extern int ieee80211_crypto_ccmp_init(void); -extern void ieee80211_crypto_ccmp_exit(void); -extern int ieee80211_crypto_wep_init(void); -extern void ieee80211_crypto_wep_exit(void); - static int __init rtl8180_pci_module_init(void) { int ret; @@ -3369,7 +3359,7 @@ static void __exit rtl8180_pci_module_exit(void) DMESG("Exiting"); } -void rtl8180_try_wake_queue(struct net_device *dev, int pri) +static void rtl8180_try_wake_queue(struct net_device *dev, int pri) { unsigned long flags; short enough_desc; @@ -3383,7 +3373,7 @@ void rtl8180_try_wake_queue(struct net_device *dev, int pri) ieee80211_rtl_wake_queue(priv->ieee80211); } -void rtl8180_tx_isr(struct net_device *dev, int pri, short error) +static void rtl8180_tx_isr(struct net_device *dev, int pri, short error) { struct r8180_priv *priv = (struct r8180_priv *)ieee80211_priv(dev); u32 *tail; /* tail virtual addr */