summaryrefslogtreecommitdiffstats
path: root/firmware/target/arm/s5l8700
AgeCommit message (Collapse)AuthorFilesLines
2020-07-24Fix two variable-set-but-not-used warningsSolomon Peachy1-0/+4
(found using -Os with gcc494 on the nano2g) Change-Id: If0deee3e3cde50e6bf5aff595bebc0f134dcc393
2020-07-09FS#12082: Add Tuner support to the Nano2G (Bertrik Sikken)Solomon Peachy1-1/+1
(The serial portions of the patch were already present, this just pulls in the tuner enablements) Change-Id: I8090e318f34835769ac0a56d7a48b9250631eb4f
2017-10-26Unify storage threads into oneMichael Sevakis2-36/+41
* Editing a bunch of drivers' thread routines in order to implement a new feature is tedious. * No matter the number of storage drivers, they share one thread. No extra threads needed for CONFIG_STORAGE_MULTI. * Each has an event callback called by the storage thread. * A default callback is provided to fake sleeping in order to trigger idle callbacks. It could also do other default processing. Changes to it will be part of driver code without editing each one. * Drivers may sleep and wake as they please as long as they give a low pulse on their storage bit to ask to go into sleep mode. Idle callback is called on its behalf and driver immediately put into sleep mode. * Drivers may indicate they are to continue receiving events in USB mode, otherwise they receve nothing until disconnect (they do receive SYS_USB_DISCONNECTED no matter what). * Rework a few things to keep the callback implementation sane and maintainable. ata.c was dreadful with all those bools; make it a state machine and easier to follow. Remove last_user_activity; it has no purpose that isn't served by keeping the disk active through last_disk_activity instead. * Even-out stack sizes partly because of a lack of a decent place to define them by driver or SoC or whatever; it doesn't seem too critical to do that anyway. Many are simply too large while at least one isn't really adequate. They may be individually overridden if necessary (figure out where). The thread uses the greatest size demanded. Newer file code is much more frugal with stack space. I barely see use crack 50% after idle callbacks (usually mid-40s). Card insert/eject doesn't demand much. * No forcing of idle callbacks. If it isn't necessary for one or more non-disk storage types, it really isn't any more necessary for disk storage. Besides, it makes the whole thing easier to implement. Change-Id: Id30c284d82a8af66e47f2cfe104c52cbd8aa7215
2017-01-26Move intrinsic RTC implmentation differences to driver filesMichael Sevakis1-1/+4
Some drivers set tm_wday just fine and do not need it coerced to be correct. Others set tm_yday, so don't overwrite what the driver sets; just zero it inside if it can't fill the field. Move calls to set_day_of_week() to the sorts of drivers that presumably required the hammer (FS#11814) in get_time() where the weekday isn't locked to the date. Change-Id: Idd0ded6bfc9d9f48fcc1a6074068164c42fcf24a
2016-08-02iPod Nano 2G: use the new USB DesignWare driverCástor Muñoz2-117/+138
Change-Id: I8d1561bf4e239b55617a8d5075457a668e0c312c
2016-06-10iPod Nano2G: clear external interrupts at startupCástor Muñoz1-5/+17
Fixes some ROLO issues after commit 9a4cd2e. Note that other ROLO issues still persist. Change-Id: I8e0c60519902013694c5a473dcb9fc62a6ff079c
2016-05-28iPod Classic: fix typos / cosmeticCástor Muñoz1-1/+1
Change-Id: Ic6552dea4b300032875097ef0b885a4ae059f4bc
2016-05-26iPod Classic: use PMU interrupts to detect USB and FWCástor Muñoz1-2/+30
Change-Id: I9be733e1a943ddeb99335d362f81f74879eeb94b
2016-05-14iPod Nano2G: add IPOD_ACCESSORY_PROTOCOLCástor Muñoz3-6/+136
Change-Id: I78a19972624504bc802d96b9b8e9cec132164c2c
2016-05-13iPod Nano2G: add HAVE_SERIALCástor Muñoz2-0/+135
Change-Id: I46dca69c6708d3e6189f66e70badf0a594bac00b
2016-05-13Add UART suuport for s5l8700 and s5l8701Cástor Muñoz4-12/+344
Add UART support for s5l8700/1 using the UC870X UART controller, actually the functionallity is disabled and must be enabled for each individual target. Tested on iPod Nano 2G (s5l8701), not tested on s5l8700. Change-Id: Ic0f216bb871502d355a70e4b658e536a2c0976a9
2016-02-14iPod Nano 2G and Classic: Fix power and charging detection.Michael Sparmann2-3/+13
This should allow FireWire charging to work on these devices. It also adds charging state detection on the iPod Classic. (cherry picked from commit fa86fec4fb089b47f5c2c3b1f2f3dbc97551895b) On Classic (and probably Nano 2G), it seems that the 100/500mA limit applies only to USB chargers, when FW is connected it supplies all the power (even if USB is also connected) and USB current limit does not affect to FW charging, therefore the limit is only set when USB is connected. Change-Id: I7c6bab1b6a0f295367999c45faeda6085c3fb091 Signed-off-by: Cástor Muñoz <cmvidal@gmail.com>
2015-01-12Get rid of stupid _backlight_* function namesMarcin Bukat5-30/+30
_remote_backlight_* and _buttonlight_* are cleaned as well Change-Id: I73653752831bbe170c26ba95d3bc04c2e3a5cf30
2015-01-11Improve readability by adding parenthesisThomas Jarosch1-1/+1
Change-Id: Iff51ab441a59f1ba842132b809a49d1fe7232e05
2014-03-03Fix last warnings.Thomas Martitz1-1/+0
Change-Id: If0a7e11c3e107cb7756c0d70ed5b17fda92b166e
2014-01-05Add missing kernel.h includes (hopefully all of them).Thomas Martitz1-0/+1
Change-Id: I9c1825296a788587b8d494d8514b3314847b0ff0
2013-08-17Cleanup MV/MD macros a little.Michael Sevakis1-3/+3
When using variadic macros there's no need for IF_MD2/IF_MV2 to deal with function parameters. IF_MD/IF_MV are enough. Throw in IF_MD_DRV/ID_MV_VOL that return the parameter if MD/MV, or 0 if not. Change-Id: I7605e6039f3be19cb47110c84dcb3c5516f2c3eb
2012-05-07remove debug-target.hRafaël Carré1-0/+0
2012-04-06arm: factor all exception handlers out of the crt0.S filesAmaury Pouly1-30/+0
Remove the implementations of all exceptions handlers from the various crt0.S files and have a single implementation in system-arm.h The new implementation is weak so that it can be overwritten by some specific code (like the unwinder) Change-Id: Ib3e041ed6037376bbe0e79286057e1051640dd90 Reviewed-on: http://gerrit.rockbox.org/205 Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
2012-03-30usb-nano2g-6g: missing brace in non-default preprocessor pathRafaël Carré1-0/+1
Change-Id: Iacf6719e58b927bb619d469048e16797cae5cecd
2012-03-04Tweak some PCM drivers for less typecasting with the data pointer.Michael Sevakis1-5/+5
Yeah, sizeof (void) here with GCC is 1. If something has a problem with that, we'll set it straight. Change-Id: I9ad3eee75dd440f6404a04a501d1533c8bc18ba9
2012-03-03Revise the PCM callback system after adding multichannel audio.Michael Sevakis1-4/+5
Additional status callback is added to pcm_play/rec_data instead of using a special function to set it. Status includes DMA error reporting to the status callback. Playback and recording callback become more alike except playback uses "const void **addr" (because the data should not be altered) and recording uses "void **addr". "const" is put in place throughout where appropriate. Most changes are fairly trivial. One that should be checked in particular because it isn't so much is telechips, if anyone cares to bother. PP5002 is not so trivial either but that tested as working. Change-Id: I4928d69b3b3be7fb93e259f81635232df9bd1df2 Reviewed-on: http://gerrit.rockbox.org/166 Reviewed-by: Michael Sevakis <jethead71@rockbox.org> Tested-by: Michael Sevakis <jethead71@rockbox.org>
2012-02-28lcd drivers: Convert lcd_[remote_]framebuffer to a pointerJonathan Gordon4-6/+6
Change all lcd drivers to using a pointer to the static framebuffer instead of directly accessing the static array. This will let us later do fun things like dynamic framebuffer sizes (RaaA) or ability to use different buffers for different layers (dynamic skin backdrops!) Change-Id: I0a4d58a9d7b55e6c932131b929e5d4c9f9414b06
2012-01-08button-target.h : move prototypes to button.hRafaël Carré5-42/+0
no need to define BUTTON_REMOTE anymore git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31620 a1c6a512-1295-4272-9138-f99709370657
2012-01-04s5l8700: move debug-target.h content to .cRafaël Carré2-28/+2
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31567 a1c6a512-1295-4272-9138-f99709370657
2012-01-04dbg_hw_info(): remove duplicate prototypesRafaël Carré1-5/+0
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31560 a1c6a512-1295-4272-9138-f99709370657
2012-01-04dbg_ports(): remove duplicate prototypeRafaël Carré2-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31558 a1c6a512-1295-4272-9138-f99709370657
2012-01-03Rework powermgmt to enable code re-use on appliation and sims.Thomas Martitz3-3/+3
* Introduce CONFIG_BATTERY_MEASURE define, to allow targets (application) to break powermgmt.c's assumption about the ability to read battery voltage. There's now additionally percentage (android) and remaining time measure (maemo). No measure at all also works (sdl app). If voltage can't be measured, then battery_level() is king and it'll be used for power_history and runtime estimation. * Implement target's API in the simulator, i.e. _battery_voltage(), so it doesn't need to implement it's own powermgmt.c and other stubs. Now the sim behaves much more like a native target, although it still changes the simulated battery voltage quickly, * Other changes include include renaming battery_adc_voltage() to _battery_voltage(), for consistency with the new target functions and making some of the apps code aware that voltage and runtime estimation is not always available. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31548 a1c6a512-1295-4272-9138-f99709370657
2011-12-31usb-target.h: removeRafaël Carré2-1/+0
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31498 a1c6a512-1295-4272-9138-f99709370657
2011-12-31usb_init_device(): move prototype to usb.hRafaël Carré1-24/+0
Get rid of some usb-target.h files git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31487 a1c6a512-1295-4272-9138-f99709370657
2011-12-31usb-s3c6400x: move usb_init_deviceRafaël Carré1-0/+37
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31478 a1c6a512-1295-4272-9138-f99709370657
2011-12-31usb-s3c6400x.c: move usb_detect and usb_enableRafaël Carré1-0/+51
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31477 a1c6a512-1295-4272-9138-f99709370657
2011-12-21Make more local functions static.Boris Gjenero2-2/+2
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31395 a1c6a512-1295-4272-9138-f99709370657
2011-12-17Swap red and yellow for green on r31339's cranky builds.Michael Sevakis2-5/+5
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31340 a1c6a512-1295-4272-9138-f99709370657
2011-12-17Get the linker files that slipped through in r31337.Michael Sevakis2-9/+8
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31338 a1c6a512-1295-4272-9138-f99709370657
2011-11-16Fix the gpl notice in the previous commits new files, and fix the yelow ↵Jonathan Gordon2-4/+8
gevearts naughtily ignored git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30996 a1c6a512-1295-4272-9138-f99709370657
2011-11-16Finally commit FS#5111 - piezo clicker for ipods!Jonathan Gordon2-0/+119
Origional implementation by Robert Keevil with contributions from Frederik Vestre, Stoyan Stratev, Craig Elliott, Michael Sparmann, Thomas Schott, Rosso Maltese, and syncs from a bunch of other people! git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30995 a1c6a512-1295-4272-9138-f99709370657
2011-11-06Bulk convert all DOS line endings to UNIX.Torne Wuff1-308/+308
For the git migration we want a nice clean repository with UNIX line endings. git does not use svn:eol-style, we just need the file contents to be sane. Sorry everybody. I know this messes up blame. Scumbag *NIX developer says migrating to git will make line ending issues go away; commits giant change to svn which changes line endings anyway. :) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30924 a1c6a512-1295-4272-9138-f99709370657
2011-10-11Switch to SYS mode on arm FS#12322 by meMarcin Bukat1-15/+19
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30741 a1c6a512-1295-4272-9138-f99709370657
2011-09-01Shuffle some functions around so that interfacing with playback.c in ↵Michael Sevakis1-1/+1
particular isn't required. Though playback does finish the audio init, pcm doesn't care who does it. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30403 a1c6a512-1295-4272-9138-f99709370657
2011-06-29Commit FS#12150 - Fully-functional audio mixer - and finally whip old ↵Michael Sevakis1-2/+15
limitations about playback of voice and other sounds when paused. Channels are independent in state and amplitude. Fade on stop/pause is handled by the channel's volume control rather than global volume which means it now works from anywhere. Opens up the possibility of plugin sounds during music playback by merely adding an additional channel enum. If any PCM drivers were not properly modified, see one of the last comments in the task for a description of the simple change that is expected. Some params are tunable in firmware/export/pcm-mixer.h as well. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30097 a1c6a512-1295-4272-9138-f99709370657
2011-06-08Remove superfluous executable bits on a bunch of files.Torne Wuff2-0/+0
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29986 a1c6a512-1295-4272-9138-f99709370657
2011-06-05Move dbg_hw_info() into target tree. FS#11735 by meMarcin Bukat2-3/+3
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29964 a1c6a512-1295-4272-9138-f99709370657
2011-04-22Fix issues with iPod nano 2G displays reported on the forums. The voltage ↵Andree Buschmann1-1/+1
supply seems to be too low for several LCDs. The buzz of the display is still significantly lower than with OF. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29764 a1c6a512-1295-4272-9138-f99709370657
2011-03-02Merge functionality of wakeups and semaphores-- fewer APIs and object types. ↵Michael Sevakis2-8/+8
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-02-27iPod Classic CE-ATA Support (Part 4 of 4: S5L8702 ATA driver)Michael Sparmann1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29448 a1c6a512-1295-4272-9138-f99709370657
2011-01-03Remove files accidentally commited in 28953Michael Sparmann2-119/+0
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28959 a1c6a512-1295-4272-9138-f99709370657
2011-01-02New port: iPod Classic (also known as iPod 6G/6.5G/7G)Michael Sparmann2-0/+119
Major known issues: - No bootloader yet - No support for the first-generation 160GB CE-ATA hard disk drive yet - Audio playback is slow, only FLAC seems to reach realtime git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28953 a1c6a512-1295-4272-9138-f99709370657
2011-01-01Fix comment.Andree Buschmann1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28940 a1c6a512-1295-4272-9138-f99709370657
2011-01-01Save some binsize in LCD driver of iPod nano 2G. No impact to speed.Andree Buschmann1-44/+25
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28938 a1c6a512-1295-4272-9138-f99709370657