Commit 355fb4e3 authored by Sergei Shtylyov's avatar Sergei Shtylyov Committed by Kevin Hilman

DaVinci: rename setup_usb() to davinci_setup_usb()

Rename setup_usb() into davinci_setup_usb().  While at it:

- move its declaration from <mach/common.h> to more fitting <mach/usb.h>;
- teach it to handle values of the 'mA' parameter greater than 510 and thus
  pass 1000 instead of 500 for the power switches capable of sourcing over 1 A;
- teach it to handle odd values of the 'potpgt_ms' parameter...
Signed-off-by: default avatarSergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: default avatarKevin Hilman <khilman@deeprootsystems.com>
parent 990c09d5
...@@ -27,11 +27,11 @@ ...@@ -27,11 +27,11 @@
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
#include <mach/dm355.h> #include <mach/dm355.h>
#include <mach/common.h>
#include <mach/i2c.h> #include <mach/i2c.h>
#include <mach/serial.h> #include <mach/serial.h>
#include <mach/nand.h> #include <mach/nand.h>
#include <mach/mmc.h> #include <mach/mmc.h>
#include <mach/usb.h>
#define DAVINCI_ASYNC_EMIF_CONTROL_BASE 0x01e10000 #define DAVINCI_ASYNC_EMIF_CONTROL_BASE 0x01e10000
#define DAVINCI_ASYNC_EMIF_DATA_CE0_BASE 0x02000000 #define DAVINCI_ASYNC_EMIF_DATA_CE0_BASE 0x02000000
...@@ -338,7 +338,7 @@ static __init void dm355_evm_init(void) ...@@ -338,7 +338,7 @@ static __init void dm355_evm_init(void)
gpio_request(2, "usb_id_toggle"); gpio_request(2, "usb_id_toggle");
gpio_direction_output(2, USB_ID_VALUE); gpio_direction_output(2, USB_ID_VALUE);
/* irlml6401 switches over 1A in under 8 msec */ /* irlml6401 switches over 1A in under 8 msec */
setup_usb(500, 8); davinci_setup_usb(1000, 8);
davinci_setup_mmc(0, &dm355evm_mmc_config); davinci_setup_mmc(0, &dm355evm_mmc_config);
davinci_setup_mmc(1, &dm355evm_mmc_config); davinci_setup_mmc(1, &dm355evm_mmc_config);
......
...@@ -24,11 +24,11 @@ ...@@ -24,11 +24,11 @@
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
#include <mach/dm355.h> #include <mach/dm355.h>
#include <mach/common.h>
#include <mach/i2c.h> #include <mach/i2c.h>
#include <mach/serial.h> #include <mach/serial.h>
#include <mach/nand.h> #include <mach/nand.h>
#include <mach/mmc.h> #include <mach/mmc.h>
#include <mach/usb.h>
#define DAVINCI_ASYNC_EMIF_CONTROL_BASE 0x01e10000 #define DAVINCI_ASYNC_EMIF_CONTROL_BASE 0x01e10000
#define DAVINCI_ASYNC_EMIF_DATA_CE0_BASE 0x02000000 #define DAVINCI_ASYNC_EMIF_DATA_CE0_BASE 0x02000000
...@@ -263,7 +263,7 @@ static __init void dm355_leopard_init(void) ...@@ -263,7 +263,7 @@ static __init void dm355_leopard_init(void)
gpio_request(2, "usb_id_toggle"); gpio_request(2, "usb_id_toggle");
gpio_direction_output(2, USB_ID_VALUE); gpio_direction_output(2, USB_ID_VALUE);
/* irlml6401 switches over 1A in under 8 msec */ /* irlml6401 switches over 1A in under 8 msec */
setup_usb(500, 8); davinci_setup_usb(1000, 8);
davinci_setup_mmc(0, &dm355leopard_mmc_config); davinci_setup_mmc(0, &dm355leopard_mmc_config);
davinci_setup_mmc(1, &dm355leopard_mmc_config); davinci_setup_mmc(1, &dm355leopard_mmc_config);
......
...@@ -36,6 +36,7 @@ ...@@ -36,6 +36,7 @@
#include <mach/mux.h> #include <mach/mux.h>
#include <mach/nand.h> #include <mach/nand.h>
#include <mach/mmc.h> #include <mach/mmc.h>
#include <mach/usb.h>
#define DM644X_EVM_PHY_MASK (0x2) #define DM644X_EVM_PHY_MASK (0x2)
#define DM644X_EVM_MDIO_FREQUENCY (2200000) /* PHY bus frequency */ #define DM644X_EVM_MDIO_FREQUENCY (2200000) /* PHY bus frequency */
...@@ -465,7 +466,7 @@ evm_u35_setup(struct i2c_client *client, int gpio, unsigned ngpio, void *c) ...@@ -465,7 +466,7 @@ evm_u35_setup(struct i2c_client *client, int gpio, unsigned ngpio, void *c)
/* irlml6401 switches over 1A, in under 8 msec; /* irlml6401 switches over 1A, in under 8 msec;
* now it can be managed by nDRV_VBUS ... * now it can be managed by nDRV_VBUS ...
*/ */
setup_usb(500, 8); davinci_setup_usb(1000, 8);
return 0; return 0;
} }
......
...@@ -40,6 +40,7 @@ ...@@ -40,6 +40,7 @@
#include <mach/i2c.h> #include <mach/i2c.h>
#include <mach/serial.h> #include <mach/serial.h>
#include <mach/mux.h> #include <mach/mux.h>
#include <mach/usb.h>
#define SFFSDR_PHY_MASK (0x2) #define SFFSDR_PHY_MASK (0x2)
#define SFFSDR_MDIO_FREQUENCY (2200000) /* PHY bus frequency */ #define SFFSDR_MDIO_FREQUENCY (2200000) /* PHY bus frequency */
...@@ -152,7 +153,7 @@ static __init void davinci_sffsdr_init(void) ...@@ -152,7 +153,7 @@ static __init void davinci_sffsdr_init(void)
davinci_serial_init(&uart_config); davinci_serial_init(&uart_config);
soc_info->emac_pdata->phy_mask = SFFSDR_PHY_MASK; soc_info->emac_pdata->phy_mask = SFFSDR_PHY_MASK;
soc_info->emac_pdata->mdio_max_freq = SFFSDR_MDIO_FREQUENCY; soc_info->emac_pdata->mdio_max_freq = SFFSDR_MDIO_FREQUENCY;
setup_usb(0, 0); /* We support only peripheral mode. */ davinci_setup_usb(0, 0); /* We support only peripheral mode. */
/* mux VLYNQ pins */ /* mux VLYNQ pins */
davinci_cfg_reg(DM644X_VLYNQEN); davinci_cfg_reg(DM644X_VLYNQEN);
......
...@@ -20,12 +20,6 @@ extern void davinci_irq_init(void); ...@@ -20,12 +20,6 @@ extern void davinci_irq_init(void);
extern void __iomem *davinci_intc_base; extern void __iomem *davinci_intc_base;
extern int davinci_intc_type; extern int davinci_intc_type;
/* parameters describe VBUS sourcing for host mode */
extern void setup_usb(unsigned mA, unsigned potpgt_msec);
/* parameters describe VBUS sourcing for host mode */
extern void setup_usb(unsigned mA, unsigned potpgt_msec);
struct davinci_timer_instance { struct davinci_timer_instance {
void __iomem *base; void __iomem *base;
u32 bottom_irq; u32 bottom_irq;
......
...@@ -54,4 +54,6 @@ struct da8xx_ohci_root_hub { ...@@ -54,4 +54,6 @@ struct da8xx_ohci_root_hub {
u8 potpgt; u8 potpgt;
}; };
void davinci_setup_usb(unsigned mA, unsigned potpgt_ms);
#endif /* ifndef __ASM_ARCH_USB_H */ #endif /* ifndef __ASM_ARCH_USB_H */
...@@ -83,10 +83,10 @@ static struct platform_device usb_dev = { ...@@ -83,10 +83,10 @@ static struct platform_device usb_dev = {
.num_resources = ARRAY_SIZE(usb_resources), .num_resources = ARRAY_SIZE(usb_resources),
}; };
void __init setup_usb(unsigned mA, unsigned potpgt_msec) void __init davinci_setup_usb(unsigned mA, unsigned potpgt_ms)
{ {
usb_data.power = mA / 2; usb_data.power = mA > 510 ? 255 : mA / 2;
usb_data.potpgt = potpgt_msec / 2; usb_data.potpgt = (potpgt_ms + 1) / 2;
if (cpu_is_davinci_dm646x()) { if (cpu_is_davinci_dm646x()) {
/* Override the defaults as DM6467 uses different IRQs. */ /* Override the defaults as DM6467 uses different IRQs. */
...@@ -100,7 +100,7 @@ void __init setup_usb(unsigned mA, unsigned potpgt_msec) ...@@ -100,7 +100,7 @@ void __init setup_usb(unsigned mA, unsigned potpgt_msec)
#else #else
void __init setup_usb(unsigned mA, unsigned potpgt_msec) void __init davinci_setup_usb(unsigned mA, unsigned potpgt_ms)
{ {
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment