diff for duplicates of <20150328082853.GA4255@localhost.localdomain> diff --git a/a/1.txt b/N1/1.txt index c23554b..695de1b 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -21,7 +21,8 @@ We also need SOB from Mitsuhiro and Masaru. ... > Index: net-next/drivers/net/ethernet/renesas/ravb.c -> =================================> --- /dev/null +> =================================================================== +> --- /dev/null > +++ net-next/drivers/net/ethernet/renesas/ravb.c > @@ -0,0 +1,3071 @@ > +/* Renesas Ethernet AVB device driver @@ -1416,7 +1417,7 @@ For new drivers, please use timespec64. > + tag = ts_skb->tag; > + list_del(&ts_skb->list); > + kfree(ts_skb); -> + if (tag = tfa_tag) { +> + if (tag == tfa_tag) { > + skb_tstamp_tx(skb, &shhwtstamps); > + break; > + } @@ -1478,7 +1479,7 @@ timespec64 > + dma_sync_single_for_cpu(&ndev->dev, desc->dptr, > + ALIGN(priv->rx_buffer_size, 16), > + DMA_FROM_DEVICE); -> + get_ts &= (q = RAVB_NC) ? +> + get_ts &= (q == RAVB_NC) ? > + RAVB_RXTSTAMP_TYPE_V2_L2_EVENT : > + ~RAVB_RXTSTAMP_TYPE_V2_L2_EVENT; > + if (get_ts) { @@ -1493,7 +1494,7 @@ timespec64 > + } > + skb_put(skb, pkt_len); > + skb->protocol = eth_type_trans(skb, ndev); -> + if (q = RAVB_NC) +> + if (q == RAVB_NC) > + netif_rx(skb); > + else > + netif_receive_skb(skb); @@ -1933,7 +1934,7 @@ Infinite loop in an interrupt handler. Brilliant. > + if (result) > + goto error_exit; > + -> + if (ecmd->duplex = DUPLEX_FULL) +> + if (ecmd->duplex == DUPLEX_FULL) > + priv->duplex = 1; > + else > + priv->duplex = 0; @@ -2152,14 +2153,16 @@ Infinite loop in an interrupt handler. Brilliant. > +{ > + struct ravb_private *priv = netdev_priv(ndev); > + -> + info->so_timestamping > + SOF_TIMESTAMPING_TX_SOFTWARE | +> + info->so_timestamping = +> + SOF_TIMESTAMPING_TX_SOFTWARE | > + SOF_TIMESTAMPING_RX_SOFTWARE | > + SOF_TIMESTAMPING_SOFTWARE | > + SOF_TIMESTAMPING_TX_HARDWARE | > + SOF_TIMESTAMPING_RX_HARDWARE | > + SOF_TIMESTAMPING_RAW_HARDWARE; > + info->tx_types = (1 << HWTSTAMP_TX_OFF) | (1 << HWTSTAMP_TX_ON); -> + info->rx_filters > + (1 << HWTSTAMP_FILTER_NONE) | +> + info->rx_filters = +> + (1 << HWTSTAMP_FILTER_NONE) | > + (1 << HWTSTAMP_FILTER_PTP_V2_L2_EVENT) | > + (1 << HWTSTAMP_FILTER_ALL); > + info->phc_index = ptp_clock_index(priv->ptp.clock); @@ -2314,7 +2317,7 @@ Infinite loop in an interrupt handler. Brilliant. > + } > + > + /* TX timestamp required */ -> + if (q = RAVB_NC) { +> + if (q == RAVB_NC) { > + ts_skb = kmalloc(sizeof(*ts_skb), GFP_ATOMIC); > + if (!ts_skb) { > + netdev_err(ndev, @@ -2332,7 +2335,7 @@ Infinite loop in an interrupt handler. Brilliant. Wrong order WRT skb_tx_timestamp() and SKBTX_IN_PROGRESS. -From skbuff.h: +>From skbuff.h: /* device driver is going to provide hardware time stamp */ SKBTX_IN_PROGRESS = 1 << 2, @@ -2381,10 +2384,14 @@ From skbuff.h: > + nstats->multicast = stats0->multicast + stats1->multicast; > + nstats->rx_errors = stats0->rx_errors + stats1->rx_errors; > + nstats->rx_crc_errors = stats0->rx_crc_errors + stats1->rx_crc_errors; -> + nstats->rx_frame_errors > + stats0->rx_frame_errors + stats1->rx_frame_errors; -> + nstats->rx_length_errors > + stats0->rx_length_errors + stats1->rx_length_errors; -> + nstats->rx_missed_errors > + stats0->rx_missed_errors + stats1->rx_missed_errors; -> + nstats->rx_over_errors > + stats0->rx_over_errors + stats1->rx_over_errors; +> + nstats->rx_frame_errors = +> + stats0->rx_frame_errors + stats1->rx_frame_errors; +> + nstats->rx_length_errors = +> + stats0->rx_length_errors + stats1->rx_length_errors; +> + nstats->rx_missed_errors = +> + stats0->rx_missed_errors + stats1->rx_missed_errors; +> + nstats->rx_over_errors = +> + stats0->rx_over_errors + stats1->rx_over_errors; > + > + return nstats; > +} @@ -2494,7 +2501,7 @@ From skbuff.h: > + if (!phydev) > + return -ENODEV; > + -> + if (cmd = SIOCSHWTSTAMP) +> + if (cmd == SIOCSHWTSTAMP) > + return ravb_hwtstamp_ioctl(ndev, req, cmd); > + > + return phy_mii_ioctl(phydev, req, cmd); @@ -2725,7 +2732,7 @@ The PHC driver API will be changing to timespec64 soon. > + if (req->index) > + return -EINVAL; > + -> + if (priv->ptp.extts[req->index] = on) +> + if (priv->ptp.extts[req->index] == on) > + return 0; > + priv->ptp.extts[req->index] = on; > + @@ -2973,7 +2980,8 @@ Richard > + priv->phy_interface = of_get_phy_mode(np); > + > + priv->no_avb_link = of_property_read_bool(np, "renesas,no-ether-link"); -> + priv->avb_link_active_low > + of_property_read_bool(np, "renesas,ether-link-active-low"); +> + priv->avb_link_active_low = +> + of_property_read_bool(np, "renesas,ether-link-active-low"); > + > + ndev->netdev_ops = &ravb_netdev_ops; > + diff --git a/a/content_digest b/N1/content_digest index fb38cb1..d31ab94 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -1,7 +1,7 @@ "ref\02926619.fiYHPz1IBk@wasted.cogentembedded.com\0" "From\0Richard Cochran <richardcochran@gmail.com>\0" "Subject\0Re: [PATCH resend] Renesas Ethernet AVB driver\0" - "Date\0Sat, 28 Mar 2015 08:28:54 +0000\0" + "Date\0Sat, 28 Mar 2015 09:28:54 +0100\0" "To\0Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>\0" "Cc\0robh+dt@kernel.org" pawel.moll@arm.com @@ -36,7 +36,8 @@ "...\n" "\n" "> Index: net-next/drivers/net/ethernet/renesas/ravb.c\n" - "> =================================> --- /dev/null\n" + "> ===================================================================\n" + "> --- /dev/null\n" "> +++ net-next/drivers/net/ethernet/renesas/ravb.c\n" "> @@ -0,0 +1,3071 @@\n" "> +/* Renesas Ethernet AVB device driver\n" @@ -1431,7 +1432,7 @@ "> +\t\t\ttag = ts_skb->tag;\n" "> +\t\t\tlist_del(&ts_skb->list);\n" "> +\t\t\tkfree(ts_skb);\n" - "> +\t\t\tif (tag = tfa_tag) {\n" + "> +\t\t\tif (tag == tfa_tag) {\n" "> +\t\t\t\tskb_tstamp_tx(skb, &shhwtstamps);\n" "> +\t\t\t\tbreak;\n" "> +\t\t\t}\n" @@ -1493,7 +1494,7 @@ "> +\t\t\tdma_sync_single_for_cpu(&ndev->dev, desc->dptr,\n" "> +\t\t\t\t\t\tALIGN(priv->rx_buffer_size, 16),\n" "> +\t\t\t\t\t\tDMA_FROM_DEVICE);\n" - "> +\t\t\tget_ts &= (q = RAVB_NC) ?\n" + "> +\t\t\tget_ts &= (q == RAVB_NC) ?\n" "> +\t\t\t\t\tRAVB_RXTSTAMP_TYPE_V2_L2_EVENT :\n" "> +\t\t\t\t\t~RAVB_RXTSTAMP_TYPE_V2_L2_EVENT;\n" "> +\t\t\tif (get_ts) {\n" @@ -1508,7 +1509,7 @@ "> +\t\t\t}\n" "> +\t\t\tskb_put(skb, pkt_len);\n" "> +\t\t\tskb->protocol = eth_type_trans(skb, ndev);\n" - "> +\t\t\tif (q = RAVB_NC)\n" + "> +\t\t\tif (q == RAVB_NC)\n" "> +\t\t\t\tnetif_rx(skb);\n" "> +\t\t\telse\n" "> +\t\t\t\tnetif_receive_skb(skb);\n" @@ -1948,7 +1949,7 @@ "> +\tif (result)\n" "> +\t\tgoto error_exit;\n" "> +\n" - "> +\tif (ecmd->duplex = DUPLEX_FULL)\n" + "> +\tif (ecmd->duplex == DUPLEX_FULL)\n" "> +\t\tpriv->duplex = 1;\n" "> +\telse\n" "> +\t\tpriv->duplex = 0;\n" @@ -2167,14 +2168,16 @@ "> +{\n" "> +\tstruct ravb_private *priv = netdev_priv(ndev);\n" "> +\n" - "> +\tinfo->so_timestamping > +\t\tSOF_TIMESTAMPING_TX_SOFTWARE |\n" + "> +\tinfo->so_timestamping =\n" + "> +\t\tSOF_TIMESTAMPING_TX_SOFTWARE |\n" "> +\t\tSOF_TIMESTAMPING_RX_SOFTWARE |\n" "> +\t\tSOF_TIMESTAMPING_SOFTWARE |\n" "> +\t\tSOF_TIMESTAMPING_TX_HARDWARE |\n" "> +\t\tSOF_TIMESTAMPING_RX_HARDWARE |\n" "> +\t\tSOF_TIMESTAMPING_RAW_HARDWARE;\n" "> +\tinfo->tx_types = (1 << HWTSTAMP_TX_OFF) | (1 << HWTSTAMP_TX_ON);\n" - "> +\tinfo->rx_filters > +\t\t(1 << HWTSTAMP_FILTER_NONE) |\n" + "> +\tinfo->rx_filters =\n" + "> +\t\t(1 << HWTSTAMP_FILTER_NONE) |\n" "> +\t\t(1 << HWTSTAMP_FILTER_PTP_V2_L2_EVENT) |\n" "> +\t\t(1 << HWTSTAMP_FILTER_ALL);\n" "> +\tinfo->phc_index = ptp_clock_index(priv->ptp.clock);\n" @@ -2329,7 +2332,7 @@ "> +\t}\n" "> +\n" "> +\t/* TX timestamp required */\n" - "> +\tif (q = RAVB_NC) {\n" + "> +\tif (q == RAVB_NC) {\n" "> +\t\tts_skb = kmalloc(sizeof(*ts_skb), GFP_ATOMIC);\n" "> +\t\tif (!ts_skb) {\n" "> +\t\t\tnetdev_err(ndev,\n" @@ -2347,7 +2350,7 @@ "\n" "Wrong order WRT skb_tx_timestamp() and SKBTX_IN_PROGRESS.\n" "\n" - "From skbuff.h:\n" + ">From skbuff.h:\n" "\n" "\t/* device driver is going to provide hardware time stamp */\n" "\tSKBTX_IN_PROGRESS = 1 << 2,\n" @@ -2396,10 +2399,14 @@ "> +\tnstats->multicast = stats0->multicast + stats1->multicast;\n" "> +\tnstats->rx_errors = stats0->rx_errors + stats1->rx_errors;\n" "> +\tnstats->rx_crc_errors = stats0->rx_crc_errors + stats1->rx_crc_errors;\n" - "> +\tnstats->rx_frame_errors > +\t\tstats0->rx_frame_errors + stats1->rx_frame_errors;\n" - "> +\tnstats->rx_length_errors > +\t\tstats0->rx_length_errors + stats1->rx_length_errors;\n" - "> +\tnstats->rx_missed_errors > +\t\tstats0->rx_missed_errors + stats1->rx_missed_errors;\n" - "> +\tnstats->rx_over_errors > +\t\tstats0->rx_over_errors + stats1->rx_over_errors;\n" + "> +\tnstats->rx_frame_errors =\n" + "> +\t\tstats0->rx_frame_errors + stats1->rx_frame_errors;\n" + "> +\tnstats->rx_length_errors =\n" + "> +\t\tstats0->rx_length_errors + stats1->rx_length_errors;\n" + "> +\tnstats->rx_missed_errors =\n" + "> +\t\tstats0->rx_missed_errors + stats1->rx_missed_errors;\n" + "> +\tnstats->rx_over_errors =\n" + "> +\t\tstats0->rx_over_errors + stats1->rx_over_errors;\n" "> +\n" "> +\treturn nstats;\n" "> +}\n" @@ -2509,7 +2516,7 @@ "> +\tif (!phydev)\n" "> +\t\treturn -ENODEV;\n" "> +\n" - "> +\tif (cmd = SIOCSHWTSTAMP)\n" + "> +\tif (cmd == SIOCSHWTSTAMP)\n" "> +\t\treturn ravb_hwtstamp_ioctl(ndev, req, cmd);\n" "> +\n" "> +\treturn phy_mii_ioctl(phydev, req, cmd);\n" @@ -2740,7 +2747,7 @@ "> +\tif (req->index)\n" "> +\t\treturn -EINVAL;\n" "> +\n" - "> +\tif (priv->ptp.extts[req->index] = on)\n" + "> +\tif (priv->ptp.extts[req->index] == on)\n" "> +\t\treturn 0;\n" "> +\tpriv->ptp.extts[req->index] = on;\n" "> +\n" @@ -2988,7 +2995,8 @@ "> +\tpriv->phy_interface = of_get_phy_mode(np);\n" "> +\n" "> +\tpriv->no_avb_link = of_property_read_bool(np, \"renesas,no-ether-link\");\n" - "> +\tpriv->avb_link_active_low > +\t\tof_property_read_bool(np, \"renesas,ether-link-active-low\");\n" + "> +\tpriv->avb_link_active_low =\n" + "> +\t\tof_property_read_bool(np, \"renesas,ether-link-active-low\");\n" "> +\n" "> +\tndev->netdev_ops = &ravb_netdev_ops;\n" "> +\n" @@ -3172,4 +3180,4 @@ "> the body of a message to majordomo@vger.kernel.org\n" > More majordomo info at http://vger.kernel.org/majordomo-info.html -aa85459b2c9ac26554bf59c4677ffe667ad6d922c459bed6e37f76664f6b832f +fbb69d903aa7fc3bac197e4c4074554e76c61f80581ba3ad184eab108c88c37f
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.