summaryrefslogtreecommitdiffstats
path: root/firmware/target/sh/archos/recorder/usb-recorder.c
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2007-04-11 20:44:32 +0000
committerJens Arnold <amiconn@rockbox.org>2007-04-11 20:44:32 +0000
commitfad79dc6364e1e0d42216f4636a4fc504a594307 (patch)
tree37e17308c021f63c69f63fa8658c572d879dcce2 /firmware/target/sh/archos/recorder/usb-recorder.c
parentdfa9f440349d7532423373b2bac5993ee5e958a9 (diff)
downloadrockbox-fad79dc6364e1e0d42216f4636a4fc504a594307.tar.gz
rockbox-fad79dc6364e1e0d42216f4636a4fc504a594307.zip
Moved archos USB handling to target tree. Minor simplification for coldfire (only one usb-target.h).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13110 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/sh/archos/recorder/usb-recorder.c')
-rw-r--r--firmware/target/sh/archos/recorder/usb-recorder.c46
1 files changed, 46 insertions, 0 deletions
diff --git a/firmware/target/sh/archos/recorder/usb-recorder.c b/firmware/target/sh/archos/recorder/usb-recorder.c
new file mode 100644
index 0000000000..2934b32a3c
--- /dev/null
+++ b/firmware/target/sh/archos/recorder/usb-recorder.c
@@ -0,0 +1,46 @@
+/***************************************************************************
+ * __________ __ ___.
+ * Open \______ \ ____ ____ | | _\_ |__ _______ ___
+ * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
+ * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
+ * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
+ * \/ \/ \/ \/ \/
+ * $Id$
+ *
+ * Copyright (C) 2007 by Jens Arnold
+ *
+ * All files in this archive are subject to the GNU General Public License.
+ * See the file COPYING in the source tree root for full license agreement.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ****************************************************************************/
+#include "config.h"
+#include <stdbool.h>
+#include "adc.h"
+#include "cpu.h"
+#include "hwcompat.h"
+#include "system.h"
+
+bool usb_detect(void)
+{
+ return (adc_read(ADC_USB_POWER) > 500) ? true : false;
+}
+
+void usb_enable(bool on)
+{
+ if(read_hw_mask() & USB_ACTIVE_HIGH)
+ on = !on;
+
+ if(on)
+ and_b(~0x04, &PADRH); /* enable USB */
+ else
+ or_b(0x04, &PADRH);
+}
+
+void usb_init_device(void)
+{
+ usb_enable(false);
+ or_b(0x04, &PAIORH);
+}