From: Anatolij Gustschin Date: Wed, 12 Oct 2011 02:31:39 +0000 (+0000) Subject: consolidate mdelay by providing a common function for all users X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=c4c9fbebae6a62d538817d0ccee698adaafc5d66;p=project%2Fbcm63xx%2Fu-boot.git consolidate mdelay by providing a common function for all users There are several mdelay() definitions in the driver and board code. Remove them all and provide a common mdelay() in lib/time.c. Signed-off-by: Anatolij Gustschin Acked-by: Mike Frysinger --- diff --git a/arch/arm/cpu/arm920t/s3c24x0/usb_ohci.c b/arch/arm/cpu/arm920t/s3c24x0/usb_ohci.c index 9a0bbaeb4c..263d2ce65d 100644 --- a/arch/arm/cpu/arm920t/s3c24x0/usb_ohci.c +++ b/arch/arm/cpu/arm920t/s3c24x0/usb_ohci.c @@ -1540,7 +1540,6 @@ static int hc_start(struct ohci *ohci) writel(RH_HS_LPSC, &ohci->regs->roothub.status); #endif /* OHCI_USE_NPS */ -#define mdelay(n) ({unsigned long msec=(n); while (msec--) udelay(1000);}) /* POTPGT delay is bits 24-31, in 2 ms units. */ mdelay((roothub_a(ohci) >> 23) & 0x1fe); diff --git a/arch/mips/cpu/mips32/au1x00/au1x00_usb_ohci.c b/arch/mips/cpu/mips32/au1x00/au1x00_usb_ohci.c index 0bc2305d87..866dd6cfe4 100644 --- a/arch/mips/cpu/mips32/au1x00/au1x00_usb_ohci.c +++ b/arch/mips/cpu/mips32/au1x00/au1x00_usb_ohci.c @@ -1448,7 +1448,6 @@ static int hc_start (ohci_t * ohci) writel (RH_HS_LPSC, &ohci->regs->roothub.status); #endif /* OHCI_USE_NPS */ -#define mdelay(n) ({unsigned long msec=(n); while (msec--) udelay(1000);}) /* POTPGT delay is bits 24-31, in 2 ms units. */ mdelay ((roothub_a (ohci) >> 23) & 0x1fe); diff --git a/arch/powerpc/cpu/mpc5xxx/usb_ohci.c b/arch/powerpc/cpu/mpc5xxx/usb_ohci.c index 7976e4df7d..2fc1180b78 100644 --- a/arch/powerpc/cpu/mpc5xxx/usb_ohci.c +++ b/arch/powerpc/cpu/mpc5xxx/usb_ohci.c @@ -1455,7 +1455,6 @@ static int hc_start (ohci_t * ohci) writel (RH_HS_LPSC, &ohci->regs->roothub.status); #endif /* OHCI_USE_NPS */ -#define mdelay(n) ({unsigned long msec=(n); while (msec--) udelay(1000);}) /* POTPGT delay is bits 24-31, in 2 ms units. */ mdelay ((roothub_a (ohci) >> 23) & 0x1fe); diff --git a/arch/powerpc/cpu/ppc4xx/usb_ohci.c b/arch/powerpc/cpu/ppc4xx/usb_ohci.c index a9edacd330..fe091e3fa0 100644 --- a/arch/powerpc/cpu/ppc4xx/usb_ohci.c +++ b/arch/powerpc/cpu/ppc4xx/usb_ohci.c @@ -1462,7 +1462,6 @@ static int hc_start (ohci_t * ohci) writel (RH_HS_LPSC, &ohci->regs->roothub.status); #endif /* OHCI_USE_NPS */ -#define mdelay(n) ({unsigned long msec=(n); while (msec--) udelay(1000);}) /* POTPGT delay is bits 24-31, in 2 ms units. */ mdelay ((roothub_a (ohci) >> 23) & 0x1fe); diff --git a/arch/powerpc/include/asm/4xx_pcie.h b/arch/powerpc/include/asm/4xx_pcie.h index 90e0bd98fa..fbdc28e0a5 100644 --- a/arch/powerpc/include/asm/4xx_pcie.h +++ b/arch/powerpc/include/asm/4xx_pcie.h @@ -389,14 +389,6 @@ static inline int is_end_point(int port) return 0; } -static inline void mdelay(int n) -{ - u32 ms = n; - - while (ms--) - udelay(1000); -} - #if defined(PCIE0_SDR) static inline u32 sdr_base(int port) { diff --git a/board/amcc/taishan/lcd.c b/board/amcc/taishan/lcd.c index 7f7730a81d..8208ef3955 100644 --- a/board/amcc/taishan/lcd.c +++ b/board/amcc/taishan/lcd.c @@ -35,8 +35,6 @@ #define LCD_DATA_ADDR ((volatile char *)(CONFIG_SYS_EBC2_LCM_BASE+1)) #define LCD_BLK_CTRL ((volatile char *)(CONFIG_SYS_EBC1_FPGA_BASE+0x2)) -#define mdelay(t) ({unsigned long msec=(t); while (msec--) { udelay(1000);}}) - static int g_lcd_init_b = 0; static char *amcc_logo = " AMCC TAISHAN 440GX EvalBoard"; static char addr_flag = 0x80; diff --git a/board/freescale/mx35pdk/mx35pdk.c b/board/freescale/mx35pdk/mx35pdk.c index 9eefe5ee16..8f9b857334 100644 --- a/board/freescale/mx35pdk/mx35pdk.c +++ b/board/freescale/mx35pdk/mx35pdk.c @@ -46,8 +46,6 @@ #error "CONFIG_BOARD_EARLY_INIT_F must be set for this board" #endif -#define mdelay(n) ({unsigned long msec = (n); while (msec--) udelay(1000); }) - DECLARE_GLOBAL_DATA_PTR; int dram_init(void) diff --git a/board/karo/tx25/tx25.c b/board/karo/tx25/tx25.c index 307ffd0cbe..ec83f997cc 100644 --- a/board/karo/tx25/tx25.c +++ b/board/karo/tx25/tx25.c @@ -31,12 +31,6 @@ #include #include -static void mdelay(int n) -{ - while (n-- > 0) - udelay(1000); -} - DECLARE_GLOBAL_DATA_PTR; #ifdef CONFIG_FEC_MXC diff --git a/board/linkstation/hwctl.c b/board/linkstation/hwctl.c index 9fd56ae234..d2090be1ad 100644 --- a/board/linkstation/hwctl.c +++ b/board/linkstation/hwctl.c @@ -19,8 +19,6 @@ #include #include -#define mdelay(n) udelay((n)*1000) - #define AVR_PORT CONFIG_SYS_NS16550_COM2 /* 2005.5.10 BUFFALO add */ diff --git a/drivers/block/fsl_sata.c b/drivers/block/fsl_sata.c index b101bd7640..6b3517369d 100644 --- a/drivers/block/fsl_sata.c +++ b/drivers/block/fsl_sata.c @@ -50,13 +50,6 @@ static struct fsl_sata_info fsl_sata_info[] = { #endif }; -static inline void mdelay(unsigned long msec) -{ - unsigned long i; - for (i = 0; i < msec; i++) - udelay(1000); -} - static inline void sdelay(unsigned long sec) { unsigned long i; diff --git a/drivers/block/ftide020.c b/drivers/block/ftide020.c index 2eef3e939a..4a7a07f60b 100644 --- a/drivers/block/ftide020.c +++ b/drivers/block/ftide020.c @@ -54,8 +54,6 @@ #define WRITE_CMD(x) outl((x), &ftide020->cmd_fifo) /* 0x04 */ #define READ_STATUS() inl(&ftide020->cmd_fifo) /* 0x04 */ -#define mdelay(n) ({unsigned long msec = (n); while (msec--) udelay(1000); }) - void ftide_set_device(int cx8, int dev) { static struct ftide020_s *ftide020 = (struct ftide020_s *) FTIDE_BASE; diff --git a/drivers/net/e1000.c b/drivers/net/e1000.c index 98145bc6ed..01bdf814fd 100644 --- a/drivers/net/e1000.c +++ b/drivers/net/e1000.c @@ -50,7 +50,6 @@ tested on both gig copper and gig fiber boards #define virt_to_bus(devno, v) pci_virt_to_mem(devno, (void *) (v)) #define bus_to_phys(devno, a) pci_mem_to_phys(devno, a) -#define mdelay(n) udelay((n)*1000) #define E1000_DEFAULT_PCI_PBA 0x00000030 #define E1000_DEFAULT_PCIE_PBA 0x000a0026 diff --git a/drivers/net/ftgmac100.c b/drivers/net/ftgmac100.c index 821840f8e9..0af0c3450f 100644 --- a/drivers/net/ftgmac100.c +++ b/drivers/net/ftgmac100.c @@ -33,8 +33,6 @@ #define ETH_ZLEN 60 -#define mdelay(n) ({unsigned long msec = (n); while (msec--) udelay(1000); }) - /* RBSR - hw default init value is also 0x640 */ #define RBSR_DEFAULT_VALUE 0x640 diff --git a/drivers/net/ne2000.c b/drivers/net/ne2000.c index 7a85314eb9..39391580fe 100644 --- a/drivers/net/ne2000.c +++ b/drivers/net/ne2000.c @@ -78,7 +78,6 @@ Add SNMP /* NE2000 base header file */ #include "ne2000_base.h" -#define mdelay(n) udelay((n)*1000) /* find prom (taken from pc_net_cs.c from Linux) */ #include "8390.h" diff --git a/drivers/net/ne2000_base.c b/drivers/net/ne2000_base.c index f93f932277..f0cd2b62eb 100644 --- a/drivers/net/ne2000_base.c +++ b/drivers/net/ne2000_base.c @@ -77,7 +77,6 @@ Add SNMP #include #include -#define mdelay(n) udelay((n)*1000) /* forward definition of function used for the uboot interface */ void uboot_push_packet_len(int len); void uboot_push_tx_done(int key, int val); diff --git a/drivers/net/smc911x.c b/drivers/net/smc911x.c index a677fd487a..e34b4879d0 100644 --- a/drivers/net/smc911x.c +++ b/drivers/net/smc911x.c @@ -35,8 +35,6 @@ u32 pkt_data_pull(struct eth_device *dev, u32 addr) \ void pkt_data_push(struct eth_device *dev, u32 addr, u32 val) \ __attribute__ ((weak, alias ("smc911x_reg_write"))); -#define mdelay(n) udelay((n)*1000) - static void smc911x_handle_mac_address(struct eth_device *dev) { unsigned long addrh, addrl; diff --git a/drivers/usb/host/ohci-hcd.c b/drivers/usb/host/ohci-hcd.c index c20d706427..60c9595268 100644 --- a/drivers/usb/host/ohci-hcd.c +++ b/drivers/usb/host/ohci-hcd.c @@ -1749,7 +1749,6 @@ static int hc_start(ohci_t *ohci) ohci_writel(RH_HS_LPSC, &ohci->regs->roothub.status); #endif /* OHCI_USE_NPS */ -#define mdelay(n) ({unsigned long msec = (n); while (msec--) udelay(1000); }) /* POTPGT delay is bits 24-31, in 2 ms units. */ mdelay((roothub_a(ohci) >> 23) & 0x1fe); diff --git a/drivers/usb/host/sl811-hcd.c b/drivers/usb/host/sl811-hcd.c index 82a8b365f4..c713d421c6 100644 --- a/drivers/usb/host/sl811-hcd.c +++ b/drivers/usb/host/sl811-hcd.c @@ -51,8 +51,6 @@ #define SL811_ADR (0x50000000) #define SL811_DAT (0x50000001) -#define mdelay(n) ({unsigned long msec=(n); while (msec--) udelay(1000);}) - #ifdef SL811_DEBUG static int debug = 9; #endif diff --git a/include/common.h b/include/common.h index e3ef66d893..ccd3dd785a 100644 --- a/include/common.h +++ b/include/common.h @@ -706,6 +706,7 @@ int strcmp_compar(const void *, const void *); /* lib/time.c */ void udelay (unsigned long); +void mdelay(unsigned long); /* lib/uuid.c */ void uuid_str_to_bin(const char *uuid, unsigned char *out); diff --git a/lib/time.c b/lib/time.c index a309c2613a..6e2937b8e7 100644 --- a/lib/time.c +++ b/lib/time.c @@ -41,3 +41,9 @@ void udelay(unsigned long usec) usec -= kv; } while(usec); } + +void mdelay(unsigned long msec) +{ + while (msec--) + udelay(1000); +}