There is a bug in cpsw_probe() where we do:
	ndev->irq = platform_get_irq(pdev, 0);
	if (ndev->irq < 0) {
The problem is that "ndev->irq" is unsigned so the error handling
doesn't work.  I have changed it to a regular int.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
        unsigned long           mem_end;        /* shared mem end       */
        unsigned long           mem_start;      /* shared mem start     */
        unsigned long           base_addr;      /* device I/O address   */
-       unsigned int            irq;            /* device IRQ number    */
+       int                     irq;            /* device IRQ number    */
 
        /*
         *      Some hardware also needs these fields, but they are not