Cástor Muñoz
96a7603bf9
nano2g: fix dangerous mutex in hold switch
...
This is a quick patch to solve FS#13104, we can not disable the
clickwheel LDO from within interrupt code, so for the moment we
leave it enabled all the time, it is unknown how power comsumption
is affected when the hold switch is locked.
Change-Id: I8f675702e2b5becbcd9197c8b044e6b8daeea79f
2017-02-04 16:30:08 +01:00
Cástor Muñoz
d8989b15b7
iPod Classic: use PMU interrupts to detect hold switch
...
Finally the hold switch workaround is removed and it is detected
in the same way as OF does.
Change-Id: Iceac6ca48ffd131b8ee9f62ffdc2b3e30eb02042
2016-05-26 02:15:28 +02:00
Cástor Muñoz
348bfc5c8f
iPod Classic: clickwheel fixes
...
Uses GPIO.E2 (Request To Send) to detect the holdswitch status,
it is a temporal workaround that seems to work on all models.
Holdswitch status must be detected to drive low GPIO.E2 (RTS)
and GPIO.E4 (Data Out) when the holdswitch is locked, otherwise
battery life decreases about 25%.
Holdswitch unlock action is detected by reading the HELLO message
that the external wheel controller sends when it is powered on,
this allows to quickly capture clickwheel activity after unlock.
GPIO.E2 is also used in case the HELLO message is missed because
the holdswitch was unlocked before Rockbox/bootloader starts.
These 2 lines (RTS and DOUT) can not be used to transmit messages
to the external clickwheel controller, not a problem, actually no
messages are sent while normal operation, only at initialization
stage.
Change-Id: I415fe54bfcbc2086d0f56d7affe6f789ce81a6db
2015-12-17 10:26:51 +01:00
Steffen Butzer
f5e2c25cb8
iPod Classic: Fix bidirectional clickwheel communication.
...
This restores functionality that was broken in g#194 and committed as
revision 7ec426e497
.
Bidirectional communication is required to ask the clickwheel controller
for the initial button state during boot. Otherwise our driver would only
know about pressed buttons when the first change event is received,
which is too late for e.g. prevention of USB connection during boot.
This fix is also required to support the selection of OF, Rockbox,
Disk Mode, etc. in the iPod Classic Rockbox bootloader.
Change-Id: I127d54cf9e630d8075dd6d66f95dacb2816bfbc8
Reviewed-on: http://gerrit.rockbox.org/938
Reviewed-by: Michael Sparmann <theseven@gmx.net>
Tested: Michael Sparmann <theseven@gmx.net>
Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
2014-10-02 12:56:37 +02:00
Cástor Muñoz
a75b5b83d4
Classic/6G: click wheel controller powersave
...
Mask click wheel controller clock gate when the hold switch is in
the locked position
Change-Id: I9de33db189afdb76cc5057e4c0e7efc587cf762b
2012-03-31 01:18:15 +02:00
Cástor Muñoz
7ec426e497
Classic/6G: hold switch detection using GPIO
...
Configures GPIO ports to detect holdswitch status instead of
polling the PMU via I2C, this fixes some random crashes
Change-Id: I407c9ca4c2c9203842f9e774b1c8d0455d59048c
Reviewed-on: http://gerrit.rockbox.org/194
Reviewed-by: Michael Giacomelli <giac2000@hotmail.com>
2012-03-28 00:51:22 +02:00
Bertrik Sikken
e71750b7a3
Make local functions and variables static where possible
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30897 a1c6a512-1295-4272-9138-f99709370657
2011-11-03 23:32:49 +00:00
Bertrik Sikken
0dfce1972b
ipod6g: make functions and variables static where possible
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29767 a1c6a512-1295-4272-9138-f99709370657
2011-04-22 21:39:17 +00:00
Michael Sevakis
12375d1d3a
Merge functionality of wakeups and semaphores-- fewer APIs and object types. semaphore_wait takes a timeout now so codecs and plugins have to be made incompatible. Don't make semaphores for targets not using them.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29492 a1c6a512-1295-4272-9138-f99709370657
2011-03-02 08:49:38 +00:00
Michael Sparmann
40e76916cd
iPod Nano2g/Classic clickwheel: Configure GPIO pins as Hi-Z while hold switch is engaged
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29276 a1c6a512-1295-4272-9138-f99709370657
2011-02-10 19:13:30 +00:00
Michael Sparmann
6f9d2ad130
Fix more red. Two had been hiding.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29274 a1c6a512-1295-4272-9138-f99709370657
2011-02-10 10:22:44 +00:00
Michael Sparmann
42c0c9a619
Fix red
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29273 a1c6a512-1295-4272-9138-f99709370657
2011-02-10 10:16:27 +00:00
Michael Sparmann
cd8e8419f7
iPod Nano 2G: Fix current leak through clickwheel GPIOs when clickwheel is powered down
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29272 a1c6a512-1295-4272-9138-f99709370657
2011-02-10 10:10:27 +00:00
Michael Sparmann
2db7f00255
iPod Classic: Fix current leak through clickwheel GPIOs when clickwheel is powered down
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29267 a1c6a512-1295-4272-9138-f99709370657
2011-02-10 00:14:21 +00:00
Michael Sparmann
acf54bed55
iPod Classic: This time really fix the hold switch. Read it out through the power manager, and cache the result for 100 milliseconds because the power manager doesn't like being spammed
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29264 a1c6a512-1295-4272-9138-f99709370657
2011-02-09 21:39:40 +00:00
Michael Sparmann
91f9b0b8ca
iPod Classic: Fix hold switch glitches
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29242 a1c6a512-1295-4272-9138-f99709370657
2011-02-07 18:53:17 +00:00
Michael Sparmann
0e773ad92c
Implement hold switch and headphone detection on iPod Classic
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29001 a1c6a512-1295-4272-9138-f99709370657
2011-01-07 23:08:01 +00:00
Michael Sparmann
22d790bd12
Fix headphone detection on iPod Nano 2G being inverted (regression from r28800)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28843 a1c6a512-1295-4272-9138-f99709370657
2010-12-16 19:54:24 +00:00
Michael Sparmann
7b3c7db486
iPod Nano 2G: Correct clickwheel interrupt handler name, this time consistently.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28807 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 12:40:37 +00:00
Andree Buschmann
951a519dc4
Fix bug introduced with r28800 (missing interrupt handler).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28806 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 11:41:50 +00:00
Michael Sparmann
70447b529c
usb-s3c6400x.[ch], button-clickwheel.c: Move s5l8701-specific parts to where they belong, prepare for s5l8702
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28800 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 00:52:02 +00:00
Michael Sparmann
c599da333e
Commit FS#11663 by me - Patch: iPod Nano 2G Bootloader: Boot OF if MENU button is held
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28237 a1c6a512-1295-4272-9138-f99709370657
2010-10-10 20:52:46 +00:00
Andree Buschmann
274c84fae9
Disable clickwheel power supply when hold button is active for iPod nano 2G.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28161 a1c6a512-1295-4272-9138-f99709370657
2010-09-25 21:41:10 +00:00
Andree Buschmann
7901505dc3
Higher responsiveness for iPod clickwheel acceleration.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25047 a1c6a512-1295-4272-9138-f99709370657
2010-03-06 15:53:45 +00:00
Michael Sparmann
4a63ac7c00
Add iPod Nano 2G µsec timer, and use it in the clickwheel driver.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23309 a1c6a512-1295-4272-9138-f99709370657
2009-10-21 18:53:41 +00:00
Michael Sparmann
5a4ce22b77
Fix the iPod Nano 2G clickwheel when releasing the hold switch
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23122 a1c6a512-1295-4272-9138-f99709370657
2009-10-12 00:12:02 +00:00
Dave Chapman
3c362fa8c6
Nano2G - implement "Pause on headphone unplug" feature
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23072 a1c6a512-1295-4272-9138-f99709370657
2009-10-10 15:37:05 +00:00
Dave Chapman
f5feb13cc5
Unify the button driver for the Nano 2G with the driver for earlier clickwheel ipods. The clickwheel hardware appears to be the same - the differences are just related to the hardware init and how the data is read.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22878 a1c6a512-1295-4272-9138-f99709370657
2009-10-02 23:04:30 +00:00
Dave Chapman
75e301dabb
Fix a comment so that it matches the code
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22718 a1c6a512-1295-4272-9138-f99709370657
2009-09-17 08:24:59 +00:00
Jonathan Gordon
d10f9511cf
Fix FS#5230 - reinit the opto-i2c after disabling hold so the buttons work again
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22078 a1c6a512-1295-4272-9138-f99709370657
2009-07-29 01:57:48 +00:00
Bertrik Sikken
0023943439
Fix duplicate #includes
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20977 a1c6a512-1295-4272-9138-f99709370657
2009-05-17 14:50:19 +00:00
Bertrik Sikken
dccdce6c3c
Remove unnecessary #include "adc.h"
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20791 a1c6a512-1295-4272-9138-f99709370657
2009-04-25 22:24:59 +00:00
Michael Giacomelli
70e9c7aed3
Commit FS#8624 by Linus Nielsen, Ryan Press, Craig Elliott, and Kenderes Tamas. Adds preliminary support for numerous accessories that use the ipod serial port on the dock connector. See IpodAccessories for a list of tested devices.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19585 a1c6a512-1295-4272-9138-f99709370657
2008-12-25 01:46:16 +00:00
Daniel Stenberg
2acc0ac542
Updated our source code header to explicitly mention that we are GPL v2 or
...
later. We still need to hunt down snippets used that are not. 1324 modified
files...
http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 18:10:04 +00:00
Michael Sevakis
fa5bd07f6b
Oops. Lost sync on a few instances and 'HI' registers.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17684 a1c6a512-1295-4272-9138-f99709370657
2008-06-03 05:19:32 +00:00
Andree Buschmann
e8df7c4904
Undo r17470 because of regressions in some debug menus.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17472 a1c6a512-1295-4272-9138-f99709370657
2008-05-12 15:37:03 +00:00
Andree Buschmann
0b81405225
Fix for FS#5162. Being able to read scrollwheel action via button_read_device() for iPod's and e200.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17470 a1c6a512-1295-4272-9138-f99709370657
2008-05-12 08:27:53 +00:00
Michael Giacomelli
054447f9e6
Commit FS#8379 by Andree Buschmann. Disables much of the remaining unneeded hardware on PP50xx targets (Ipods, Sansa, H10s, etc) resulting in a large savings in power and consequent increase in battery life. Results vary from target to target and from codec to codec, but we now approach the OF runtime on several PP devices. For now, leave base CPU clock at 30MHz, although further savings is possible with some codecs if clock is reduced. Additionally, fix battery capacity on c200 and use my measurements to improve runtime estimation for Sandisk targets.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16259 a1c6a512-1295-4272-9138-f99709370657
2008-02-10 05:39:20 +00:00
Linus Nielsen Feltzing
e75327b332
FS#7738 - Scroll wheel acceleration for iPod
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15681 a1c6a512-1295-4272-9138-f99709370657
2007-11-19 11:05:54 +00:00
Jens Arnold
11b06f0423
iPods: Touching the wheel now resets the poweroff timer, so the iPod no longer shuts down unexpectedly while operating the wheel only, e.g. in the text viewer.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12068 a1c6a512-1295-4272-9138-f99709370657
2007-01-18 22:10:29 +00:00
Michael Sevakis
4b902679cc
Convert queues to use intptr_t for event data and return values as most of the time pointer are not passed and it should make some things a bit cleaner.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11818 a1c6a512-1295-4272-9138-f99709370657
2006-12-19 16:50:07 +00:00
Daniel Ankers
5c6f32af95
Move iPod headphone detection into target tree (FS#6131 by Robert Keevil) and fix detection on 3G iPod
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11143 a1c6a512-1295-4272-9138-f99709370657
2006-10-07 12:19:34 +00:00
Barry Wardell
d4945dc0d0
Move all iPod targets into the target tree. FS#5890
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11129 a1c6a512-1295-4272-9138-f99709370657
2006-10-05 10:58:51 +00:00