summaryrefslogtreecommitdiff
path: root/firmware/export (follow)
Commit message (Collapse)AuthorAge
...
* scroll_engine: Major rework to support pixel-based scrolling and scroll ↵Thomas Martitz2013-12-14
| | | | | | | | | | | | | | | | | | | callbacks. Much of the scrolling work is moved from lcd-bitmap-common to lcd-scroll.c, a small scroll callback routine remains. This callback can potentially be overridden by more extensive scrollers. The callback also gets fed with pixel-based scrolling information, which finally removes the strict line-based nature of the scroll engine. Along with this is the change from scroll_stop_viewport_line() to scroll_stop_viewport_rect() which works on a pixel-based rectangle instead of lines. The ultimate goal is to move most of the scroll work to apps, which can much better decide which line decorations to apply etc. This work is laying the ground work. Change-Id: I3b2885cf7d8696ddd9253d5a9a73318d3d42831a
* scroll_engine: Add STYLE_NONE to allow for drawing lines without styling.Thomas Martitz2013-12-14
| | | | | | | This allows to draw lines without destroying styles that were drawn manually (e.g. from apps/) beforehand. Change-Id: I0de290c9343061efb115e1b76da5b76395c2b2af
* scroll_engine: Rename scroll_stop* functions to be more consistent with the ↵Thomas Martitz2013-12-14
| | | | | | lcd api. Change-Id: I8ada10b96bfb628cca0331689e8b936ae47c7e1c
* rmi/fuze+: add product info in the debug screenAmaury Pouly2013-12-08
| | | | Change-Id: Id06dbe0909e37587a45a2ebf5b0beab93cd44f61
* storage: fix MD vs MV confusionAmaury Pouly2013-12-06
| | | | Change-Id: If0e4b0ac8b24413b77f1d67293c652c6a0e01bbd
* fuze+: remove unused, duplicate code in config fileAmaury Pouly2013-12-06
| | | | Change-Id: Ia8116528ca65844322177531f14b2f6bbfb56719
* Initial commit for the YP-Z5 portLorenzo Miori2013-12-02
| | | | | | | | The port uses the imx233 soc, it's a STMP3650 based Samsung player Change-Id: I50b6d7e77fd292fab5ed26de87853cd5aaf9eaa4 Reviewed-on: http://gerrit.rockbox.org/490 Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
* Introduce volume_{present,removable} and fix invalid calls in apps/Amaury Pouly2013-11-20
| | | | | | | | | | The code was trying to probe for volume presence by calling drive layer with volume index. It is a miracle it get unnoticed so far. Introduce proper volume probing using the vol->drive map in the disk layer. Change-Id: I463a5bcc8170f007cad049536094207d2ba3c6fc Reviewed-on: http://gerrit.rockbox.org/669 Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
* Add IAP support to iPod Mini 1G.andypotter2013-11-20
| | | | | | | | Tested on iPod Mini 1G. Change-Id: I67ac9b7ed84c34533107136d0aa72e5ce3bcc5bc Reviewed-on: http://gerrit.rockbox.org/668 Reviewed-by: Frank Gevaerts <frank@gevaerts.be>
* sonynwz: rework keymap based on lebellium's work and enable volume in listAmaury Pouly2013-11-20
| | | | Change-Id: Ieb015e78d1c0aa74c61591e442bfdf5f883f3811
* Initial commit for the Creative ZEN VAmaury Pouly2013-11-18
| | | | Change-Id: I3408cfdf742ea5995d5c87bf76653f436e1ec2b0
* Updated IAP commands.Ralf Ertzinger2013-11-10
| | | | | | | | | | | | | | | | | | Originally written and uploaded by Lalufu (Ralf Ertzinger) in Feb 2012. They have been condensed into a single patch and some further additions by Andy Potter. Currently includes Authentication V2 support from iPod to Accessory, RF/BlueTooth transmitter support, selecting a playlist and selecting a track from the current playlist. Does not support uploading Album Art or podcasts. Has been tested on the following iPods, 4th Gen Grayscale, 4th Gen Color/Photo, Mini 2nd Gen, Nano 1st Gen and Video 5.5Gen. Change-Id: Ie8fc098361844132f0228ecbe3c48da948726f5e Co-Authored by: Andy Potter <liveboxandy@gmail.com> Reviewed-on: http://gerrit.rockbox.org/533 Reviewed-by: Frank Gevaerts <frank@gevaerts.be>
* zenxfi/zenmozaic: put HAVE_HEADPHONE_DETECTION in config fileAmaury Pouly2013-11-08
| | | | | | Otherwise it breaks the simulator build Change-Id: I816a34920283fc16e9c08ed6abe5fa41c0671f0a
* Introduce HiFi E.T. MA8/MA8C ports.Andrew Ryabinin2013-11-05
| | | | | | | | | HiFi E.T. MA8 is almost the same as MA9 except another DAC(pcm1792 in ma8, df1704 in ma9). MA8 has ILI9342 lcd, MA8C has ILI9342C lcd. Change-Id: If2ac04f5a3382590b2a392c46286559f54b2ed6a
* ma9: Slightly change df1704 driver API.Andrew Ryabinin2013-11-05
| | | | This change should be done for easier integration of ma8 port.
* Introduce HiFi E.T. MA9C port.Andrew Ryabinin2013-11-05
| | | | | | | The only difference between this target and HiFi E.T. MA9 is display driver (ILI9342 in MA9 and ILI9342c in MA9C) Change-Id: Icc3d2490f850902a653175360f12283f3708bbb7
* Forgot the config files for ZEN, ZEN Mozaic and ZEN X-FiAmaury Pouly2013-10-26
| | | | Change-Id: Id95d0078d7f4862e596d47ef1bdbfe75942c50fa
* zenxfi2: fix red by adding partition styleAmaury Pouly2013-10-22
| | | | Change-Id: Id5b8907b68d1913f8f36d7494d7e78b63562187c
* Initial commit for the Creative ZEN and ZEN X-FiAmaury Pouly2013-10-22
| | | | Change-Id: Ibd7b1b0b957ef11c200cb63eff7da53f11774748
* Initial commit for the Creative ZEN MozaicAmaury Pouly2013-10-22
| | | | Change-Id: Ib65aad9f5de37e514047955cad7ca40dc0af4f74
* imx233: extend partition window support to be more genericAmaury Pouly2013-10-22
| | | | | | | | The new code can select among several types of window (user, system, ...). Furthermore, the type of partitions to use is selectable in config file. Currently, two types are support: Freescale style MBR and Creative MBLK Change-Id: I969d60a3d08f2c9448fb4b9c440051b7801b94cd
* imx233: add package definesAmaury Pouly2013-10-21
| | | | | | | Currently we only support the BGA169 but if by chance Rockbox was to run on a lqfp package for example, some pins may becomes unavailable or different. Change-Id: I5c0d8d57ae31604572af37e0c2edd0bd7bda73a3
* Disable LCD_FLIP and MORSE_INPUT on recorder to make it build.Frank Gevaerts2013-10-18
| | | | | | | | Disabling these two settings makes the image small enough to build again. This build has been broken for long enough without any better solution actually being worked on, so I think this is much better than nothing. Change-Id: I77c34c1e714fb6e132ed0ce39f0917779efe1125
* Simulator for Samsung YP-R0Lorenzo Miori2013-09-29
| | | | | | | | | Enable simulator for the target ypr0 to be built and used. Change-Id: I1b080f07ab90f5c4856881d08ad70e1053bbb0c0 Reviewed-on: http://gerrit.rockbox.org/618 Reviewed-by: Frank Gevaerts <frank@gevaerts.be>
* Initial commit for the sony NWZ-E360 and NWZ-E370Amaury Pouly2013-09-25
| | | | Change-Id: I52d21e136a98eaf481615d641795cf7ecf325465
* fuze+: fix volume bottom limitJean-Louis Biasini2013-09-18
| | | | | | | | | Even with volume at minimal fuze+ was still playing sound pretty loud. this fix it. Change-Id: I5b18e9c39ced240eebb0457c433b0ca150668860 Reviewed-on: http://gerrit.rockbox.org/621 Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
* fix redAmaury Pouly2013-09-05
| | | | Change-Id: Ibca5879553a87e77014f850308d9b54cc339d474
* touch devices: Disable touch on softlock.Jean-Louis Biasini2013-09-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | Target that have a touchpad/touchscreen should disable it while being locked (In order to avoid LCD to drain battery power due to "key locked" constant reporting messages. If they a have a keylock button this was already handled at driver level. If not (e.g. fuze+), they will have to implement a switch at driver level that action.c can operate on softlock. This patch does the following for any target having a touchpad or a touchscreen and no HAS_BUTTON_HOLD (ie any softlock target) 1) it implements the code to call button_enable_touch(bool en) in action.c. 2) button_enable_touch is implemented in button.c and call either touchpad_enable or touchscreen_enable 3) those two function are implemented respectively in touchscreen.c and a new touchpad.c file. They provide a generic way to silents touch's device and call a function at driver level where target specific code can be implemented if possible/needed (for power saving for instance). Those function name are touchpad_enable_device and touchscreen_enable_device 4) we implement an empty function at driver level of targets that need it to have them still being able to compiled. Change-Id: I9ead78a25bd33466a8533f5b9f259b395cb5ce49 Reviewed-on: http://gerrit.rockbox.org/569 Reviewed-by: Thomas Martitz <kugel@rockbox.org> Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
* Cleanup MV/MD macros a little.Michael Sevakis2013-08-17
| | | | | | | | | | 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
* Revert "rk27xx: implement usb driver"Amaury Pouly2013-08-11
| | | | This reverts commit 310f9e068d58d3113358e86d6dd239500cdd11c4.
* rk27xx: implement usb driverMarcin Bukat2013-08-06
| | | | Change-Id: Iee3036944652fd6431d3177ab619e5df1f9bd44c
* [RMI Driver] Implement power saving supportJean-Louis Biasini2013-07-29
| | | | | | | | | | Implement standard values and functions to operate on power control register. This allow to modify both reporting rate and sleep mode in order to save power. Change-Id: I2bdffd4160e10eec488eb5e19de8a2a258ddbb04 Reviewed-on: http://gerrit.rockbox.org/529 Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
* imx233: revert volumes to 1dB resolutionAmaury Pouly2013-07-23
| | | | | | | | Using a better resolution causes havoc in the user interface because it doesn't properly handle steps and people start to believe I am responsible for all this mess. Change-Id: I02b68dce5802692efde3da226eeeb49e4995f97a
* fuzeplus: add touchpad sensitivityAmaury Pouly2013-07-15
| | | | | | Change-Id: I0252c0967716a4f1a628191dcde7ffc80279370b Reviewed-on: http://gerrit.rockbox.org/515 Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
* Get rid of some superfluous single-purpose functions in playback.Michael Sevakis2013-07-13
| | | | | | | | | | | * Remove explicit tracking of elapsed time of previous track. * Remove function to obtain auto skip flag. * Most playback events now carry the extra information instead and pass 'struct track_event *' for data. * Tweak scrobbler to use PLAYBACK_EVENT_TRACK_FINISH, which makes it cleaner and removes the struct mp3entry. Change-Id: I500d2abb4056a32646496efc3617406e36811ec5
* imx233: fix audio settings, some values were nonsenseAmaury Pouly2013-07-13
| | | | Change-Id: Ib9969bf843169cc5ddafd7758b5b5c729b2784f1
* Enable setting of global output samplerate on certain targets.Michael Sevakis2013-07-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replaces the NATIVE_FREQUENCY constant with a configurable frequency. The user may select 48000Hz if the hardware supports it. The default is still 44100Hz and the minimum is 44100Hz. The setting is located in the playback settings, under "Frequency". "Frequency" was duplicated in english.lang for now to avoid having to fix every .lang file for the moment and throwing everything out of sync because of the new play_frequency feature in features.txt. The next cleanup should combine it with the one included for recording and generalize the ID label. If the hardware doesn't support 48000Hz, no setting will be available. On particular hardware where very high rates are practical and desireable, the upper bound can be extended by patching. The PCM mixer can be configured to play at the full hardware frequency range. The DSP core can configure to the hardware minimum up to the maximum playback setting (some buffers must be reserved according to the maximum rate). If only 44100Hz is supported or possible on a given target for playback, using the DSP and mixer at other samperates is possible if the hardware offers them. Change-Id: I6023cf0c0baa8bc6292b6919b4dd3618a6a25622 Reviewed-on: http://gerrit.rockbox.org/479 Reviewed-by: Michael Sevakis <jethead71@rockbox.org> Tested-by: Michael Sevakis <jethead71@rockbox.org>
* Update software recording engine to latest codec interface.Michael Sevakis2013-06-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Basically, just give it a good rewrite. Software codec recording can be implemented in a more straightforward and simple manner and made more robust through the better codec control now available. Encoded audio buffer uses a packed format instead of fixed-size chunks and uses smaller data headers leading to more efficient usage. The greatest benefit is with a VBR format like wavpack which needs to request a maximum size but only actually ends up committing part of that request. No guard buffers are used for either PCM or encoded audio. PCM is read into the codec's provided buffer and mono conversion done at that time in the core if required. Any highly-specialized sample conversion is still done within the codec itself, such as 32-bit (wavpack) or interleaved mono (mp3). There is no longer a separate filename array. All metadata goes onto the main encoded audio buffer, eliminating any predermined file limit on the buffer as well as not wasting the space for unused path queue slots. The core and codec interface is less awkward and a bit more sensible. Some less useful interface features were removed. Threads are kept on narrow code paths ie. the audio thread never calls encoding functions and the codec thread never calls file functions as before. Codecs no longer call file functions directly. Writes are buffered in the core and data written to storage in larger chunks to speed up flushing of data. In fact, codecs are no longer aware of the stream being a file at all and have no access to the fd. SPDIF frequency detection no longer requires a restart of recording or plugging the source before entering the screen. It will poll for changes and update when stopped or prerecording (which does discard now-invalid prerecorded data). I've seen to it that writing a proper header on full disk works when the format makes it reasonably practical to do so. Other cases may have incorrect data sizes but sample info will be in tact. File left that way may play anyway. mp3_enc.codec acquires the ability to write 'Info' headers with LAME tags to make it gapless (bonus). Change-Id: I670685166d5eb32ef58ef317f50b8af766ceb653 Reviewed-on: http://gerrit.rockbox.org/493 Reviewed-by: Michael Sevakis <jethead71@rockbox.org> Tested-by: Michael Sevakis <jethead71@rockbox.org>
* Fix some whitespace in files changed in following commit.Michael Sevakis2013-06-30
| | | | | | | Change-Id: Ie3f43e43076e0dcae9a10f1b0b9e4698b398acee Reviewed-on: http://gerrit.rockbox.org/492 Reviewed-by: Michael Sevakis <jethead71@rockbox.org> Tested-by: Michael Sevakis <jethead71@rockbox.org>
* Move load_firmware() to separate fileMarcin Bukat2013-06-27
| | | | | | | | The idea is to share loading code between bootloaders and rolo(). Change-Id: I1656ed91946d7a05cb7c9fa7a16793c3c862a5cd Reviewed-on: http://gerrit.rockbox.org/190 Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
* imx233: add recording side and 3d to codec driverAmaury Pouly2013-06-18
| | | | Change-Id: I3587434749c401a28c6e77bd30395e7df15f2e8a
* imx233: fix soc header for stmp3600 and stmp3700Amaury Pouly2013-06-18
| | | | | | | | Document various register macros (autogenerated). Fix memory map for stmp3700, make framebuffer size configurable and cache aligned and fix the PHYSICAL_ADDR macro. Change-Id: I40a2875fb3eb35c6fce1158db37dbc0c1a10c68e
* imx233: add subtarget and package type to configure filesAmaury Pouly2013-06-16
| | | | Change-Id: I234dab0e861d38abf866803bfcd729c63a8ee3ed
* Refactor audio thread to run both recording and playback.Michael Sevakis2013-05-31
| | | | | | | | | | | | | | | | Eliminates the pcmrec thread and keeps playback and recording engine operation mutually-exclusive. audio_thread.c contains the audio thread which branches to the correct engine depending upon the request. It also handles the main audio initialization. Moves pcm_init into main.c just before dsp_init because I don't want that one in audio_init in the new file. (Also makes revision df6e1bc pointless ;) Change-Id: Ifc1db24404e6d8dd9ac42d9f4dfbc207aa9a26e1
* df1704: Add filter roll-off selection.Andrew Ryabinin2013-05-24
| | | | Change-Id: I732ebd3446858b497105cf03fc81e934a749a57b
* Add DAC's oversampling filter roll-off selection to sound settings.Andrew Ryabinin2013-05-24
| | | | Change-Id: I1258ba50dd9308f49d97965562f3a423c9bfb785
* Remove dsp_callback because DSP is now library code, not app code.Michael Sevakis2013-05-23
| | | | | | Yep, nope, not necessary anymore. Just call functions directly. Change-Id: I21dc35f8d674c2a9c8379b7cebd5613c1f05b5eb
* Get rid of usb_drv_attach() from USB code.Michael Sevakis2013-05-14
| | | | | | | 'Twas an idiosyncrasy of detecting a host upon bus reset, which is obsolete. Change-Id: I0adb25e1805022544f52cd0cb766819a367dbde4
* Introduce HiFi E.T MA9 port.Andrew Ryabinin2013-05-06
| | | | Change-Id: I79aadc958fd5222f26f91ed127f8c6fb2c465dc2
* Provide high resolution volume and prescaler to hosted targets.Michael Sevakis2013-04-27
| | | | | | | | | | | | | | | | | | | | | HAVE_SW_VOLUME_CONTROL is required and at this time only affects the SDL targets using pcm-sdl.c. Enables balance control in SDL targets, unless mono volume is in use. Compiles software volume control as unbuffered when PCM_SW_VOLUME_UNBUFFERED is defined. This avoids the overhead and extra latency introduced by the double buffer when it is not needed. Use this config when the target's PCM driver is buffered and sufficient latency exists to perform safely the volume scaling. Simulated targets that are double-buffered when made as native targets remain so in the sim in order to run the same code. Change-Id: Ifa77d2d3ae7376c65afecdfc785a084478cb5ffb Reviewed-on: http://gerrit.rockbox.org/457 Reviewed-by: Michael Sevakis <jethead71@rockbox.org> Tested-by: Michael Sevakis <jethead71@rockbox.org>