sunxi: usb: Drop AXP-sepcific VBUS detection and drive logic

VBUS detection and enable is now be used with virtual AXP GPIOs, so all the USB
code has to use GPIO in every case and let sunxi_gpio do the heavy lifting.

Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
This commit is contained in:
Paul Kocialkowski
2015-03-22 18:07:10 +01:00
committed by Hans de Goede
parent f7c7ab636a
commit 5eaacb4340
4 changed files with 25 additions and 52 deletions

View File

@@ -238,38 +238,28 @@ static int sunxi_musb_init(struct musb *musb)
if (is_host_enabled(musb)) {
int vbus_det = sunxi_name_to_gpio(CONFIG_USB0_VBUS_DET);
#ifdef AXP_VBUS_DETECT
if (!strcmp(CONFIG_USB0_VBUS_DET, "axp_vbus_detect")) {
err = axp_get_vbus();
if (err < 0)
return err;
} else {
#endif
if (vbus_det == -1) {
eprintf("Error invalid Vusb-det pin\n");
return -EINVAL;
}
err = gpio_request(vbus_det, "vbus0_det");
if (err)
return err;
err = gpio_direction_input(vbus_det);
if (err) {
gpio_free(vbus_det);
return err;
}
err = gpio_get_value(vbus_det);
if (err < 0) {
gpio_free(vbus_det);
return -EIO;
}
gpio_free(vbus_det);
#ifdef AXP_VBUS_DETECT
if (vbus_det == -1) {
eprintf("Error invalid Vusb-det pin\n");
return -EINVAL;
}
#endif
err = gpio_request(vbus_det, "vbus0_det");
if (err)
return err;
err = gpio_direction_input(vbus_det);
if (err) {
gpio_free(vbus_det);
return err;
}
err = gpio_get_value(vbus_det);
if (err < 0) {
gpio_free(vbus_det);
return -EIO;
}
gpio_free(vbus_det);
if (err) {
eprintf("Error: A charger is plugged into the OTG\n");