<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://blog.gmane.org/gmane.linux.hardware.blackfin.kernel.devel">
    <title>gmane.linux.hardware.blackfin.kernel.devel</title>
    <link>http://blog.gmane.org/gmane.linux.hardware.blackfin.kernel.devel</link>
    <description/>
    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>1</syn:updateFrequency>
    <syn:updateBase>1901-01-01T00:00+00:00</syn:updateBase>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6987"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6940"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6903"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6888"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6877"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6847"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6830"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6821"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6817"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6816"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6721"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6708"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6704"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6703"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6702"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6699"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6697"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6696"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6681"/>
        <rdf:li rdf:resource="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6634"/>
      </rdf:Seq>
    </items>
    <image rdf:resource="http://gmane.org/img/gmane-25t.png"/>
    <textinput rdf:resource=""/>
  </channel>
  <image rdf:about="http://gmane.org/img/gmane-25t.png">
    <title>Gmane</title>
    <url>http://gmane.org/img/gmane-25t.png</url>
    <link>http://gmane.org</link>
  </image>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6987">
    <title>Freeze or reboot issue by receiving bytes on/dev/ttyBF0</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6987</link>
    <description>&lt;pre&gt;Hello everybody, I hope I post on the right mailling list :

I have a BF537 board where I need to use /dev/ttyBF0 to connect a GPRS 
modem (/dev/ttyBF1 is already used for a GPS).
To have /dev/ttyBF0 available under uClinux, I deactivate the console 
this way in uboot with the "console" kernel option : console=null
But I experience freeze or reboot and I understood when it happens : 
it's when one or more byte arrives on the serial port and the 
/dev/ttyBF0 port is not opened by any process.

Anybody experienced this issue too ? Is there a workaround or do I need 
to analyse the uClinux-dist/linux-2.6.x/drivers/serial/bfin_5xx.c to try 
to unsertand the problem ?

Best regards,
Cyril HAENEL

&lt;/pre&gt;</description>
    <dc:creator>Cyril HAENEL</dc:creator>
    <dc:date>2013-04-02T08:50:06</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6940">
    <title>[PATCH net-next] drivers:net: Removeunnecessary OOM messages after netdev_alloc_skb</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6940</link>
    <description>&lt;pre&gt;Emitting netdev_alloc_skb and netdev_alloc_skb_ip_align OOM
messages is unnecessary as there is already a dump_stack
after allocation failures.

Other trivial changes around these removals:

Convert a few comparisons of pointer to 0 to !pointer.
Change flow to remove unnecessary label.
Remove now unused variable.
Hoist assignment from if.

Signed-off-by: Joe Perches &amp;lt;joe-6d6DIl74uiNBDgjK7y7TUQ&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 drivers/net/caif/caif_shmcore.c                    |  5 +----
 drivers/net/ethernet/adi/bfin_mac.c                |  6 ++----
 drivers/net/ethernet/amd/7990.c                    |  2 --
 drivers/net/ethernet/amd/a2065.c                   |  1 -
 drivers/net/ethernet/amd/am79c961a.c               |  1 -
 drivers/net/ethernet/amd/ariadne.c                 |  1 -
 drivers/net/ethernet/amd/atarilance.c              |  2 --
 drivers/net/ethernet/amd/au1000_eth.c              |  1 -
 drivers/net/ethernet/amd/declance.c                |  2 --
 drivers/net/ethernet/amd/pcnet32.c                 |  1 -
 drivers/net/ethernet/amd/sun3lance.c               |  3 ---
 drivers/net/ethernet/amd/sunlance.c                |  4 ----
 drivers/net/ethernet/atheros/atl1e/atl1e_main.c    |  6 ++----
 drivers/net/ethernet/atheros/atlx/atl2.c           |  3 ---
 drivers/net/ethernet/broadcom/bgmac.c              |  4 +---
 drivers/net/ethernet/broadcom/sb1250-mac.c         |  5 +----
 drivers/net/ethernet/cadence/at91_ether.c          |  1 -
 drivers/net/ethernet/cirrus/cs89x0.c               |  6 ------
 drivers/net/ethernet/dlink/dl2k.c                  |  7 ++-----
 drivers/net/ethernet/freescale/fec.c               |  2 --
 .../net/ethernet/freescale/fs_enet/fs_enet-main.c  | 17 +++--------------
 drivers/net/ethernet/fujitsu/fmvj18x_cs.c          |  2 --
 drivers/net/ethernet/i825xx/82596.c                |  8 +++-----
 drivers/net/ethernet/i825xx/lib82596.c             |  6 ++----
 drivers/net/ethernet/ibm/ehea/ehea_main.c          |  9 ++-------
 drivers/net/ethernet/mellanox/mlx4/en_selftest.c   |  5 ++---
 drivers/net/ethernet/natsemi/sonic.c               |  1 -
 drivers/net/ethernet/netx-eth.c                    |  2 --
 drivers/net/ethernet/nuvoton/w90p910_ether.c       |  1 -
 drivers/net/ethernet/nvidia/forcedeth.c            |  1 -
 drivers/net/ethernet/qlogic/qla3xxx.c              |  1 -
 drivers/net/ethernet/qlogic/qlge/qlge_main.c       |  6 ------
 drivers/net/ethernet/rdc/r6040.c                   |  1 -
 drivers/net/ethernet/realtek/8139too.c             |  2 --
 drivers/net/ethernet/realtek/atp.c                 |  2 --
 drivers/net/ethernet/seeq/ether3.c                 | 22 +++++-----------------
 drivers/net/ethernet/seeq/sgiseeq.c                |  2 --
 drivers/net/ethernet/sis/sis900.c                  |  7 ++-----
 drivers/net/ethernet/smsc/smc9194.c                |  2 --
 drivers/net/ethernet/smsc/smc91x.c                 |  2 --
 drivers/net/ethernet/smsc/smsc9420.c               |  4 +---
 drivers/net/ethernet/sun/sunqe.c                   |  5 +----
 drivers/net/ethernet/tehuti/tehuti.c               |  5 ++---
 drivers/net/ethernet/ti/tlan.c                     |  4 +---
 drivers/net/ethernet/xilinx/ll_temac_main.c        | 10 +++-------
 drivers/net/ethernet/xilinx/xilinx_axienet_main.c  |  9 +++------
 drivers/net/ethernet/xircom/xirc2ps_cs.c           |  1 -
 47 files changed, 39 insertions(+), 161 deletions(-)

diff --git a/drivers/net/caif/caif_shmcore.c b/drivers/net/caif/caif_shmcore.c
index bce8bac..cca2afc 100644
--- a/drivers/net/caif/caif_shmcore.c
+++ b/drivers/net/caif/caif_shmcore.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -338,11 +338,8 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void shm_rx_work_func(struct work_struct *rx_work)
 /* Get a suitable CAIF packet and copy in data. */
 skb = netdev_alloc_skb(pshm_drv-&amp;gt;pshm_dev-&amp;gt;pshm_netdev,
 frm_pck_len + 1);
-
-if (skb == NULL) {
-pr_info("OOM: Try next frame in descriptor\n");
+if (skb == NULL)
 break;
-}
 
 p = skb_put(skb, frm_pck_len);
 memcpy(p, pbuf-&amp;gt;desc_vptr + frm_pck_ofs, frm_pck_len);
diff --git a/drivers/net/ethernet/adi/bfin_mac.c b/drivers/net/ethernet/adi/bfin_mac.c
index a175d0b..ee70577 100644
--- a/drivers/net/ethernet/adi/bfin_mac.c
+++ b/drivers/net/ethernet/adi/bfin_mac.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -188,10 +188,9 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int desc_list_init(struct net_device *dev)
 
 /* allocate a new skb for next time receive */
 new_skb = netdev_alloc_skb(dev, PKT_BUF_SZ + NET_IP_ALIGN);
-if (!new_skb) {
-pr_notice("init: low on mem - packet dropped\n");
+if (!new_skb)
 goto init_error;
-}
+
 skb_reserve(new_skb, NET_IP_ALIGN);
 /* Invidate the data cache of skb-&amp;gt;data range when it is write back
  * cache. It will prevent overwritting the new data from DMA
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1236,7 +1235,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void bfin_mac_rx(struct net_device *dev)
 
 new_skb = netdev_alloc_skb(dev, PKT_BUF_SZ + NET_IP_ALIGN);
 if (!new_skb) {
-netdev_notice(dev, "rx: low on mem - packet dropped\n");
 dev-&amp;gt;stats.rx_dropped++;
 goto out;
 }
diff --git a/drivers/net/ethernet/amd/7990.c b/drivers/net/ethernet/amd/7990.c
index 6e722dc..65926a9 100644
--- a/drivers/net/ethernet/amd/7990.c
+++ b/drivers/net/ethernet/amd/7990.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -318,8 +318,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int lance_rx (struct net_device *dev)
 struct sk_buff *skb = netdev_alloc_skb(dev, len + 2);
 
                         if (!skb) {
-                                printk ("%s: Memory squeeze, deferring packet.\n",
-                                        dev-&amp;gt;name);
                                 dev-&amp;gt;stats.rx_dropped++;
                                 rd-&amp;gt;mblength = 0;
                                 rd-&amp;gt;rmd1_bits = LE_R1_OWN;
diff --git a/drivers/net/ethernet/amd/a2065.c b/drivers/net/ethernet/amd/a2065.c
index 3789aff..0866e76 100644
--- a/drivers/net/ethernet/amd/a2065.c
+++ b/drivers/net/ethernet/amd/a2065.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -293,7 +293,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int lance_rx(struct net_device *dev)
 struct sk_buff *skb = netdev_alloc_skb(dev, len + 2);
 
 if (!skb) {
-netdev_warn(dev, "Memory squeeze, deferring packet\n");
 dev-&amp;gt;stats.rx_dropped++;
 rd-&amp;gt;mblength = 0;
 rd-&amp;gt;rmd1_bits = LE_R1_OWN;
diff --git a/drivers/net/ethernet/amd/am79c961a.c b/drivers/net/ethernet/amd/am79c961a.c
index 60e2b70..9793767 100644
--- a/drivers/net/ethernet/amd/am79c961a.c
+++ b/drivers/net/ethernet/amd/am79c961a.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -528,7 +528,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; am79c961_rx(struct net_device *dev, struct dev_priv *priv)
 dev-&amp;gt;stats.rx_packets++;
 } else {
 am_writeword (dev, hdraddr + 2, RMD_OWN);
-printk (KERN_WARNING "%s: memory squeeze, dropping packet.\n", dev-&amp;gt;name);
 dev-&amp;gt;stats.rx_dropped++;
 break;
 }
diff --git a/drivers/net/ethernet/amd/ariadne.c b/drivers/net/ethernet/amd/ariadne.c
index 98f4522..c178eb4 100644
--- a/drivers/net/ethernet/amd/ariadne.c
+++ b/drivers/net/ethernet/amd/ariadne.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -193,7 +193,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int ariadne_rx(struct net_device *dev)
 
 skb = netdev_alloc_skb(dev, pkt_len + 2);
 if (skb == NULL) {
-netdev_warn(dev, "Memory squeeze, deferring packet\n");
 for (i = 0; i &amp;lt; RX_RING_SIZE; i++)
 if (lowb(priv-&amp;gt;rx_ring[(entry + i) % RX_RING_SIZE]-&amp;gt;RMD1) &amp;amp; RF_OWN)
 break;
diff --git a/drivers/net/ethernet/amd/atarilance.c b/drivers/net/ethernet/amd/atarilance.c
index 84219df..ab9bedb 100644
--- a/drivers/net/ethernet/amd/atarilance.c
+++ b/drivers/net/ethernet/amd/atarilance.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -996,8 +996,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int lance_rx( struct net_device *dev )
 else {
 skb = netdev_alloc_skb(dev, pkt_len + 2);
 if (skb == NULL) {
-DPRINTK( 1, ( "%s: Memory squeeze, deferring packet.\n",
-  dev-&amp;gt;name ));
 for( i = 0; i &amp;lt; RX_RING_SIZE; i++ )
 if (MEM-&amp;gt;rx_head[(entry+i) &amp;amp; RX_RING_MOD_MASK].flag &amp;amp;
 RMD1_OWN_CHIP)
diff --git a/drivers/net/ethernet/amd/au1000_eth.c b/drivers/net/ethernet/amd/au1000_eth.c
index de774d4..688aede 100644
--- a/drivers/net/ethernet/amd/au1000_eth.c
+++ b/drivers/net/ethernet/amd/au1000_eth.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -727,7 +727,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int au1000_rx(struct net_device *dev)
 frmlen -= 4; /* Remove FCS */
 skb = netdev_alloc_skb(dev, frmlen + 2);
 if (skb == NULL) {
-netdev_err(dev, "Memory squeeze, dropping packet.\n");
 dev-&amp;gt;stats.rx_dropped++;
 continue;
 }
