]> git.sur5r.net Git - u-boot/blobdiff - drivers/net/macb.c
input: Correct key_matrix fdt decoding
[u-boot] / drivers / net / macb.c
index 6a58a374b2e97c08f77f94de8967c45506d111aa..0e1ced71c507441d1d2101b3b35e979bba6a4414 100644 (file)
@@ -167,7 +167,7 @@ static u16 macb_mdio_read(struct macb_device *macb, u8 reg)
 
 #if defined(CONFIG_CMD_MII)
 
-int macb_miiphy_read(char *devname, u8 phy_adr, u8 reg, u16 *value)
+int macb_miiphy_read(const char *devname, u8 phy_adr, u8 reg, u16 *value)
 {
        struct eth_device *dev = eth_get_dev_by_name(devname);
        struct macb_device *macb = to_macb(dev);
@@ -180,7 +180,7 @@ int macb_miiphy_read(char *devname, u8 phy_adr, u8 reg, u16 *value)
        return 0;
 }
 
-int macb_miiphy_write(char *devname, u8 phy_adr, u8 reg, u16 value)
+int macb_miiphy_write(const char *devname, u8 phy_adr, u8 reg, u16 value)
 {
        struct eth_device *dev = eth_get_dev_by_name(devname);
        struct macb_device *macb = to_macb(dev);
@@ -197,8 +197,7 @@ int macb_miiphy_write(char *devname, u8 phy_adr, u8 reg, u16 value)
 
 #if defined(CONFIG_CMD_NET)
 
-static int macb_send(struct eth_device *netdev, volatile void *packet,
-                    int length)
+static int macb_send(struct eth_device *netdev, void *packet, int length)
 {
        struct macb_device *macb = to_macb(netdev);
        unsigned long paddr, ctrl;
@@ -365,7 +364,7 @@ static int macb_phy_find(struct macb_device *macb)
        }
 
        /* PHY isn't up to snuff */
-       printf("%s: PHY not found", macb->netdev.name);
+       printf("%s: PHY not found\n", macb->netdev.name);
 
        return 0;
 }
@@ -469,17 +468,19 @@ static int macb_init(struct eth_device *netdev, bd_t *bd)
 
        /* choose RMII or MII mode. This depends on the board */
 #ifdef CONFIG_RMII
-#if defined(CONFIG_AT91CAP9) || defined(CONFIG_AT91SAM9260) || \
-    defined(CONFIG_AT91SAM9263) || defined(CONFIG_AT91SAM9G20) || \
-       defined(CONFIG_AT91SAM9G45) || defined(CONFIG_AT91SAM9M10G45)
+#if    defined(CONFIG_AT91CAP9) || defined(CONFIG_AT91SAM9260) || \
+       defined(CONFIG_AT91SAM9263) || defined(CONFIG_AT91SAM9G20) || \
+       defined(CONFIG_AT91SAM9G45) || defined(CONFIG_AT91SAM9M10G45) || \
+       defined(CONFIG_AT91SAM9XE) || defined(CONFIG_AT91SAM9X5)
        macb_writel(macb, USRIO, MACB_BIT(RMII) | MACB_BIT(CLKEN));
 #else
        macb_writel(macb, USRIO, 0);
 #endif
 #else
-#if defined(CONFIG_AT91CAP9) || defined(CONFIG_AT91SAM9260) || \
-    defined(CONFIG_AT91SAM9263) || defined(CONFIG_AT91SAM9G20) || \
-       defined(CONFIG_AT91SAM9G45) || defined(CONFIG_AT91SAM9M10G45)
+#if    defined(CONFIG_AT91CAP9) || defined(CONFIG_AT91SAM9260) || \
+       defined(CONFIG_AT91SAM9263) || defined(CONFIG_AT91SAM9G20) || \
+       defined(CONFIG_AT91SAM9G45) || defined(CONFIG_AT91SAM9M10G45) || \
+       defined(CONFIG_AT91SAM9XE) || defined(CONFIG_AT91SAM9X5)
        macb_writel(macb, USRIO, MACB_BIT(CLKEN));
 #else
        macb_writel(macb, USRIO, MACB_BIT(MII));
@@ -520,9 +521,10 @@ static int macb_write_hwaddr(struct eth_device *dev)
        u16 hwaddr_top;
 
        /* set hardware address */
-       hwaddr_bottom = cpu_to_le32(*((u32 *)dev->enetaddr));
+       hwaddr_bottom = dev->enetaddr[0] | dev->enetaddr[1] << 8 |
+                       dev->enetaddr[2] << 16 | dev->enetaddr[3] << 24;
        macb_writel(macb, SA1B, hwaddr_bottom);
-       hwaddr_top = cpu_to_le16(*((u16 *)(dev->enetaddr + 4)));
+       hwaddr_top = dev->enetaddr[4] | dev->enetaddr[5] << 8;
        macb_writel(macb, SA1T, hwaddr_top);
        return 0;
 }