diff --git a/drivers/net/xilinx_emaclite.c b/drivers/net/xilinx_emaclite.c
index bb4fb01a55a380de25dc4dd2d79cd6c018fa9374..ac3dae13ba77bdab3cf8d1d7fc1fd33142fbae5b 100644
--- a/drivers/net/xilinx_emaclite.c
+++ b/drivers/net/xilinx_emaclite.c
@@ -342,7 +342,7 @@ static int emaclite_recv(struct eth_device *dev)
 
 }
 
-int xilinx_emaclite_initialize (bd_t *bis, int base_addr)
+int xilinx_emaclite_initialize(bd_t *bis, unsigned long base_addr)
 {
 	struct eth_device *dev;
 	struct xemaclite *emaclite;
@@ -366,7 +366,7 @@ int xilinx_emaclite_initialize (bd_t *bis, int base_addr)
 	emaclite->rxpp = 1;
 #endif
 
-	sprintf(dev->name, "Xelite.%x", base_addr);
+	sprintf(dev->name, "Xelite.%lx", base_addr);
 
 	dev->iobase = base_addr;
 	dev->init = emaclite_init;
diff --git a/include/netdev.h b/include/netdev.h
index 669f60b7e4737f133ff670e38cb9931baaf2ddd2..a6246777fd67f87173d3e955a13f73ed35f5e7c7 100644
--- a/include/netdev.h
+++ b/include/netdev.h
@@ -97,7 +97,7 @@ int uli526x_initialize(bd_t *bis);
 int armada100_fec_register(unsigned long base_addr);
 int xilinx_axiemac_initialize(bd_t *bis, unsigned long base_addr,
 							unsigned long dma_addr);
-int xilinx_emaclite_initialize (bd_t *bis, int base_addr);
+int xilinx_emaclite_initialize(bd_t *bis, unsigned long base_addr);
 
 /* Boards with PCI network controllers can call this from their board_eth_init()
  * function to initialize whatever's on board.