diff --git a/drivers/net/ethernet/amd/declance.c b/drivers/net/ethernet/amd/declance.c
index baca0bd..3d86ffe 100644
--- a/drivers/net/ethernet/amd/declance.c
+++ b/drivers/net/ethernet/amd/declance.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -607,8 +607,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int lance_rx(struct net_device *dev)
 skb = netdev_alloc_skb(dev, len + 2);
 
 if (skb == 0) {
-printk("%s: Memory squeeze, deferring packet.\n",
-       dev-&amp;gt;name);
 dev-&amp;gt;stats.rx_dropped++;
 *rds_ptr(rd, mblength, lp-&amp;gt;type) = 0;
 *rds_ptr(rd, rmd1, lp-&amp;gt;type) =
diff --git a/drivers/net/ethernet/amd/pcnet32.c b/drivers/net/ethernet/amd/pcnet32.c
index 797f847..ed21307 100644
--- a/drivers/net/ethernet/amd/pcnet32.c
+++ b/drivers/net/ethernet/amd/pcnet32.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1166,7 +1166,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void pcnet32_rx_entry(struct net_device *dev,
 skb = netdev_alloc_skb(dev, pkt_len + NET_IP_ALIGN);
 
 if (skb == NULL) {
-netif_err(lp, drv, dev, "Memory squeeze, dropping packet\n");
 dev-&amp;gt;stats.rx_dropped++;
 return;
 }
diff --git a/drivers/net/ethernet/amd/sun3lance.c b/drivers/net/ethernet/amd/sun3lance.c
index 74b3891..de412d3 100644
--- a/drivers/net/ethernet/amd/sun3lance.c
+++ b/drivers/net/ethernet/amd/sun3lance.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -812,9 +812,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int lance_rx( struct net_device *dev )
 else {
 skb = netdev_alloc_skb(dev, pkt_len + 2);
 if (skb == NULL) {
-DPRINTK( 1, ( "%s: Memory squeeze, deferring packet.\n",
-      dev-&amp;gt;name ));
-
 dev-&amp;gt;stats.rx_dropped++;
 head-&amp;gt;msg_length = 0;
 head-&amp;gt;flag |= RMD1_OWN_CHIP;
diff --git a/drivers/net/ethernet/amd/sunlance.c b/drivers/net/ethernet/amd/sunlance.c
index 6a40290..70d5430 100644
--- a/drivers/net/ethernet/amd/sunlance.c
+++ b/drivers/net/ethernet/amd/sunlance.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -536,8 +536,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void lance_rx_dvma(struct net_device *dev)
 skb = netdev_alloc_skb(dev, len + 2);
 
 if (skb == NULL) {
-printk(KERN_INFO "%s: Memory squeeze, deferring packet.\n",
-       dev-&amp;gt;name);
 dev-&amp;gt;stats.rx_dropped++;
 rd-&amp;gt;mblength = 0;
 rd-&amp;gt;rmd1_bits = LE_R1_OWN;
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -708,8 +706,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void lance_rx_pio(struct net_device *dev)
 skb = netdev_alloc_skb(dev, len + 2);
 
 if (skb == NULL) {
-printk(KERN_INFO "%s: Memory squeeze, deferring packet.\n",
-       dev-&amp;gt;name);
 dev-&amp;gt;stats.rx_dropped++;
 sbus_writew(0, &amp;amp;rd-&amp;gt;mblength);
 sbus_writeb(LE_R1_OWN, &amp;amp;rd-&amp;gt;rmd1_bits);
diff --git a/drivers/net/ethernet/atheros/atl1e/atl1e_main.c b/drivers/net/ethernet/atheros/atl1e/atl1e_main.c
index 92f4734..e1f1b2a 100644
--- a/drivers/net/ethernet/atheros/atl1e/atl1e_main.c
+++ b/drivers/net/ethernet/atheros/atl1e/atl1e_main.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1420,11 +1420,9 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void atl1e_clean_rx_irq(struct atl1e_adapter *adapter, u8 que,
 packet_size = ((prrs-&amp;gt;word1 &amp;gt;&amp;gt; RRS_PKT_SIZE_SHIFT) &amp;amp;
 RRS_PKT_SIZE_MASK) - 4; /* CRC */
 skb = netdev_alloc_skb_ip_align(netdev, packet_size);
-if (skb == NULL) {
-netdev_warn(netdev,
-    "Memory squeeze, deferring packet\n");
+if (skb == NULL)
 goto skip_pkt;
-}
+
 memcpy(skb-&amp;gt;data, (u8 *)(prrs + 1), packet_size);
 skb_put(skb, packet_size);
 skb-&amp;gt;protocol = eth_type_trans(skb, netdev);
diff --git a/drivers/net/ethernet/atheros/atlx/atl2.c b/drivers/net/ethernet/atheros/atlx/atl2.c
index 1278b47..a046b6f 100644
--- a/drivers/net/ethernet/atheros/atlx/atl2.c
+++ b/drivers/net/ethernet/atheros/atlx/atl2.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -437,9 +437,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void atl2_intr_rx(struct atl2_adapter *adapter)
 /* alloc new buffer */
 skb = netdev_alloc_skb_ip_align(netdev, rx_size);
 if (NULL == skb) {
-printk(KERN_WARNING
-"%s: Mem squeeze, deferring packet.\n",
-netdev-&amp;gt;name);
 /*
  * Check that some rx space is free. If not,
  * free one and mark stats-&amp;gt;rx_dropped++.
diff --git a/drivers/net/ethernet/broadcom/bgmac.c b/drivers/net/ethernet/broadcom/bgmac.c
index d6cb376..eec0af4 100644
--- a/drivers/net/ethernet/broadcom/bgmac.c
+++ b/drivers/net/ethernet/broadcom/bgmac.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -245,10 +245,8 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int bgmac_dma_rx_skb_for_slot(struct bgmac *bgmac,
 
 /* Alloc skb */
 slot-&amp;gt;skb = netdev_alloc_skb(bgmac-&amp;gt;net_dev, BGMAC_RX_BUF_SIZE);
-if (!slot-&amp;gt;skb) {
-bgmac_err(bgmac, "Allocation of skb failed!\n");
+if (!slot-&amp;gt;skb)
 return -ENOMEM;
-}
 
 /* Poison - if everything goes fine, hardware will overwrite it */
 rx = (struct bgmac_rx_header *)slot-&amp;gt;skb-&amp;gt;data;
diff --git a/drivers/net/ethernet/broadcom/sb1250-mac.c b/drivers/net/ethernet/broadcom/sb1250-mac.c
index e9b35da..e80bfb6 100644
--- a/drivers/net/ethernet/broadcom/sb1250-mac.c
+++ b/drivers/net/ethernet/broadcom/sb1250-mac.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -831,11 +831,8 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int sbdma_add_rcvbuffer(struct sbmac_softc *sc, struct sbmacdma *d,
 sb_new = netdev_alloc_skb(dev, ENET_PACKET_SIZE +
        SMP_CACHE_BYTES * 2 +
        NET_IP_ALIGN);
-if (sb_new == NULL) {
-pr_info("%s: sk_buff allocation failed\n",
-       d-&amp;gt;sbdma_eth-&amp;gt;sbm_dev-&amp;gt;name);
+if (sb_new == NULL)
 return -ENOBUFS;
-}
 
 sbdma_align_skb(sb_new, SMP_CACHE_BYTES, NET_IP_ALIGN);
 }
diff --git a/drivers/net/ethernet/cadence/at91_ether.c b/drivers/net/ethernet/cadence/at91_ether.c
index 1a57e16..5bd7786 100644
--- a/drivers/net/ethernet/cadence/at91_ether.c
+++ b/drivers/net/ethernet/cadence/at91_ether.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -209,7 +209,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void at91ether_rx(struct net_device *dev)
 netif_rx(skb);
 } else {
 lp-&amp;gt;stats.rx_dropped++;
-netdev_notice(dev, "Memory squeeze, dropping packet.\n");
 }
 
 if (lp-&amp;gt;rx_ring[lp-&amp;gt;rx_tail].ctrl &amp;amp; MACB_BIT(RX_MHASH_MATCH))
diff --git a/drivers/net/ethernet/cirrus/cs89x0.c b/drivers/net/ethernet/cirrus/cs89x0.c
index 73c1c8c..aaa0499 100644
--- a/drivers/net/ethernet/cirrus/cs89x0.c
+++ b/drivers/net/ethernet/cirrus/cs89x0.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -478,9 +478,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; dma_rx(struct net_device *dev)
 /* Malloc up new buffer. */
 skb = netdev_alloc_skb(dev, length + 2);
 if (skb == NULL) {
-/* I don't think we want to do this to a stressed system */
-cs89_dbg(0, err, "%s: Memory squeeze, dropping packet\n",
- dev-&amp;gt;name);
 dev-&amp;gt;stats.rx_dropped++;
 
 /* AKPM: advance bp to the next frame */
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -731,9 +728,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; net_rx(struct net_device *dev)
 /* Malloc up new buffer. */
 skb = netdev_alloc_skb(dev, length + 2);
 if (skb == NULL) {
-#if 0/* Again, this seems a cruel thing to do */
-pr_warn("%s: Memory squeeze, dropping packet\n", dev-&amp;gt;name);
-#endif
 dev-&amp;gt;stats.rx_dropped++;
 return;
 }
diff --git a/drivers/net/ethernet/dlink/dl2k.c b/drivers/net/ethernet/dlink/dl2k.c
index 110d26f..afa8e3a 100644
--- a/drivers/net/ethernet/dlink/dl2k.c
+++ b/drivers/net/ethernet/dlink/dl2k.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -580,12 +580,9 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; alloc_list (struct net_device *dev)
 
 skb = netdev_alloc_skb_ip_align(dev, np-&amp;gt;rx_buf_sz);
 np-&amp;gt;rx_skbuff[i] = skb;
-if (skb == NULL) {
-printk (KERN_ERR
-"%s: alloc_list: allocate Rx buffer error! ",
-dev-&amp;gt;name);
+if (skb == NULL)
 break;
-}
+
 /* Rubicon now supports 40 bits of addressing space. */
 np-&amp;gt;rx_ring[i].fraginfo =
     cpu_to_le64 ( pci_map_single (
diff --git a/drivers/net/ethernet/freescale/fec.c b/drivers/net/ethernet/freescale/fec.c
index 069a155..f97c60f 100644
--- a/drivers/net/ethernet/freescale/fec.c
+++ b/drivers/net/ethernet/freescale/fec.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -743,8 +743,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; fec_enet_rx(struct net_device *ndev, int budget)
 skb = netdev_alloc_skb(ndev, pkt_len - 4 + NET_IP_ALIGN);
 
 if (unlikely(!skb)) {
-printk("%s: Memory squeeze, dropping packet.\n",
-ndev-&amp;gt;name);
 ndev-&amp;gt;stats.rx_dropped++;
 } else {
 skb_reserve(skb, NET_IP_ALIGN);
diff --git a/drivers/net/ethernet/freescale/fs_enet/fs_enet-main.c b/drivers/net/ethernet/freescale/fs_enet/fs_enet-main.c
index 46df288..edc1200 100644
--- a/drivers/net/ethernet/freescale/fs_enet/fs_enet-main.c
+++ b/drivers/net/ethernet/freescale/fs_enet/fs_enet-main.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -177,8 +177,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int fs_enet_rx_napi(struct napi_struct *napi, int budget)
 received++;
 netif_receive_skb(skb);
 } else {
-dev_warn(fep-&amp;gt;dev,
- "Memory squeeze, dropping packet.\n");
 fep-&amp;gt;stats.rx_dropped++;
 skbn = skb;
 }
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -309,8 +307,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int fs_enet_rx_non_napi(struct net_device *dev)
 received++;
 netif_rx(skb);
 } else {
-dev_warn(fep-&amp;gt;dev,
- "Memory squeeze, dropping packet.\n");
 fep-&amp;gt;stats.rx_dropped++;
 skbn = skb;
 }
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -505,11 +501,9 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; void fs_init_bds(struct net_device *dev)
  */
 for (i = 0, bdp = fep-&amp;gt;rx_bd_base; i &amp;lt; fep-&amp;gt;rx_ring; i++, bdp++) {
 skb = netdev_alloc_skb(dev, ENET_RX_FRSIZE);
-if (skb == NULL) {
-dev_warn(fep-&amp;gt;dev,
- "Memory squeeze, unable to allocate skb\n");
+if (skb == NULL)
 break;
-}
+
 skb_align(skb, ENET_RX_ALIGN);
 fep-&amp;gt;rx_skbuff[i] = skb;
 CBDW_BUFADDR(bdp,
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -593,13 +587,8 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static struct sk_buff *tx_skb_align_workaround(struct net_device *dev,
 
 /* Alloc new skb */
 new_skb = netdev_alloc_skb(dev, skb-&amp;gt;len + 4);
-if (!new_skb) {
-if (net_ratelimit()) {
-dev_warn(fep-&amp;gt;dev,
- "Memory squeeze, dropping tx packet.\n");
-}
+if (!new_skb)
 return NULL;
-}
 
 /* Make sure new skb is properly aligned */
 skb_align(new_skb, 4);
diff --git a/drivers/net/ethernet/fujitsu/fmvj18x_cs.c b/drivers/net/ethernet/fujitsu/fmvj18x_cs.c
index 2418faf..8412570 100644
--- a/drivers/net/ethernet/fujitsu/fmvj18x_cs.c
+++ b/drivers/net/ethernet/fujitsu/fmvj18x_cs.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1003,8 +1003,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void fjn_rx(struct net_device *dev)
     }
     skb = netdev_alloc_skb(dev, pkt_len + 2);
     if (skb == NULL) {
-netdev_notice(dev, "Memory squeeze, dropping packet (len %d)\n",
-      pkt_len);
 outb(F_SKP_PKT, ioaddr + RX_SKIP);
 dev-&amp;gt;stats.rx_dropped++;
 break;
diff --git a/drivers/net/ethernet/i825xx/82596.c b/drivers/net/ethernet/i825xx/82596.c
index 1c54e22..e388161 100644
--- a/drivers/net/ethernet/i825xx/82596.c
+++ b/drivers/net/ethernet/i825xx/82596.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -798,16 +798,14 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static inline int i596_rx(struct net_device *dev)
 #ifdef __mc68000__
 cache_clear(virt_to_phys(newskb-&amp;gt;data), PKT_BUF_SZ);
 #endif
-}
-else
+} else {
 skb = netdev_alloc_skb(dev, pkt_len + 2);
+}
 memory_squeeze:
 if (skb == NULL) {
 /* XXX tulip.c can defer packets here!! */
-printk(KERN_WARNING "%s: i596_rx Memory squeeze, dropping packet.\n", dev-&amp;gt;name);
 dev-&amp;gt;stats.rx_dropped++;
-}
-else {
+} else {
 if (!rx_in_place) {
 /* 16 byte align the data fields */
 skb_reserve(skb, 2);
diff --git a/drivers/net/ethernet/i825xx/lib82596.c b/drivers/net/ethernet/i825xx/lib82596.c
index f045ea4..d653bac 100644
--- a/drivers/net/ethernet/i825xx/lib82596.c
+++ b/drivers/net/ethernet/i825xx/lib82596.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -715,14 +715,12 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static inline int i596_rx(struct net_device *dev)
 rbd-&amp;gt;v_data = newskb-&amp;gt;data;
 rbd-&amp;gt;b_data = SWAP32(dma_addr);
 DMA_WBACK_INV(dev, rbd, sizeof(struct i596_rbd));
-} else
+} else {
 skb = netdev_alloc_skb_ip_align(dev, pkt_len);
+}
 memory_squeeze:
 if (skb == NULL) {
 /* XXX tulip.c can defer packets here!! */
-printk(KERN_ERR
-       "%s: i596_rx Memory squeeze, dropping packet.\n",
-       dev-&amp;gt;name);
 dev-&amp;gt;stats.rx_dropped++;
 } else {
 if (!rx_in_place) {
diff --git a/drivers/net/ethernet/ibm/ehea/ehea_main.c b/drivers/net/ethernet/ibm/ehea/ehea_main.c
index 328f47c..0296334 100644
--- a/drivers/net/ethernet/ibm/ehea/ehea_main.c
+++ b/drivers/net/ethernet/ibm/ehea/ehea_main.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -402,7 +402,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void ehea_refill_rq1(struct ehea_port_res *pr, int index, int nr_of_wqes)
 skb_arr_rq1[index] = netdev_alloc_skb(dev,
       EHEA_L_PKT_SIZE);
 if (!skb_arr_rq1[index]) {
-netdev_info(dev, "Unable to allocate enough skb in the array\n");
 pr-&amp;gt;rq1_skba.os_skbs = fill_wqes - i;
 break;
 }
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -432,10 +431,8 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void ehea_init_fill_rq1(struct ehea_port_res *pr, int nr_rq1a)
 
 for (i = 0; i &amp;lt; nr_rq1a; i++) {
 skb_arr_rq1[i] = netdev_alloc_skb(dev, EHEA_L_PKT_SIZE);
-if (!skb_arr_rq1[i]) {
-netdev_info(dev, "Not enough memory to allocate skb array\n");
+if (!skb_arr_rq1[i])
 break;
-}
 }
 /* Ring doorbell */
 ehea_update_rq1a(pr-&amp;gt;qp, i - 1);
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -695,10 +692,8 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int ehea_proc_rwqes(struct net_device *dev,
 
 skb = netdev_alloc_skb(dev,
        EHEA_L_PKT_SIZE);
-if (!skb) {
-netdev_err(dev, "Not enough memory to allocate skb\n");
+if (!skb)
 break;
-}
 }
 skb_copy_to_linear_data(skb, ((char *)cqe) + 64,
  cqe-&amp;gt;num_bytes_transfered - 4);
diff --git a/drivers/net/ethernet/mellanox/mlx4/en_selftest.c b/drivers/net/ethernet/mellanox/mlx4/en_selftest.c
index 3488c6d..2448f0d 100644
--- a/drivers/net/ethernet/mellanox/mlx4/en_selftest.c
+++ b/drivers/net/ethernet/mellanox/mlx4/en_selftest.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -58,10 +58,9 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int mlx4_en_test_loopback_xmit(struct mlx4_en_priv *priv)
 
 /* build the pkt before xmit */
 skb = netdev_alloc_skb(priv-&amp;gt;dev, MLX4_LOOPBACK_TEST_PAYLOAD + ETH_HLEN + NET_IP_ALIGN);
-if (!skb) {
-en_err(priv, "-LOOPBACK_TEST_XMIT- failed to create skb for xmit\n");
+if (!skb)
 return -ENOMEM;
-}
+
 skb_reserve(skb, NET_IP_ALIGN);
 
 ethh = (struct ethhdr *)skb_put(skb, sizeof(struct ethhdr));
diff --git a/drivers/net/ethernet/natsemi/sonic.c b/drivers/net/ethernet/natsemi/sonic.c
index 46795e4..1bd419d 100644
--- a/drivers/net/ethernet/natsemi/sonic.c
+++ b/drivers/net/ethernet/natsemi/sonic.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -424,7 +424,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void sonic_rx(struct net_device *dev)
 /* Malloc up new buffer. */
 new_skb = netdev_alloc_skb(dev, SONIC_RBSIZE + 2);
 if (new_skb == NULL) {
-printk(KERN_ERR "%s: Memory squeeze, dropping packet.\n", dev-&amp;gt;name);
 lp-&amp;gt;stats.rx_dropped++;
 break;
 }
diff --git a/drivers/net/ethernet/netx-eth.c b/drivers/net/ethernet/netx-eth.c
index 63e7af4..cb9e638 100644
--- a/drivers/net/ethernet/netx-eth.c
+++ b/drivers/net/ethernet/netx-eth.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -152,8 +152,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void netx_eth_receive(struct net_device *ndev)
 
 skb = netdev_alloc_skb(ndev, len);
 if (unlikely(skb == NULL)) {
-printk(KERN_NOTICE "%s: Low memory, packet dropped.\n",
-ndev-&amp;gt;name);
 ndev-&amp;gt;stats.rx_dropped++;
 return;
 }
diff --git a/drivers/net/ethernet/nuvoton/w90p910_ether.c b/drivers/net/ethernet/nuvoton/w90p910_ether.c
index 162da89..539d202 100644
--- a/drivers/net/ethernet/nuvoton/w90p910_ether.c
+++ b/drivers/net/ethernet/nuvoton/w90p910_ether.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -737,7 +737,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void netdev_rx(struct net_device *dev)
 data = ether-&amp;gt;rdesc-&amp;gt;recv_buf[ether-&amp;gt;cur_rx];
 skb = netdev_alloc_skb(dev, length + 2);
 if (!skb) {
-dev_err(&amp;amp;pdev-&amp;gt;dev, "get skb buffer error\n");
 ether-&amp;gt;stats.rx_dropped++;
 return;
 }
diff --git a/drivers/net/ethernet/nvidia/forcedeth.c b/drivers/net/ethernet/nvidia/forcedeth.c
index 0b8de12..b62262c 100644
--- a/drivers/net/ethernet/nvidia/forcedeth.c
+++ b/drivers/net/ethernet/nvidia/forcedeth.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -5025,7 +5025,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int nv_loopback_test(struct net_device *dev)
 pkt_len = ETH_DATA_LEN;
 tx_skb = netdev_alloc_skb(dev, pkt_len);
 if (!tx_skb) {
-netdev_err(dev, "netdev_alloc_skb() failed during loopback test\n");
 ret = 0;
 goto out;
 }
diff --git a/drivers/net/ethernet/qlogic/qla3xxx.c b/drivers/net/ethernet/qlogic/qla3xxx.c
index 8fd38cb6..91a8fcd 100644
--- a/drivers/net/ethernet/qlogic/qla3xxx.c
+++ b/drivers/net/ethernet/qlogic/qla3xxx.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -312,7 +312,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void ql_release_to_lrg_buf_free_list(struct ql3_adapter *qdev,
 lrg_buf_cb-&amp;gt;skb = netdev_alloc_skb(qdev-&amp;gt;ndev,
    qdev-&amp;gt;lrg_buffer_len);
 if (unlikely(!lrg_buf_cb-&amp;gt;skb)) {
-netdev_err(qdev-&amp;gt;ndev, "failed netdev_alloc_skb()\n");
 qdev-&amp;gt;lrg_buf_skb_check++;
 } else {
 /*
diff --git a/drivers/net/ethernet/qlogic/qlge/qlge_main.c b/drivers/net/ethernet/qlogic/qlge/qlge_main.c
index b13ab54..1dd778a 100644
--- a/drivers/net/ethernet/qlogic/qlge/qlge_main.c
+++ b/drivers/net/ethernet/qlogic/qlge/qlge_main.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1211,8 +1211,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void ql_update_sbq(struct ql_adapter *qdev, struct rx_ring *rx_ring)
     netdev_alloc_skb(qdev-&amp;gt;ndev,
      SMALL_BUFFER_SIZE);
 if (sbq_desc-&amp;gt;p.skb == NULL) {
-netif_err(qdev, probe, qdev-&amp;gt;ndev,
-  "Couldn't get an skb.\n");
 rx_ring-&amp;gt;sbq_clean_idx = clean_idx;
 return;
 }
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1519,8 +1517,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void ql_process_mac_rx_page(struct ql_adapter *qdev,
 
 skb = netdev_alloc_skb(ndev, length);
 if (!skb) {
-netif_err(qdev, drv, qdev-&amp;gt;ndev,
-  "Couldn't get an skb, need to unwind!.\n");
 rx_ring-&amp;gt;rx_dropped++;
 put_page(lbq_desc-&amp;gt;p.pg_chunk.page);
 return;
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1605,8 +1601,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void ql_process_mac_rx_skb(struct ql_adapter *qdev,
 /* Allocate new_skb and copy */
 new_skb = netdev_alloc_skb(qdev-&amp;gt;ndev, length + NET_IP_ALIGN);
 if (new_skb == NULL) {
-netif_err(qdev, probe, qdev-&amp;gt;ndev,
-  "No skb available, drop the packet.\n");
 rx_ring-&amp;gt;rx_dropped++;
 return;
 }
diff --git a/drivers/net/ethernet/rdc/r6040.c b/drivers/net/ethernet/rdc/r6040.c
index d5622ab..e9dc849 100644
--- a/drivers/net/ethernet/rdc/r6040.c
+++ b/drivers/net/ethernet/rdc/r6040.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -350,7 +350,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int r6040_alloc_rxbufs(struct net_device *dev)
 do {
 skb = netdev_alloc_skb(dev, MAX_BUF_SIZE);
 if (!skb) {
-netdev_err(dev, "failed to alloc skb for rx\n");
 rc = -ENOMEM;
 goto err_exit;
 }
diff --git a/drivers/net/ethernet/realtek/8139too.c b/drivers/net/ethernet/realtek/8139too.c
index 1276ac7..3ccedeb 100644
--- a/drivers/net/ethernet/realtek/8139too.c
+++ b/drivers/net/ethernet/realtek/8139too.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -2041,8 +2041,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; keep_pkt:
 
 netif_receive_skb (skb);
 } else {
-if (net_ratelimit())
-netdev_warn(dev, "Memory squeeze, dropping packet\n");
 dev-&amp;gt;stats.rx_dropped++;
 }
 received++;
diff --git a/drivers/net/ethernet/realtek/atp.c b/drivers/net/ethernet/realtek/atp.c
index 9f2d416..d77d60e 100644
--- a/drivers/net/ethernet/realtek/atp.c
+++ b/drivers/net/ethernet/realtek/atp.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -782,8 +782,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void net_rx(struct net_device *dev)
 
 skb = netdev_alloc_skb(dev, pkt_len + 2);
 if (skb == NULL) {
-printk(KERN_ERR "%s: Memory squeeze, dropping packet.\n",
-   dev-&amp;gt;name);
 dev-&amp;gt;stats.rx_dropped++;
 goto done;
 }
diff --git a/drivers/net/ethernet/seeq/ether3.c b/drivers/net/ethernet/seeq/ether3.c
index 3aca578..bdac936 100644
--- a/drivers/net/ethernet/seeq/ether3.c
+++ b/drivers/net/ethernet/seeq/ether3.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -651,8 +651,11 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; if (next_ptr &amp;lt; RX_START || next_ptr &amp;gt;= RX_END) {
 skb-&amp;gt;protocol = eth_type_trans(skb, dev);
 netif_rx(skb);
 received ++;
-} else
-goto dropping;
+} else {
+ether3_outw(next_ptr &amp;gt;&amp;gt; 8, REG_RECVEND);
+dev-&amp;gt;stats.rx_dropped++;
+goto done;
+}
 } else {
 struct net_device_stats *stats = &amp;amp;dev-&amp;gt;stats;
 ether3_outw(next_ptr &amp;gt;&amp;gt; 8, REG_RECVEND);
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -679,21 +682,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; done:
 }
 
 return maxcnt;
-
-dropping:{
-static unsigned long last_warned;
-
-ether3_outw(next_ptr &amp;gt;&amp;gt; 8, REG_RECVEND);
-/*
- * Don't print this message too many times...
- */
-if (time_after(jiffies, last_warned + 10 * HZ)) {
-last_warned = jiffies;
-printk("%s: memory squeeze, dropping packet.\n", dev-&amp;gt;name);
-}
-dev-&amp;gt;stats.rx_dropped++;
-goto done;
-}
 }
 
 /*
diff --git a/drivers/net/ethernet/seeq/sgiseeq.c b/drivers/net/ethernet/seeq/sgiseeq.c
index 0fde9ca..0ad5694 100644
--- a/drivers/net/ethernet/seeq/sgiseeq.c
+++ b/drivers/net/ethernet/seeq/sgiseeq.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -381,8 +381,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; memory_squeeze:
 dev-&amp;gt;stats.rx_packets++;
 dev-&amp;gt;stats.rx_bytes += len;
 } else {
-printk(KERN_NOTICE "%s: Memory squeeze, deferring packet.\n",
-dev-&amp;gt;name);
 dev-&amp;gt;stats.rx_dropped++;
 }
 } else {
diff --git a/drivers/net/ethernet/sis/sis900.c b/drivers/net/ethernet/sis/sis900.c
index efca14e..e458296 100644
--- a/drivers/net/ethernet/sis/sis900.c
+++ b/drivers/net/ethernet/sis/sis900.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1841,15 +1841,12 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; refill_rx_ring:
 entry = sis_priv-&amp;gt;dirty_rx % NUM_RX_DESC;
 
 if (sis_priv-&amp;gt;rx_skbuff[entry] == NULL) {
-if ((skb = netdev_alloc_skb(net_dev, RX_BUF_SIZE)) == NULL) {
+skb = netdev_alloc_skb(net_dev, RX_BUF_SIZE);
+if (skb == NULL) {
 /* not enough memory for skbuff, this makes a
  * "hole" on the buffer ring, it is not clear
  * how the hardware will react to this kind
  * of degenerated buffer */
-if (netif_msg_rx_err(sis_priv))
-printk(KERN_INFO "%s: Memory squeeze, "
-"deferring packet.\n",
-net_dev-&amp;gt;name);
 net_dev-&amp;gt;stats.rx_dropped++;
 break;
 }
diff --git a/drivers/net/ethernet/smsc/smc9194.c b/drivers/net/ethernet/smsc/smc9194.c
index 50823da..e85c2e7 100644
--- a/drivers/net/ethernet/smsc/smc9194.c
+++ b/drivers/net/ethernet/smsc/smc9194.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1223,9 +1223,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void smc_rcv(struct net_device *dev)
 dev-&amp;gt;stats.multicast++;
 
 skb = netdev_alloc_skb(dev, packet_length + 5);
-
 if ( skb == NULL ) {
-printk(KERN_NOTICE CARDNAME ": Low memory, packet dropped.\n");
 dev-&amp;gt;stats.rx_dropped++;
 goto done;
 }
diff --git a/drivers/net/ethernet/smsc/smc91x.c b/drivers/net/ethernet/smsc/smc91x.c
index 591650a..dfbf978 100644
--- a/drivers/net/ethernet/smsc/smc91x.c
+++ b/drivers/net/ethernet/smsc/smc91x.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -465,8 +465,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static inline void  smc_rcv(struct net_device *dev)
  */
 skb = netdev_alloc_skb(dev, packet_len);
 if (unlikely(skb == NULL)) {
-printk(KERN_NOTICE "%s: Low memory, packet dropped.\n",
-dev-&amp;gt;name);
 SMC_WAIT_MMU_BUSY(lp);
 SMC_SET_MMU_CMD(lp, MC_RELEASE);
 dev-&amp;gt;stats.rx_dropped++;
diff --git a/drivers/net/ethernet/smsc/smsc9420.c b/drivers/net/ethernet/smsc/smsc9420.c
index d457fa2..ffa5c4a 100644
--- a/drivers/net/ethernet/smsc/smsc9420.c
+++ b/drivers/net/ethernet/smsc/smsc9420.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -848,10 +848,8 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int smsc9420_alloc_rx_buffer(struct smsc9420_pdata *pd, int index)
 BUG_ON(pd-&amp;gt;rx_buffers[index].skb);
 BUG_ON(pd-&amp;gt;rx_buffers[index].mapping);
 
-if (unlikely(!skb)) {
-smsc_warn(RX_ERR, "Failed to allocate new skb!");
+if (unlikely(!skb))
 return -ENOMEM;
-}
 
 mapping = pci_map_single(pd-&amp;gt;pdev, skb_tail_pointer(skb),
  PKT_BUF_SZ, PCI_DMA_FROMDEVICE);
diff --git a/drivers/net/ethernet/sun/sunqe.c b/drivers/net/ethernet/sun/sunqe.c
index 49bf3e2..8182591b 100644
--- a/drivers/net/ethernet/sun/sunqe.c
+++ b/drivers/net/ethernet/sun/sunqe.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -414,7 +414,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void qe_rx(struct sunqe *qep)
 struct qe_rxd *this;
 struct sunqe_buffers *qbufs = qep-&amp;gt;buffers;
 __u32 qbufs_dvma = qep-&amp;gt;buffers_dvma;
-int elem = qep-&amp;gt;rx_new, drops = 0;
+int elem = qep-&amp;gt;rx_new;
 u32 flags;
 
 this = &amp;amp;rxbase[elem];
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -436,7 +436,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void qe_rx(struct sunqe *qep)
 } else {
 skb = netdev_alloc_skb(dev, len + 2);
 if (skb == NULL) {
-drops++;
 dev-&amp;gt;stats.rx_dropped++;
 } else {
 skb_reserve(skb, 2);
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -456,8 +455,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void qe_rx(struct sunqe *qep)
 this = &amp;amp;rxbase[elem];
 }
 qep-&amp;gt;rx_new = elem;
-if (drops)
-printk(KERN_NOTICE "%s: Memory squeeze, deferring packet.\n", qep-&amp;gt;dev-&amp;gt;name);
 }
 
 static void qe_tx_reclaim(struct sunqe *qep);
diff --git a/drivers/net/ethernet/tehuti/tehuti.c b/drivers/net/ethernet/tehuti/tehuti.c
index e15cc71..e8824ce 100644
--- a/drivers/net/ethernet/tehuti/tehuti.c
+++ b/drivers/net/ethernet/tehuti/tehuti.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1102,10 +1102,9 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void bdx_rx_alloc_skbs(struct bdx_priv *priv, struct rxf_fifo *f)
 dno = bdx_rxdb_available(db) - 1;
 while (dno &amp;gt; 0) {
 skb = netdev_alloc_skb(priv-&amp;gt;ndev, f-&amp;gt;m.pktsz + NET_IP_ALIGN);
-if (!skb) {
-pr_err("NO MEM: netdev_alloc_skb failed\n");
+if (!skb)
 break;
-}
+
 skb_reserve(skb, NET_IP_ALIGN);
 
 idx = bdx_rxdb_alloc_elem(db);
diff --git a/drivers/net/ethernet/ti/tlan.c b/drivers/net/ethernet/ti/tlan.c
index 2272538..bdda36f 100644
--- a/drivers/net/ethernet/ti/tlan.c
+++ b/drivers/net/ethernet/ti/tlan.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1911,10 +1911,8 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void tlan_reset_lists(struct net_device *dev)
 list-&amp;gt;frame_size = TLAN_MAX_FRAME_SIZE;
 list-&amp;gt;buffer[0].count = TLAN_MAX_FRAME_SIZE | TLAN_LAST_BUFFER;
 skb = netdev_alloc_skb_ip_align(dev, TLAN_MAX_FRAME_SIZE + 5);
-if (!skb) {
-netdev_err(dev, "Out of memory for received data\n");
+if (!skb)
 break;
-}
 
 list-&amp;gt;buffer[0].address = pci_map_single(priv-&amp;gt;pci_dev,
  skb-&amp;gt;data,
diff --git a/drivers/net/ethernet/xilinx/ll_temac_main.c b/drivers/net/ethernet/xilinx/ll_temac_main.c
index 9fc2ada..5ac43e4 100644
--- a/drivers/net/ethernet/xilinx/ll_temac_main.c
+++ b/drivers/net/ethernet/xilinx/ll_temac_main.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -273,11 +273,9 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int temac_dma_bd_init(struct net_device *ndev)
 
 skb = netdev_alloc_skb_ip_align(ndev,
 XTE_MAX_JUMBO_FRAME_SIZE);
-
-if (skb == 0) {
-dev_err(&amp;amp;ndev-&amp;gt;dev, "alloc_skb error %d\n", i);
+if (!skb)
 goto out;
-}
+
 lp-&amp;gt;rx_skb[i] = skb;
 /* returns physical address of skb-&amp;gt;data */
 lp-&amp;gt;rx_bd_v[i].phys = dma_map_single(ndev-&amp;gt;dev.parent,
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -789,9 +787,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void ll_temac_recv(struct net_device *ndev)
 
 new_skb = netdev_alloc_skb_ip_align(ndev,
 XTE_MAX_JUMBO_FRAME_SIZE);
-
-if (new_skb == 0) {
-dev_err(&amp;amp;ndev-&amp;gt;dev, "no memory for new sk_buff\n");
+if (!new_skb) {
 spin_unlock_irqrestore(&amp;amp;lp-&amp;gt;rx_lock, flags);
 return;
 }
diff --git a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
index 278c9db..397d4a6 100644
--- a/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
+++ b/drivers/net/ethernet/xilinx/xilinx_axienet_main.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -235,10 +235,8 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int axienet_dma_bd_init(struct net_device *ndev)
       ((i + 1) % RX_BD_NUM);
 
 skb = netdev_alloc_skb_ip_align(ndev, lp-&amp;gt;max_frm_size);
-if (!skb) {
-dev_err(&amp;amp;ndev-&amp;gt;dev, "alloc_skb error %d\n", i);
+if (!skb)
 goto out;
-}
 
 lp-&amp;gt;rx_bd_v[i].sw_id_offset = (u32) skb;
 lp-&amp;gt;rx_bd_v[i].phys = dma_map_single(ndev-&amp;gt;dev.parent,
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -777,10 +775,9 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void axienet_recv(struct net_device *ndev)
 packets++;
 
 new_skb = netdev_alloc_skb_ip_align(ndev, lp-&amp;gt;max_frm_size);
-if (!new_skb) {
-dev_err(&amp;amp;ndev-&amp;gt;dev, "no memory for new sk_buff\n");
+if (!new_skb)
 return;
-}
+
 cur_p-&amp;gt;phys = dma_map_single(ndev-&amp;gt;dev.parent, new_skb-&amp;gt;data,
      lp-&amp;gt;max_frm_size,
      DMA_FROM_DEVICE);
diff --git a/drivers/net/ethernet/xircom/xirc2ps_cs.c b/drivers/net/ethernet/xircom/xirc2ps_cs.c
index 98e09d0..76210ab 100644
--- a/drivers/net/ethernet/xircom/xirc2ps_cs.c
+++ b/drivers/net/ethernet/xircom/xirc2ps_cs.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1041,7 +1041,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; xirc2ps_interrupt(int irq, void *dev_id)
     /* 1 extra so we can use insw */
     skb = netdev_alloc_skb(dev, pktlen + 3);
     if (!skb) {
-pr_notice("low memory, packet dropped (size=%u)\n", pktlen);
 dev-&amp;gt;stats.rx_dropped++;
     } else { /* okay get the packet */
 skb_reserve(skb, 2);
&lt;/pre&gt;</description>
    <dc:creator>Joe Perches</dc:creator>
    <dc:date>2013-03-09T01:03:25</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6903">
    <title>Invitation to connect on LinkedIn</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6903</link>
    <description>&lt;pre&gt;LinkedIn
------------



I'd like to add you to my professional network on LinkedIn.

- Barry

Barry Song
--
China

Confirm that you know Barry Song:
https://www.linkedin.com/e/-amqd4y-hcsyu9u9-10/isd/10900852817/BYGkP-6N/?hs=false&amp;amp;tok=22u4WXBZvhUlA1

--
You are receiving Invitation to Connect emails. Click to unsubscribe:
http://www.linkedin.com/e/-amqd4y-hcsyu9u9-10/qsrAHQjICI0hNoQJCEF34_PxpkieoCDyJgwYCSWx1peVgzNVq3OZ5k4wrD/goo/uclinux-dist-devel%40blackfin%2Euclinux%2Eorg/20061/I3615115186_1/?hs=false&amp;amp;tok=0wTk0r_fThUlA1

(c) 2012 LinkedIn Corporation. 2029 Stierlin Ct, Mountain View, CA 94043, USA.


  
_______________________________________________
Uclinux-dist-devel mailing list
Uclinux-dist-devel-ZG0+EudsQA8dtHy/vicBwGD2FQJk+8+b&amp;lt; at &amp;gt;public.gmane.org
https://blackfin.uclinux.org/mailman/listinfo/uclinux-dist-devel&lt;/pre&gt;</description>
    <dc:creator>Barry Song</dc:creator>
    <dc:date>2013-02-05T11:29:09</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6888">
    <title>[PATCH 1/2] musb: framework: add bf60x support</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6888</link>
    <description>&lt;pre&gt;This patch makes musb framework can support blackfin bf60x series soc platform.
Bf60x uses MHDRC RTL version 2.0 musb ip core which don't need a lot of
blackfin specific anomalies anymore.

Signed-off-by: Bob Liu &amp;lt;lliubbo-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 drivers/usb/musb/Kconfig     |    2 +-
 drivers/usb/musb/musb_core.c |    6 ++++--
 drivers/usb/musb/musb_core.h |    2 +-
 drivers/usb/musb/musb_dma.h  |    2 +-
 drivers/usb/musb/musb_io.h   |    2 +-
 drivers/usb/musb/musb_regs.h |    2 +-
 drivers/usb/musb/musbhsdma.c |    2 +-
 drivers/usb/musb/musbhsdma.h |    2 +-
 8 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/drivers/usb/musb/Kconfig b/drivers/usb/musb/Kconfig
index 23a0b7f..4d416bc 100644
--- a/drivers/usb/musb/Kconfig
+++ b/drivers/usb/musb/Kconfig
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -60,7 +60,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; config USB_MUSB_DSPS
 
 config USB_MUSB_BLACKFIN
 tristate "Blackfin"
-depends on (BF54x &amp;amp;&amp;amp; !BF544) || (BF52x &amp;amp;&amp;amp; ! BF522 &amp;amp;&amp;amp; !BF523)
+depends on (BF54x &amp;amp;&amp;amp; !BF544) || (BF52x &amp;amp;&amp;amp; ! BF522 &amp;amp;&amp;amp; !BF523) || (BF60x)
 
 config USB_MUSB_UX500
 tristate "U8500 and U5500"
diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c
index f1c6c54..4dd18a9 100644
--- a/drivers/usb/musb/musb_core.c
+++ b/drivers/usb/musb/musb_core.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -226,7 +226,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static struct usb_phy_io_ops musb_ulpi_access = {
 
 /*-------------------------------------------------------------------------*/
 
-#if !defined(CONFIG_USB_MUSB_TUSB6010) &amp;amp;&amp;amp; !defined(CONFIG_USB_MUSB_BLACKFIN)
+#if !defined(CONFIG_USB_MUSB_TUSB6010) &amp;amp;&amp;amp; (!defined(CONFIG_USB_MUSB_BLACKFIN) || CONFIG_BF60x)
 
 /*
  * Load an endpoint's FIFO
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1039,7 +1039,9 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void musb_shutdown(struct platform_device *pdev)
 || defined(CONFIG_USB_MUSB_AM35X)\
 || defined(CONFIG_USB_MUSB_AM35X_MODULE)\
 || defined(CONFIG_USB_MUSB_DSPS)\
-|| defined(CONFIG_USB_MUSB_DSPS_MODULE)
+|| defined(CONFIG_USB_MUSB_DSPS_MODULE)\
+|| defined(CONFIG_USB_MUSB_BLACKFIN)
+
 static ushort fifo_mode = 4;
 #elif defined(CONFIG_USB_MUSB_UX500)\
 || defined(CONFIG_USB_MUSB_UX500_MODULE)
diff --git a/drivers/usb/musb/musb_core.h b/drivers/usb/musb/musb_core.h
index 7fb4819..a46ec5d 100644
--- a/drivers/usb/musb/musb_core.h
+++ b/drivers/usb/musb/musb_core.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -449,7 +449,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static inline struct musb *gadget_to_musb(struct usb_gadget *g)
 return container_of(g, struct musb, g);
 }
 
-#ifdef CONFIG_BLACKFIN
+#if defined(CONFIG_BLACKFIN) &amp;amp;&amp;amp; !defined(CONFIG_BF60x)
 static inline int musb_read_fifosize(struct musb *musb,
 struct musb_hw_ep *hw_ep, u8 epnum)
 {
diff --git a/drivers/usb/musb/musb_dma.h b/drivers/usb/musb/musb_dma.h
index 1b6b827..6bb84df 100644
--- a/drivers/usb/musb/musb_dma.h
+++ b/drivers/usb/musb/musb_dma.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -84,7 +84,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; struct musb_hw_ep;
  *Only allow DMA mode 1 to be used when the USB will actually generate the
  *interrupts we expect.
  */
-#ifdef CONFIG_BLACKFIN
+#if defined(CONFIG_BLACKFIN) &amp;amp;&amp;amp; !defined(CONFIG_BF60x)
 # undef USE_MODE1
 # if !ANOMALY_05000456
 #  define USE_MODE1
diff --git a/drivers/usb/musb/musb_io.h b/drivers/usb/musb/musb_io.h
index eebeed7..d28b789 100644
--- a/drivers/usb/musb/musb_io.h
+++ b/drivers/usb/musb/musb_io.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -37,7 +37,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 
 #include &amp;lt;linux/io.h&amp;gt;
 
-#ifndef CONFIG_BLACKFIN
+#if !defined(CONFIG_BLACKFIN) || defined(CONFIG_BF60x)
 
 /* NOTE:  these offsets are all in bytes */
 
diff --git a/drivers/usb/musb/musb_regs.h b/drivers/usb/musb/musb_regs.h
index 03f2655..bffa4a1 100644
--- a/drivers/usb/musb/musb_regs.h
+++ b/drivers/usb/musb/musb_regs.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -214,7 +214,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 #define MUSB_HUBADDR_MULTI_TT0x80
 
 
-#ifndef CONFIG_BLACKFIN
+#if !defined(CONFIG_BLACKFIN) || defined(CONFIG_BF60x)
 
 /*
  * Common USB registers
diff --git a/drivers/usb/musb/musbhsdma.c b/drivers/usb/musb/musbhsdma.c
index 3d1fd52..d53715f 100644
--- a/drivers/usb/musb/musbhsdma.c
+++ b/drivers/usb/musb/musbhsdma.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -269,7 +269,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static irqreturn_t dma_controller_irq(int irq, void *private_data)
 
 int_hsdma = musb_readb(mbase, MUSB_HSDMA_INTR);
 
-#ifdef CONFIG_BLACKFIN
+#if defined(CONFIG_BLACKFIN) &amp;amp;&amp;amp; !defined(CONFIG_BF60x)
 /* Clear DMA interrupt flags */
 musb_writeb(mbase, MUSB_HSDMA_INTR, int_hsdma);
 #endif
diff --git a/drivers/usb/musb/musbhsdma.h b/drivers/usb/musb/musbhsdma.h
index f7b13fd2..2a8e082 100644
--- a/drivers/usb/musb/musbhsdma.h
+++ b/drivers/usb/musb/musbhsdma.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -31,7 +31,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
  *
  */
 
-#ifndef CONFIG_BLACKFIN
+#if !defined(CONFIG_BLACKFIN) || defined(CONFIG_BF60x)
 
 #define MUSB_HSDMA_BASE0x200
 #define MUSB_HSDMA_INTR(MUSB_HSDMA_BASE + 0)
&lt;/pre&gt;</description>
    <dc:creator>Bob Liu</dc:creator>
    <dc:date>2013-01-29T09:07:14</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6877">
    <title>[PATCH 1/2] [media] add maintainer forblackfin media drivers</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6877</link>
    <description>&lt;pre&gt;Signed-off-by: Scott Jiang &amp;lt;scott.jiang.linux-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 MAINTAINERS |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index c5de529..e7ca531 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -1652,6 +1652,15 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; W:http://blackfin.uclinux.org/
 S:Supported
 F:drivers/i2c/busses/i2c-bfin-twi.c
 
+BLACKFIN MEDIA DRIVER
+M:Scott Jiang &amp;lt;scott.jiang.linux-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
+L:uclinux-dist-devel-ZG0+EudsQA8dtHy/vicBwGD2FQJk+8+b&amp;lt; at &amp;gt;public.gmane.org
+W:http://blackfin.uclinux.org/
+S:Supported
+F:drivers/media/platform/blackfin/
+F:drivers/media/i2c/adv7183*
+F:drivers/media/i2c/vs6624*
+
 BLINKM RGB LED DRIVER
 M:Jan-Simon Moeller &amp;lt;jansimon.moeller-Mmb7MZpHnFY&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
 S:Maintained
&lt;/pre&gt;</description>
    <dc:creator>Scott Jiang</dc:creator>
    <dc:date>2013-01-18T21:09:47</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6847">
    <title>[PATCH] bfin_mac: Restore hardwaretime-stamping dependency on BF518</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6847</link>
    <description>&lt;pre&gt;Commit 70ac618c07 ("ptp: fixup Kconfig for two PHC drivers.") removed all
dependencies for the blackfin hardware time-stamping Kconfig entry. Hardware
time-stamping is only available on BF518 though. Since the Kconfig entry is
'default y', just updateing your kernel source and running `make defconfig` will
result in the the following build errors:

drivers/net/ethernet/adi/bfin_mac.c:694: error: implicit declaration of function ‘bfin_read_EMAC_PTP_CTL’
drivers/net/ethernet/adi/bfin_mac.c:702: error: implicit declaration of function ‘bfin_write_EMAC_PTP_FV3’
drivers/net/ethernet/adi/bfin_mac.c:712: error: implicit declaration of function ‘bfin_write_EMAC_PTP_CTL’
drivers/net/ethernet/adi/bfin_mac.c:717: error: implicit declaration of function ‘bfin_write_EMAC_PTP_FOFF’
...

This patch adds back the dependency on BF518, and since it does not make sense
to expose this config option when the blackfin MAC driver is not enabled also
restore the dependency on BFIN_MAC.

Signed-off-by: Lars-Peter Clausen &amp;lt;lars&amp;lt; at &amp;gt;metafoo.de&amp;gt;
---
 drivers/net/ethernet/adi/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/ethernet/adi/Kconfig b/drivers/net/ethernet/adi/Kconfig
index e49c0ef..a948160 100644
--- a/drivers/net/ethernet/adi/Kconfig
+++ b/drivers/net/ethernet/adi/Kconfig
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -61,6 +61,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; config BFIN_RX_DESC_NUM
 
 config BFIN_MAC_USE_HWSTAMP
 bool "Use IEEE 1588 hwstamp"
+depends on BFIN_MAC &amp;amp;&amp;amp; BF518
 select PTP_1588_CLOCK
 default y
 ---help---
&lt;/pre&gt;</description>
    <dc:creator>Lars-Peter Clausen</dc:creator>
    <dc:date>2013-01-10T14:42:28</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6830">
    <title>[GIT PULL] Blackfin changes for 3.8</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6830</link>
    <description>&lt;pre&gt;Hi linus,

The following changes since commit 29594404d7fe73cd80eaa4ee8c43dcc53970c60e:

  Linux 3.7 (2012-12-10 19:30:57 -0800)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/lliubbo/blackfin.git for-linus

for you to fetch changes up to 86794b43569c9b8936dff2e8eed503393379af6e:

  blackfin: SEC: clean up SEC interrupt initialization (2012-12-14 11:20:22 +0800)

----------------------------------------------------------------
David Howells (1):
      UAPI: (Scripted) Disintegrate arch/blackfin/include/asm

Lars-Peter Clausen (5):
      Blackfin: Annotate strncpy_from_user src parameter with __user
      Blackfin: Add missing __user annotations to put_user
      Blackfin: Annotate clear_user 'to' parameter with __user
      Blackfin: Annotate strnlen_user and strlen_user 'src' parameter with __user
      Blackfin: twi: Add missing __iomem annotation

Sonic Zhang (3):
      blackfin: anomaly: add anomaly 16000030 for bf5xx
      blackfin: kgdb: call generic_exec_single() directly
      blackfin: SEC: clean up SEC interrupt initialization

Srinivas Kandagatla (1):
      Blackfin: dpmc: use module_platform_driver macro

Steven Rostedt (1):
      blackfin: Use Kbuild infrastructure for kvm_para.h

Tobias Klauser (2):
      Blackfin: remove unnecessary prototype for kobjsize()
      Blackfin: remove unused is_in_rom()

 arch/blackfin/include/asm/Kbuild                   |    6 +-
 arch/blackfin/include/asm/bfin_sport.h             |  128 +-----
 arch/blackfin/include/asm/bfin_twi.h               |    2 +-
 arch/blackfin/include/asm/fixed_code.h             |   30 +-
 arch/blackfin/include/asm/kvm_para.h               |    1 -
 arch/blackfin/include/asm/pgtable.h                |    2 -
 arch/blackfin/include/asm/ptrace.h                 |  161 +-------
 arch/blackfin/include/asm/uaccess.h                |   41 +-
 arch/blackfin/include/asm/unistd.h                 |  430 +------------------
 arch/blackfin/include/mach-common/irq.h            |    5 +-
 arch/blackfin/include/uapi/asm/Kbuild              |   16 +
 arch/blackfin/include/uapi/asm/bfin_sport.h        |  136 ++++++
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/byteorder.h   |    0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/cachectl.h    |    0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/fcntl.h       |    0
 arch/blackfin/include/uapi/asm/fixed_code.h        |   38 ++
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/ioctls.h      |    0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/poll.h        |    0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/posix_types.h |    0
 arch/blackfin/include/uapi/asm/ptrace.h            |  170 ++++++++
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/sigcontext.h  |    0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/siginfo.h     |    0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/signal.h      |    0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/stat.h        |    0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/swab.h        |    0
 arch/blackfin/include/uapi/asm/unistd.h            |  437 ++++++++++++++++++++
 arch/blackfin/kernel/kgdb.c                        |   13 +-
 arch/blackfin/mach-bf518/include/mach/anomaly.h    |    1 +
 arch/blackfin/mach-bf527/include/mach/anomaly.h    |    1 +
 arch/blackfin/mach-bf533/include/mach/anomaly.h    |    1 +
 arch/blackfin/mach-bf537/include/mach/anomaly.h    |    1 +
 arch/blackfin/mach-bf538/include/mach/anomaly.h    |    1 +
 arch/blackfin/mach-bf548/include/mach/anomaly.h    |    1 +
 arch/blackfin/mach-bf561/include/mach/anomaly.h    |    1 +
 arch/blackfin/mach-bf609/include/mach/irq.h        |    3 -
 arch/blackfin/mach-bf609/pm.c                      |    3 +-
 arch/blackfin/mach-common/dpmc.c                   |   19 +-
 arch/blackfin/mach-common/ints-priority.c          |  272 ++++++------
 38 files changed, 972 insertions(+), 948 deletions(-)
 delete mode 100644 arch/blackfin/include/asm/kvm_para.h
 create mode 100644 arch/blackfin/include/uapi/asm/bfin_sport.h
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/byteorder.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/cachectl.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/fcntl.h (100%)
 create mode 100644 arch/blackfin/include/uapi/asm/fixed_code.h
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/ioctls.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/poll.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/posix_types.h (100%)
 create mode 100644 arch/blackfin/include/uapi/asm/ptrace.h
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/sigcontext.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/siginfo.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/signal.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/stat.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/swab.h (100%)
 create mode 100644 arch/blackfin/include/uapi/asm/unistd.h
&lt;/pre&gt;</description>
    <dc:creator>Bob Liu</dc:creator>
    <dc:date>2012-12-17T06:04:30</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6821">
    <title>[PATCH] blackfin: use bitmap library functions</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6821</link>
    <description>&lt;pre&gt;The bitmap library provides more efficient functions than accessing
individual bits with bitops.

This uses bitmap_find_next_zero_area() to find a continuing zero area,
and uses bitmap_set()/bitmap_clear() to set/clear specified bit area.

Signed-off-by: Akinobu Mita &amp;lt;akinobu.mita-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
Cc: Mike Frysinger &amp;lt;vapier-aBrp7R+bbdUdnm+yROfE0A&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
Cc: uclinux-dist-devel-ZG0+EudsQA8dtHy/vicBwGD2FQJk+8+b&amp;lt; at &amp;gt;public.gmane.org
---
 arch/blackfin/kernel/dma-mapping.c | 23 +++++++----------------
 1 file changed, 7 insertions(+), 16 deletions(-)

diff --git a/arch/blackfin/kernel/dma-mapping.c b/arch/blackfin/kernel/dma-mapping.c
index e7be653..df437e5 100644
--- a/arch/blackfin/kernel/dma-mapping.c
+++ b/arch/blackfin/kernel/dma-mapping.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -13,6 +13,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt;
 #include &amp;lt;linux/dma-mapping.h&amp;gt;
 #include &amp;lt;linux/scatterlist.h&amp;gt;
 #include &amp;lt;linux/export.h&amp;gt;
+#include &amp;lt;linux/bitmap.h&amp;gt;
 
 static spinlock_t dma_page_lock;
 static unsigned long *dma_page;
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -46,24 +47,17 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static inline unsigned int get_pages(size_t size)
 static unsigned long __alloc_dma_pages(unsigned int pages)
 {
 unsigned long ret = 0, flags;
-int i, count = 0;
+unsigned long start;
 
 if (dma_initialized == 0)
 dma_alloc_init(_ramend - DMA_UNCACHED_REGION, _ramend);
 
 spin_lock_irqsave(&amp;amp;dma_page_lock, flags);
 
-for (i = 0; i &amp;lt; dma_pages;) {
-if (test_bit(i++, dma_page) == 0) {
-if (++count == pages) {
-while (count--)
-__set_bit(--i, dma_page);
-
-ret = dma_base + (i &amp;lt;&amp;lt; PAGE_SHIFT);
-break;
-}
-} else
-count = 0;
+start = bitmap_find_next_zero_area(dma_page, dma_pages, 0, pages, 0);
+if (start &amp;lt; dma_pages) {
+ret = dma_base + (start &amp;lt;&amp;lt; PAGE_SHIFT);
+bitmap_set(dma_page, start, pages);
 }
 spin_unlock_irqrestore(&amp;amp;dma_page_lock, flags);
 return ret;
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -73,7 +67,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void __free_dma_pages(unsigned long addr, unsigned int pages)
 {
 unsigned long page = (addr - dma_base) &amp;gt;&amp;gt; PAGE_SHIFT;
 unsigned long flags;
-int i;
 
 if ((page + pages) &amp;gt; dma_pages) {
 printk(KERN_ERR "%s: freeing outside range.\n", __func__);
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -81,9 +74,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void __free_dma_pages(unsigned long addr, unsigned int pages)
 }
 
 spin_lock_irqsave(&amp;amp;dma_page_lock, flags);
-for (i = page; i &amp;lt; page + pages; i++)
-__clear_bit(i, dma_page);
-
+bitmap_clear(dma_page, page, pages);
 spin_unlock_irqrestore(&amp;amp;dma_page_lock, flags);
 }
 
&lt;/pre&gt;</description>
    <dc:creator>Akinobu Mita</dc:creator>
    <dc:date>2012-11-25T07:48:23</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6817">
    <title>[PATCH 3.6.0-] Blackfin: usemodule_platform_driver macro</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6817</link>
    <description>&lt;pre&gt;From: Srinivas Kandagatla &amp;lt;srinivas.kandagatla-qxv4g6HH51o&amp;lt; at &amp;gt;public.gmane.org&amp;gt;

This patch removes some code duplication by using
module_platform_driver.

Signed-off-by: Srinivas Kandagatla &amp;lt;srinivas.kandagatla-qxv4g6HH51o&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 arch/blackfin/mach-common/dpmc.c |   19 +------------------
 1 files changed, 1 insertions(+), 18 deletions(-)

diff --git a/arch/blackfin/mach-common/dpmc.c b/arch/blackfin/mach-common/dpmc.c
index f5685a4..978bb40 100644
--- a/arch/blackfin/mach-common/dpmc.c
+++ b/arch/blackfin/mach-common/dpmc.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -157,24 +157,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; struct platform_driver bfin_dpmc_device_driver = {
 .name = DRIVER_NAME,
 }
 };
-
-/**
- *bfin_dpmc_init - Init driver
- */
-static int __init bfin_dpmc_init(void)
-{
-return platform_driver_register(&amp;amp;bfin_dpmc_device_driver);
-}
-module_init(bfin_dpmc_init);
-
-/**
- *bfin_dpmc_exit - break down driver
- */
-static void __exit bfin_dpmc_exit(void)
-{
-platform_driver_unregister(&amp;amp;bfin_dpmc_device_driver);
-}
-module_exit(bfin_dpmc_exit);
+module_platform_driver(bfin_dpmc_device_driver);
 
 MODULE_AUTHOR("Michael Hennerich &amp;lt;hennerich-ZG0+EudsQA8dtHy/vicBwGD2FQJk+8+b&amp;lt; at &amp;gt;public.gmane.org&amp;gt;");
 MODULE_DESCRIPTION("cpu power management driver for Blackfin");
&lt;/pre&gt;</description>
    <dc:creator>Srinivas KANDAGATLA</dc:creator>
    <dc:date>2012-10-10T18:40:19</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6816">
    <title>[PATCH] arch/blackfin/kernel: change %8s to %s for seq_printf of show_interrupts</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6816</link>
    <description>&lt;pre&gt;
  the length of irq_desc_get_chip(desc)-&amp;gt;name is not solid length
  in seq_printf, it is not suitable to use %8s.
  so change it to %s (example: "tilegx_msi" in arch/tile/kernel/pci_gx.c)

  additional information:

    %8s  limit the width, not for the original string output length
         if name length is more than 8, it still can be fully displayed.
         if name length is less than 8, the ' ' will be filled before name.

    %.8s truly limit the original string output length (precision)


Signed-off-by: Chen Gang &amp;lt;gang.chen-bOixZGp5f+dBDgjK7y7TUQ&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 arch/blackfin/kernel/irqchip.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/blackfin/kernel/irqchip.c b/arch/blackfin/kernel/irqchip.c
index ff3d747..2623c47 100644
--- a/arch/blackfin/kernel/irqchip.c
+++ b/arch/blackfin/kernel/irqchip.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -49,7 +49,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; int show_interrupts(struct seq_file *p, void *v)
 seq_printf(p, "%3d: ", i);
 for_each_online_cpu(j)
 seq_printf(p, "%10u ", kstat_irqs_cpu(i, j));
-seq_printf(p, " %8s", irq_desc_get_chip(desc)-&amp;gt;name);
+seq_printf(p, " %s", irq_desc_get_chip(desc)-&amp;gt;name);
 seq_printf(p, "  %s", action-&amp;gt;name);
 for (action = action-&amp;gt;next; action; action = action-&amp;gt;next)
 seq_printf(p, "  %s", action-&amp;gt;name);
&lt;/pre&gt;</description>
    <dc:creator>Chen Gang</dc:creator>
    <dc:date>2012-11-06T07:29:11</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6721">
    <title>[PATCH] blackfin: Remove unnecessary prototypefor kobjsize()</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6721</link>
    <description>&lt;pre&gt;The prototype for kobjsize() is already defined in linux/mm.h which is
included where kobjsize() is used.

Signed-off-by: Tobias Klauser &amp;lt;tklauser-93Khv+1bN0NyDzI6CaY1VQ&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 arch/blackfin/include/asm/pgtable.h |    2 --
 1 files changed, 0 insertions(+), 2 deletions(-)

diff --git a/arch/blackfin/include/asm/pgtable.h b/arch/blackfin/include/asm/pgtable.h
index dcca3e6..b866392 100644
--- a/arch/blackfin/include/asm/pgtable.h
+++ b/arch/blackfin/include/asm/pgtable.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -83,8 +83,6 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; PTE_BIT_FUNC(mkyoung, |= _PAGE_ACCESSED);
 #define ZERO_PAGE(vaddr)virt_to_page(empty_zero_page)
 extern char empty_zero_page[];
 
-extern unsigned int kobjsize(const void *objp);
-
 #define swapper_pg_dir ((pgd_t *) 0)
 /*
  * No page table caches to initialise.
&lt;/pre&gt;</description>
    <dc:creator>Tobias Klauser</dc:creator>
    <dc:date>2012-10-26T14:31:02</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6708">
    <title>[PATCH 1/4] Blackfin: Add missing __userannotations to put_user</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6708</link>
    <description>&lt;pre&gt;typeof() will not inherit the __user annotation so we have to explicitly
specify this for '_p'.

This fixes the following and quite a few similar warnings from spatch:

kernel/sys.c:884:26: warning: incorrect type in initializer (different address spaces)
kernel/sys.c:884:26:    expected unsigned int *_p
kernel/sys.c:884:26:    got unsigned int [noderef] [usertype] &amp;lt;asn:1&amp;gt;*ruidp
kernel/sys.c:885:26: warning: incorrect type in initializer (different address spaces)
kernel/sys.c:885:26:    expected unsigned int *_p
kernel/sys.c:885:26:    got unsigned int [noderef] [usertype] &amp;lt;asn:1&amp;gt;*euidp
kernel/sys.c:886:26: warning: incorrect type in initializer (different address spaces)
kernel/sys.c:886:26:    expected unsigned int *_p
kernel/sys.c:886:26:    got unsigned int [noderef] [usertype] &amp;lt;asn:1&amp;gt;*suidp

Signed-off-by: Lars-Peter Clausen &amp;lt;lars-Qo5EllUWu/uELgA04lAiVw&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 arch/blackfin/include/asm/uaccess.h | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/blackfin/include/asm/uaccess.h b/arch/blackfin/include/asm/uaccess.h
index 3edb4af..90f32c2 100644
--- a/arch/blackfin/include/asm/uaccess.h
+++ b/arch/blackfin/include/asm/uaccess.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -89,7 +89,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; struct exception_table_entry {
 ({\
 int _err = 0;\
 typeof(*(p)) _x = (x);\
-typeof(*(p)) *_p = (p);\
+typeof(*(p)) __user *_p = (p);\
 if (!access_ok(VERIFY_WRITE, _p, sizeof(*(_p)))) {\
 _err = -EFAULT;\
 }\
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -108,8 +108,8 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; struct exception_table_entry {
 long _xl, _xh;\
 _xl = ((long *)&amp;amp;_x)[0];\
 _xh = ((long *)&amp;amp;_x)[1];\
-__put_user_asm(_xl, ((long *)_p)+0, );\
-__put_user_asm(_xh, ((long *)_p)+1, );\
+__put_user_asm(_xl, ((long __user *)_p)+0, );\
+__put_user_asm(_xh, ((long __user *)_p)+1, );\
 } break;\
 default:\
 _err = __put_user_bad();\
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -136,7 +136,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static inline int bad_user_access_length(void)
  * aliasing issues.
  */
 
-#define __ptr(x) ((unsigned long *)(x))
+#define __ptr(x) ((unsigned long __force *)(x))
 
 #define __put_user_asm(x,p,bhw)\
 __asm__ (#bhw"[%1] = %0;\n\t"\
&lt;/pre&gt;</description>
    <dc:creator>Lars-Peter Clausen</dc:creator>
    <dc:date>2012-10-22T14:09:03</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6704">
    <title>[PATCH] Blackfin: Annotate strncpy_from_usersrc parameter with __user</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6704</link>
    <description>&lt;pre&gt;The src parameter of strncpy_from_user is supposed to take a string from
userspace, so it should be annotated with __user. Doing so fixes the following
and similar warnings from sparse:

kernel/sys.c:491:51: warning: incorrect type in argument 2 (different address spaces)
kernel/sys.c:491:51:    expected char const *src
kernel/sys.c:491:51:    got void [noderef] &amp;lt;asn:1&amp;gt;*arg
kernel/sys.c:2061:54: warning: incorrect type in argument 2 (different address spaces)
kernel/sys.c:2061:54:    expected char const *src
kernel/sys.c:2061:54:    got char [noderef] &amp;lt;asn:1&amp;gt;*&amp;lt;noident&amp;gt;

Signed-off-by: Lars-Peter Clausen &amp;lt;lars-Qo5EllUWu/uELgA04lAiVw&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 arch/blackfin/include/asm/uaccess.h |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/blackfin/include/asm/uaccess.h b/arch/blackfin/include/asm/uaccess.h
index 5cc1115..3edb4af 100644
--- a/arch/blackfin/include/asm/uaccess.h
+++ b/arch/blackfin/include/asm/uaccess.h
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -216,12 +216,12 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; copy_to_user(void __user *to, const void *from, unsigned long n)
  */
 
 static inline long __must_check
-strncpy_from_user(char *dst, const char *src, long count)
+strncpy_from_user(char *dst, const char __user *src, long count)
 {
 char *tmp;
 if (!access_ok(VERIFY_READ, src, 1))
 return -EFAULT;
-strncpy(dst, src, count);
+strncpy(dst, (const char __force *)src, count);
 for (tmp = dst; *tmp &amp;amp;&amp;amp; count &amp;gt; 0; tmp++, count--) ;
 return (tmp - dst);
 }
&lt;/pre&gt;</description>
    <dc:creator>Lars-Peter Clausen</dc:creator>
    <dc:date>2012-10-17T14:28:02</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6703">
    <title>(no subject)</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6703</link>
    <description>&lt;pre&gt;  http://projects.4nodestechnologies.com/blog/wp-content/plugins/akismet/forbes.html
&lt;/pre&gt;</description>
    <dc:creator>Alexey Dobriyan</dc:creator>
    <dc:date>2012-10-14T10:43:47</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6702">
    <title>Incorrect romfs target in lib/cgic</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6702</link>
    <description>&lt;pre&gt;Hi, in the 2011R1 branch of the uclinux distribution, the romfs target
of lib/cgic attempts to install the libSDL library, which is totally
unrelated to cgic (probably a copy paste error). As cgic only builds a
static library, the romfs target should be empty:

diff --git a/lib/cgic/Makefile b/lib/cgic/Makefile
index 041c92b..4dea710 100644
--- a/lib/cgic/Makefile
+++ b/lib/cgic/Makefile
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -15,6 +15,5 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; clean:
        $(MAKE) -C $(VER) clean

 romfs:
-       $(ROMFSINST) -d -e CONFIG_FMT_USE_FDPIC_ELF
$(STAGEDIR)/usr/lib/libSDL-1.2.so.0 /usr/lib/libSDL-1.2.so.0

 .PHONY: all clean romfs

&lt;/pre&gt;</description>
    <dc:creator>Timur Aydin</dc:creator>
    <dc:date>2012-10-11T22:00:37</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6699">
    <title>[GIT PULL] Disintegrate UAPI for blackfin [ver#2]</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6699</link>
    <description>&lt;pre&gt;Can you merge the following branch into the blackfin tree please.

This is to complete part of the UAPI disintegration for which the preparatory
patches were pulled recently.

Now that the fixups and the asm-generic chunk have been merged, I've
regenerated the patches to get rid of those dependencies and to take account of
any changes made so far in the merge window.  If you have already pulled the
older version of the branch aimed at you, then please feel free to ignore this
request.

The following changes since commit 9e2d8656f5e8aa214e66b462680cf86b210b74a8:

  Merge branch 'akpm' (Andrew's patch-bomb) (2012-10-09 16:23:15 +0900)

are available in the git repository at:


  git://git.infradead.org/users/dhowells/linux-headers.git tags/disintegrate-blackfin-20121009

for you to fetch changes up to ac3a050e89f2e6b8025e4176a36ed34de470fcad:

  UAPI: (Scripted) Disintegrate arch/blackfin/include/asm (2012-10-09 09:46:39 +0100)

----------------------------------------------------------------
UAPI Disintegration 2012-10-09

----------------------------------------------------------------
David Howells (1):
      UAPI: (Scripted) Disintegrate arch/blackfin/include/asm

 arch/blackfin/include/asm/Kbuild                   |   5 -
 arch/blackfin/include/asm/bfin_sport.h             | 128 +-----
 arch/blackfin/include/asm/fixed_code.h             |  30 +-
 arch/blackfin/include/asm/ptrace.h                 | 161 +-------
 arch/blackfin/include/asm/unistd.h                 | 430 +-------------------
 arch/blackfin/include/uapi/asm/Kbuild              |  16 +
 arch/blackfin/include/uapi/asm/bfin_sport.h        | 136 +++++++
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/byteorder.h   |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/cachectl.h    |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/fcntl.h       |   0
 arch/blackfin/include/uapi/asm/fixed_code.h        |  38 ++
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/ioctls.h      |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/kvm_para.h    |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/poll.h        |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/posix_types.h |   0
 arch/blackfin/include/uapi/asm/ptrace.h            | 170 ++++++++
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/sigcontext.h  |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/siginfo.h     |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/signal.h      |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/stat.h        |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/swab.h        |   0
 arch/blackfin/include/uapi/asm/unistd.h            | 437 +++++++++++++++++++++
 22 files changed, 802 insertions(+), 749 deletions(-)
 create mode 100644 arch/blackfin/include/uapi/asm/bfin_sport.h
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/byteorder.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/cachectl.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/fcntl.h (100%)
 create mode 100644 arch/blackfin/include/uapi/asm/fixed_code.h
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/ioctls.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/kvm_para.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/poll.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/posix_types.h (100%)
 create mode 100644 arch/blackfin/include/uapi/asm/ptrace.h
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/sigcontext.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/siginfo.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/signal.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/stat.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/swab.h (100%)
 create mode 100644 arch/blackfin/include/uapi/asm/unistd.h
.
&lt;/pre&gt;</description>
    <dc:creator>David Howells</dc:creator>
    <dc:date>2012-10-09T09:15:17</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6697">
    <title>libsmbclient.so is not installed to staging dir</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6697</link>
    <description>&lt;pre&gt;Hi,

The following problem is observed with the 2011R1 version of the
blackfin uclinux distribution:

The libsmbclient.so library is not installed into $(ROOTDIR)/staging
even when CONFIG_USER_SAMBA_SHARED is enabled. As a result, it isn't
possible to build a program that uses libsmbclient.so. I have modified
the samba-3.0.25a/source/makefile as shown in the diff at the end of
this message. I would love to hear comments about the developers so that
I can prepare a patch to be hopefully included in the official version.

&lt;/pre&gt;</description>
    <dc:creator>Timur Aydin</dc:creator>
    <dc:date>2012-10-07T12:10:59</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6696">
    <title>[GIT PULL] Disintegrate UAPI for blackfin</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6696</link>
    <description>&lt;pre&gt;Can you merge the following branch into the blackfin tree please.

This is to complete part of the UAPI disintegration for which the preparatory
patches were pulled recently.

Note that there are some fixup patches which are at the base of the branch
aimed at you, plus all arches get the asm-generic branch merged in too.

The following changes since commit 612a9aab56a93533e76e3ad91642db7033e03b69:

  Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux (2012-10-03 23:29:23 -0700)

are available in the git repository at:


  git://git.infradead.org/users/dhowells/linux-headers.git disintegrate-blackfin

for you to fetch changes up to d65fee76eb053476a6eddd870d067469874c1ddf:

  UAPI: (Scripted) Disintegrate arch/blackfin/include/asm (2012-10-04 18:20:29 +0100)

----------------------------------------------------------------
David Howells (6):
      UAPI: Fix the guards on various asm/unistd.h files
      UAPI: Split compound conditionals containing __KERNEL__ in Arm64
      Merge remote-tracking branch 'c6x/for-linux-next' into uapi-prep
      UAPI: Fix conditional header installation handling (notably kvm_para.h on m68k)
      UAPI: (Scripted) Disintegrate include/asm-generic
      UAPI: (Scripted) Disintegrate arch/blackfin/include/asm

Mark Salter (2):
      c6x: make dsk6455 the default config
      c6x: remove c6x signal.h

 arch/arm64/include/asm/hwcap.h                     |   4 +-
 arch/arm64/include/asm/stat.h                      |   4 +-
 arch/arm64/include/asm/unistd.h                    |   8 +-
 arch/arm64/include/asm/unistd32.h                  |   4 -
 arch/blackfin/include/asm/Kbuild                   |   5 -
 arch/blackfin/include/asm/bfin_sport.h             | 128 +--
 arch/blackfin/include/asm/fixed_code.h             |  30 +-
 arch/blackfin/include/asm/ptrace.h                 | 161 +---
 arch/blackfin/include/asm/unistd.h                 | 430 +---------
 arch/blackfin/include/uapi/asm/Kbuild              |  16 +
 arch/blackfin/include/uapi/asm/bfin_sport.h        | 136 +++
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/byteorder.h   |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/cachectl.h    |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/fcntl.h       |   0
 arch/blackfin/include/uapi/asm/fixed_code.h        |  38 +
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/ioctls.h      |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/kvm_para.h    |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/poll.h        |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/posix_types.h |   0
 arch/blackfin/include/uapi/asm/ptrace.h            | 170 ++++
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/sigcontext.h  |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/siginfo.h     |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/signal.h      |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/stat.h        |   0
 arch/blackfin/include/{ =&amp;gt; uapi}/asm/swab.h        |   0
 arch/blackfin/include/uapi/asm/unistd.h            | 437 ++++++++++
 arch/c6x/Makefile                                  |   2 +
 arch/c6x/include/asm/Kbuild                        |   1 +
 arch/c6x/include/asm/signal.h                      |  17 -
 arch/c6x/include/asm/unistd.h                      |   4 -
 arch/hexagon/include/asm/unistd.h                  |   5 -
 arch/openrisc/include/asm/unistd.h                 |   5 -
 arch/score/include/asm/unistd.h                    |   5 -
 arch/tile/include/asm/unistd.h                     |   5 -
 arch/unicore32/include/asm/unistd.h                |   4 -
 include/asm-generic/Kbuild                         |  35 -
 include/asm-generic/bitsperlong.h                  |  13 +-
 include/asm-generic/int-l64.h                      |  26 +-
 include/asm-generic/int-ll64.h                     |  31 +-
 include/asm-generic/ioctl.h                        |  95 +--
 include/asm-generic/kvm_para.h                     |   5 +-
 include/asm-generic/param.h                        |  17 +-
 include/asm-generic/resource.h                     |  66 +-
 include/asm-generic/siginfo.h                      | 297 +------
 include/asm-generic/signal.h                       | 117 +--
 include/asm-generic/statfs.h                       |  81 +-
 include/asm-generic/termios.h                      |  49 +-
 include/asm-generic/unistd.h                       | 911 +--------------------
 include/linux/Kbuild                               |   9 +-
 include/uapi/asm-generic/Kbuild                    |  35 +
 include/{ =&amp;gt; uapi}/asm-generic/auxvec.h            |   0
 include/uapi/asm-generic/bitsperlong.h             |  15 +
 include/{ =&amp;gt; uapi}/asm-generic/errno-base.h        |   0
 include/{ =&amp;gt; uapi}/asm-generic/errno.h             |   0
 include/{ =&amp;gt; uapi}/asm-generic/fcntl.h             |   0
 include/uapi/asm-generic/int-l64.h                 |  34 +
 include/uapi/asm-generic/int-ll64.h                |  39 +
 include/uapi/asm-generic/ioctl.h                   |  98 +++
 include/{ =&amp;gt; uapi}/asm-generic/ioctls.h            |   0
 include/{ =&amp;gt; uapi}/asm-generic/ipcbuf.h            |   0
 include/{ =&amp;gt; uapi}/asm-generic/mman-common.h       |   0
 include/{ =&amp;gt; uapi}/asm-generic/mman.h              |   0
 include/{ =&amp;gt; uapi}/asm-generic/msgbuf.h            |   0
 include/uapi/asm-generic/param.h                   |  19 +
 include/{ =&amp;gt; uapi}/asm-generic/poll.h              |   0
 include/{ =&amp;gt; uapi}/asm-generic/posix_types.h       |   0
 include/uapi/asm-generic/resource.h                |  68 ++
 include/{ =&amp;gt; uapi}/asm-generic/sembuf.h            |   0
 include/{ =&amp;gt; uapi}/asm-generic/setup.h             |   0
 include/{ =&amp;gt; uapi}/asm-generic/shmbuf.h            |   0
 include/{ =&amp;gt; uapi}/asm-generic/shmparam.h          |   0
 include/uapi/asm-generic/siginfo.h                 | 298 +++++++
 include/{ =&amp;gt; uapi}/asm-generic/signal-defs.h       |   0
 include/uapi/asm-generic/signal.h                  | 123 +++
 include/{ =&amp;gt; uapi}/asm-generic/socket.h            |   0
 include/{ =&amp;gt; uapi}/asm-generic/sockios.h           |   0
 include/{ =&amp;gt; uapi}/asm-generic/stat.h              |   0
 include/uapi/asm-generic/statfs.h                  |  83 ++
 include/{ =&amp;gt; uapi}/asm-generic/swab.h              |   0
 include/{ =&amp;gt; uapi}/asm-generic/termbits.h          |   0
 include/uapi/asm-generic/termios.h                 |  50 ++
 include/{ =&amp;gt; uapi}/asm-generic/types.h             |   0
 include/{ =&amp;gt; uapi}/asm-generic/ucontext.h          |   0
 include/uapi/asm-generic/unistd.h                  | 902 ++++++++++++++++++++
 security/apparmor/Makefile                         |   2 +-
 85 files changed, 2595 insertions(+), 2542 deletions(-)
 create mode 100644 arch/blackfin/include/uapi/asm/bfin_sport.h
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/byteorder.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/cachectl.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/fcntl.h (100%)
 create mode 100644 arch/blackfin/include/uapi/asm/fixed_code.h
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/ioctls.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/kvm_para.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/poll.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/posix_types.h (100%)
 create mode 100644 arch/blackfin/include/uapi/asm/ptrace.h
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/sigcontext.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/siginfo.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/signal.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/stat.h (100%)
 rename arch/blackfin/include/{ =&amp;gt; uapi}/asm/swab.h (100%)
 create mode 100644 arch/blackfin/include/uapi/asm/unistd.h
 delete mode 100644 arch/c6x/include/asm/signal.h
 rename include/{ =&amp;gt; uapi}/asm-generic/auxvec.h (100%)
 create mode 100644 include/uapi/asm-generic/bitsperlong.h
 rename include/{ =&amp;gt; uapi}/asm-generic/errno-base.h (100%)
 rename include/{ =&amp;gt; uapi}/asm-generic/errno.h (100%)
 rename include/{ =&amp;gt; uapi}/asm-generic/fcntl.h (100%)
 create mode 100644 include/uapi/asm-generic/int-l64.h
 create mode 100644 include/uapi/asm-generic/int-ll64.h
 create mode 100644 include/uapi/asm-generic/ioctl.h
 rename include/{ =&amp;gt; uapi}/asm-generic/ioctls.h (100%)
 rename include/{ =&amp;gt; uapi}/asm-generic/ipcbuf.h (100%)
 create mode 100644 include/uapi/asm-generic/kvm_para.h
 rename include/{ =&amp;gt; uapi}/asm-generic/mman-common.h (100%)
 rename include/{ =&amp;gt; uapi}/asm-generic/mman.h (100%)
 rename include/{ =&amp;gt; uapi}/asm-generic/msgbuf.h (100%)
 create mode 100644 include/uapi/asm-generic/param.h
 rename include/{ =&amp;gt; uapi}/asm-generic/poll.h (100%)
 rename include/{ =&amp;gt; uapi}/asm-generic/posix_types.h (100%)
 create mode 100644 include/uapi/asm-generic/resource.h
 rename include/{ =&amp;gt; uapi}/asm-generic/sembuf.h (100%)
 rename include/{ =&amp;gt; uapi}/asm-generic/setup.h (100%)
 rename include/{ =&amp;gt; uapi}/asm-generic/shmbuf.h (100%)
 rename include/{ =&amp;gt; uapi}/asm-generic/shmparam.h (100%)
 create mode 100644 include/uapi/asm-generic/siginfo.h
 rename include/{ =&amp;gt; uapi}/asm-generic/signal-defs.h (100%)
 create mode 100644 include/uapi/asm-generic/signal.h
 rename include/{ =&amp;gt; uapi}/asm-generic/socket.h (100%)
 rename include/{ =&amp;gt; uapi}/asm-generic/sockios.h (100%)
 rename include/{ =&amp;gt; uapi}/asm-generic/stat.h (100%)
 create mode 100644 include/uapi/asm-generic/statfs.h
 rename include/{ =&amp;gt; uapi}/asm-generic/swab.h (100%)
 rename include/{ =&amp;gt; uapi}/asm-generic/termbits.h (100%)
 create mode 100644 include/uapi/asm-generic/termios.h
 rename include/{ =&amp;gt; uapi}/asm-generic/types.h (100%)
 rename include/{ =&amp;gt; uapi}/asm-generic/ucontext.h (100%)
 create mode 100644 include/uapi/asm-generic/unistd.h
.
&lt;/pre&gt;</description>
    <dc:creator>David Howells</dc:creator>
    <dc:date>2012-10-04T19:51:09</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6681">
    <title>[GIT PULL] Blackfin updates for 3.6-rc6</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6681</link>
    <description>&lt;pre&gt;Hi Linus,

Please pull blackfin updates for 3.6-rc6, one kbuild and a smp build fix.

Thanks,
-Bob

The following changes since commit 0d7614f09c1ebdbaa1599a5aba7593f147bf96ee:

  Linux 3.6-rc1 (2012-08-02 16:38:10 -0700)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/lliubbo/blackfin.git for-linus

for you to fetch changes up to 5ec683d2667636f79618bfe7670438d2848c95cc:

  kbuild: add symbol prefix arg to kallsyms (2012-09-07 17:54:56 +0800)

----------------------------------------------------------------
James Hogan (1):
      kbuild: add symbol prefix arg to kallsyms

Steven Miao (1):
      blackfin: smp: adapt to generic smp helpers

 arch/blackfin/Kconfig           |    1 +
 arch/blackfin/Makefile          |    1 -
 arch/blackfin/include/asm/smp.h |    2 +
 arch/blackfin/mach-common/smp.c |  223 ++++++++++++---------------------------
 scripts/link-vmlinux.sh         |    7 +-
 5 files changed, 75 insertions(+), 159 deletions(-)
&lt;/pre&gt;</description>
    <dc:creator>Bob Liu</dc:creator>
    <dc:date>2012-09-11T02:18:56</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6634">
    <title>[PATCH] drivers: net: irda: bfin_sir: fixcompile error</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6634</link>
    <description>&lt;pre&gt;From: Sonic Zhang &amp;lt;sonic.zhang-OyLXuOCK7orQT0dZR+AlfA&amp;lt; at &amp;gt;public.gmane.org&amp;gt;

Bit IREN is replaced by UMOD_IRDA and UMOD_MASK since blackfin 60x added, but
this driver didn't update which will cause bfin_sir build error:

drivers/net/irda/bfin_sir.c:161:9: error: 'IREN' undeclared (first use in this
function)
drivers/net/irda/bfin_sir.c:435:18: error: 'IREN' undeclared (first use in
this function)
drivers/net/irda/bfin_sir.c:521:11: error: 'IREN' undeclared (first use in
this function)

This patch fix it.

Signed-off-by: Sonic Zhang &amp;lt;sonic.zhang-OyLXuOCK7orQT0dZR+AlfA&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
Signed-off-by: Bob Liu &amp;lt;lliubbo-Re5JQEeQqe8AvxtiuMwx3w&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 drivers/net/irda/bfin_sir.c |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/net/irda/bfin_sir.c b/drivers/net/irda/bfin_sir.c
index a561ae4..c6a0299 100644
--- a/drivers/net/irda/bfin_sir.c
+++ b/drivers/net/irda/bfin_sir.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -158,7 +158,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static int bfin_sir_set_speed(struct bfin_sir_port *port, int speed)
 /* If not add the 'RPOLC', we can't catch the receive interrupt.
  * It's related with the HW layout and the IR transiver.
  */
-val |= IREN | RPOLC;
+val |= UMOD_IRDA | RPOLC;
 UART_PUT_GCTL(port, val);
 return ret;
 }
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -432,7 +432,7 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void bfin_sir_shutdown(struct bfin_sir_port *port, struct net_device *dev
 bfin_sir_stop_rx(port);
 
 val = UART_GET_GCTL(port);
-val &amp;amp;= ~(UCEN | IREN | RPOLC);
+val &amp;amp;= ~(UCEN | UMOD_MASK | RPOLC);
 UART_PUT_GCTL(port, val);
 
 #ifdef CONFIG_SIR_BFIN_DMA
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -518,10 +518,10 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void bfin_sir_send_work(struct work_struct *work)
  * reset all the UART.
  */
 val = UART_GET_GCTL(port);
-val &amp;amp;= ~(IREN | RPOLC);
+val &amp;amp;= ~(UMOD_MASK | RPOLC);
 UART_PUT_GCTL(port, val);
 SSYNC();
-val |= IREN | RPOLC;
+val |= UMOD_IRDA | RPOLC;
 UART_PUT_GCTL(port, val);
 SSYNC();
 /* bfin_sir_set_speed(port, self-&amp;gt;speed); */
&lt;/pre&gt;</description>
    <dc:creator>Bob Liu</dc:creator>
    <dc:date>2012-07-30T06:44:12</dc:date>
  </item>
  <item rdf:about="http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6578">
    <title>[PATCH 1/8 v2] i2c: i2c-bfin-twi: Illegal i2cbus lock upon certain transfer scenarios.</title>
    <link>http://comments.gmane.org/gmane.linux.hardware.blackfin.kernel.devel/6578</link>
    <description>&lt;pre&gt;From: Michael Hennerich &amp;lt;michael.hennerich-OyLXuOCK7orQT0dZR+AlfA&amp;lt; at &amp;gt;public.gmane.org&amp;gt;

For transfer counts &amp;gt; 255 bytes i2c-bfin-twi sets the data
transfer counter DCNT to 0xFF indicating unlimited transfers.
It then uses a flag iface-&amp;gt;manual_stop to manually issue the STOP
condition, once the required amount of bytes are received.

We found that on I2C receive operation issuing the STOP condition
together with a FULL RCV FIFO (2bytes) will cause SDA and SCL be
constantly driven low.

Temporary workaround until further investigation:
Discard the RCV FIFO before issuing the STOP condition.

Signed-off-by: Michael Hennerich &amp;lt;michael.hennerich-OyLXuOCK7orQT0dZR+AlfA&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
Signed-off-by: Sonic Zhang &amp;lt;sonic.zhang-OyLXuOCK7orQT0dZR+AlfA&amp;lt; at &amp;gt;public.gmane.org&amp;gt;
---
 drivers/i2c/busses/i2c-bfin-twi.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/drivers/i2c/busses/i2c-bfin-twi.c b/drivers/i2c/busses/i2c-bfin-twi.c
index cdb59e5..33031f0 100644
--- a/drivers/i2c/busses/i2c-bfin-twi.c
+++ b/drivers/i2c/busses/i2c-bfin-twi.c
&amp;lt; at &amp;gt;&amp;lt; at &amp;gt; -131,6 +131,10 &amp;lt; at &amp;gt;&amp;lt; at &amp;gt; static void bfin_twi_handle_interrupt(struct bfin_twi_iface *iface,
 iface-&amp;gt;transPtr++;
 iface-&amp;gt;readNum--;
 } else if (iface-&amp;gt;manual_stop) {
+/* Temporary workaround to avoid possible bus stall -
+ * Flush FIFO before issuing the STOP condition
+ */
+read_RCV_DATA16(iface);
 write_MASTER_CTL(iface,
 read_MASTER_CTL(iface) | STOP);
 } else if (iface-&amp;gt;cur_mode == TWI_I2C_MODE_REPEAT &amp;amp;&amp;amp;
&lt;/pre&gt;</description>
    <dc:creator>Sonic Zhang</dc:creator>
    <dc:date>2012-06-13T08:22:40</dc:date>
  </item>
  <textinput rdf:about="http://search.gmane.org/?group=$group=gmane.linux.hardware.blackfin.kernel.devel">
    <title>Search Engine</title>
    <description>Search the mailing list at Gmane</description>
    <name>query</name>
    <link>http://search.gmane.org/?group=$group=gmane.linux.hardware.blackfin.kernel.devel</link>
  </textinput>
</rdf:RDF>
