diff options
author | Frank Gevaerts <frank@gevaerts.be> | 2012-01-04 21:55:09 +0000 |
---|---|---|
committer | Frank Gevaerts <frank@gevaerts.be> | 2012-01-04 21:55:09 +0000 |
commit | 4fcffcbdf34fc7a619c0626f8478cf06cdf1a043 (patch) | |
tree | ad3a951e3ec9566b315807af8ab4045529c8878c /firmware/export | |
parent | fd5524ff92b49d9fb14d3feaca4d26d86a05b2b2 (diff) | |
download | rockbox-4fcffcbdf34fc7a619c0626f8478cf06cdf1a043.tar.gz rockbox-4fcffcbdf34fc7a619c0626f8478cf06cdf1a043.zip |
Reorganise USB initialisation to not depend on a specific enumeration sequence, by Bartosz Fabianowski, with minor tweaks by Michael Sevakis (FS#12497)
FreeBSD apparently sends a SET_ADDRESS first, which confused our code.
This patch fixes that, and also simplifies the connection handling a bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31582 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/export')
-rw-r--r-- | firmware/export/config.h | 10 | ||||
-rw-r--r-- | firmware/export/usb.h | 3 | ||||
-rw-r--r-- | firmware/export/usb_drv.h | 1 |
3 files changed, 5 insertions, 9 deletions
diff --git a/firmware/export/config.h b/firmware/export/config.h index 85c83015bd..9af8b1f70d 100644 --- a/firmware/export/config.h +++ b/firmware/export/config.h | |||
@@ -787,7 +787,7 @@ Lyre prototype 1 */ | |||
787 | /* Priority in bootloader is wanted */ | 787 | /* Priority in bootloader is wanted */ |
788 | #define HAVE_PRIORITY_SCHEDULING | 788 | #define HAVE_PRIORITY_SCHEDULING |
789 | #define USB_STATUS_BY_EVENT | 789 | #define USB_STATUS_BY_EVENT |
790 | #define USB_DETECT_BY_CORE | 790 | #define USB_DETECT_BY_REQUEST |
791 | #if defined(HAVE_USBSTACK) && CONFIG_USBOTG == USBOTG_ARC | 791 | #if defined(HAVE_USBSTACK) && CONFIG_USBOTG == USBOTG_ARC |
792 | #define INCLUDE_TIMEOUT_API | 792 | #define INCLUDE_TIMEOUT_API |
793 | #define USB_DRIVER_CLOSE | 793 | #define USB_DRIVER_CLOSE |
@@ -815,17 +815,17 @@ Lyre prototype 1 */ | |||
815 | #ifdef HAVE_USBSTACK | 815 | #ifdef HAVE_USBSTACK |
816 | #if CONFIG_USBOTG == USBOTG_ARC | 816 | #if CONFIG_USBOTG == USBOTG_ARC |
817 | #define USB_STATUS_BY_EVENT | 817 | #define USB_STATUS_BY_EVENT |
818 | #define USB_DETECT_BY_CORE | 818 | #define USB_DETECT_BY_REQUEST |
819 | #define INCLUDE_TIMEOUT_API | 819 | #define INCLUDE_TIMEOUT_API |
820 | #elif CONFIG_USBOTG == USBOTG_AS3525 | 820 | #elif CONFIG_USBOTG == USBOTG_AS3525 |
821 | #define USB_STATUS_BY_EVENT | 821 | #define USB_STATUS_BY_EVENT |
822 | #define USB_DETECT_BY_CORE | 822 | #define USB_DETECT_BY_REQUEST |
823 | #elif CONFIG_USBOTG == USBOTG_S3C6400X /* FIXME */ && CONFIG_CPU == AS3525v2 | 823 | #elif CONFIG_USBOTG == USBOTG_S3C6400X /* FIXME */ && CONFIG_CPU == AS3525v2 |
824 | #define USB_STATUS_BY_EVENT | 824 | #define USB_STATUS_BY_EVENT |
825 | #define USB_DETECT_BY_CORE | 825 | #define USB_DETECT_BY_REQUEST |
826 | #elif CONFIG_USBOTG == USBOTG_RK27XX | 826 | #elif CONFIG_USBOTG == USBOTG_RK27XX |
827 | #define USB_STATUS_BY_EVENT | 827 | #define USB_STATUS_BY_EVENT |
828 | #define USB_DETECT_BY_CORE | 828 | #define USB_DETECT_BY_REQUEST |
829 | #endif /* CONFIG_USB == */ | 829 | #endif /* CONFIG_USB == */ |
830 | #endif /* HAVE_USBSTACK */ | 830 | #endif /* HAVE_USBSTACK */ |
831 | 831 | ||
diff --git a/firmware/export/usb.h b/firmware/export/usb.h index 4af5617b3e..8954e9cc59 100644 --- a/firmware/export/usb.h +++ b/firmware/export/usb.h | |||
@@ -39,9 +39,6 @@ enum | |||
39 | USB_EXTRACTED = 0, /* Event+State */ | 39 | USB_EXTRACTED = 0, /* Event+State */ |
40 | USB_INSERTED, /* Event+State */ | 40 | USB_INSERTED, /* Event+State */ |
41 | USB_POWERED, /* State - transitional indicator if no power */ | 41 | USB_POWERED, /* State - transitional indicator if no power */ |
42 | #ifdef USB_DETECT_BY_CORE | ||
43 | USB_HOSTED, /* Event - host presence was detected */ | ||
44 | #endif | ||
45 | #if (CONFIG_STORAGE & STORAGE_MMC) | 42 | #if (CONFIG_STORAGE & STORAGE_MMC) |
46 | USB_REENABLE, /* Event */ | 43 | USB_REENABLE, /* Event */ |
47 | #endif | 44 | #endif |
diff --git a/firmware/export/usb_drv.h b/firmware/export/usb_drv.h index c0b4d561f2..969a7b358a 100644 --- a/firmware/export/usb_drv.h +++ b/firmware/export/usb_drv.h | |||
@@ -24,7 +24,6 @@ | |||
24 | #include "kernel.h" | 24 | #include "kernel.h" |
25 | 25 | ||
26 | void usb_drv_startup(void); | 26 | void usb_drv_startup(void); |
27 | void usb_drv_usb_detect_event(void); /* Target implemented */ | ||
28 | void usb_drv_int_enable(bool enable); /* Target implemented */ | 27 | void usb_drv_int_enable(bool enable); /* Target implemented */ |
29 | void usb_drv_init(void); | 28 | void usb_drv_init(void); |
30 | void usb_drv_exit(void); | 29 | void usb_drv_exit(void); |