clk: rockchip: rk3288: fix up the clk register for hclk_vio
[firefly-linux-kernel-4.4.55.git] / drivers / usb / gadget / function / u_ether.c
index dd73dfe5dcabc65ac8c5c4061bf56da4a6c5eae5..e4920e5e1d647ff92c5118545309f1eb99396c36 100644 (file)
@@ -743,7 +743,8 @@ static netdev_tx_t eth_start_xmit(struct sk_buff *skb,
 
        /* throttle highspeed IRQ rate back slightly */
        if (gadget_is_dualspeed(dev->gadget) &&
-                        (dev->gadget->speed == USB_SPEED_HIGH)) {
+                        (dev->gadget->speed == USB_SPEED_HIGH) &&
+                        !list_empty(&dev->tx_reqs)) {
                dev->tx_qlen++;
                if (dev->tx_qlen == (dev->qmult/2)) {
                        req->no_interrupt = 0;
@@ -863,8 +864,6 @@ static int eth_stop(struct net_device *net)
 
 /*-------------------------------------------------------------------------*/
 
-static u8 host_ethaddr[ETH_ALEN];
-
 static int get_ether_addr(const char *str, u8 *dev_addr)
 {
        if (str) {
@@ -895,17 +894,6 @@ static int get_ether_addr_str(u8 dev_addr[ETH_ALEN], char *str, int len)
        return 18;
 }
 
-static int get_host_ether_addr(u8 *str, u8 *dev_addr)
-{
-       memcpy(dev_addr, str, ETH_ALEN);
-       if (is_valid_ether_addr(dev_addr))
-               return 0;
-
-       random_ether_addr(dev_addr);
-       memcpy(str, dev_addr, ETH_ALEN);
-       return 1;
-}
-
 static const struct net_device_ops eth_netdev_ops = {
        .ndo_open               = eth_open,
        .ndo_stop               = eth_stop,
@@ -963,11 +951,9 @@ struct eth_dev *gether_setup_name(struct usb_gadget *g,
        if (get_ether_addr(dev_addr, net->dev_addr))
                dev_warn(&g->dev,
                        "using random %s ethernet address\n", "self");
-
-       if (get_host_ether_addr(host_ethaddr, dev->host_mac))
-               dev_warn(&g->dev, "using random %s ethernet address\n", "host");
-       else
-               dev_warn(&g->dev, "using previous %s ethernet address\n", "host");
+       if (get_ether_addr(host_addr, dev->host_mac))
+               dev_warn(&g->dev,
+                       "using random %s ethernet address\n", "host");
 
        if (ethaddr)
                memcpy(ethaddr, dev->host_mac, ETH_ALEN);