summaryrefslogtreecommitdiff
path: root/firmware
AgeCommit message (Collapse)Author
2020-12-08lcd: Wrap anonymous union initializer in bracesFranklin Wei
GCC 4.9.4 is apparently smart enough to compile this, but 4.4.4 is not. Change-Id: I186f969cbad4c701936ab738f585efea07421d2e
2020-11-29FS#5320: Keypad hold doesn't let go until scrolling is used (ipod 4g/5g)Solomon Peachy
Patch by Boris Gjenero Change-Id: I7df956fb63478bbbe891104faf5ab35096da7576
2020-11-22rockbox: move firmware checksum algorithms into a common headerJames Buren
Before this was just implemented inline wherever it was needed. Now it is provided as 2 inline functions in a header called checksum.h. There should be no differences in actual behavior. Change-Id: I5d756cc01dc6225f5cc8b6af90911a3fc7b57cd5
2020-11-18hosted: Improve buffer underrun handling in the ALSA driverSolomon Peachy
* Bump internal mix buffer size by 4x, to 1K frames (matching ALSA period) * Handle an underrun that occurs when filling the audio buffer * Log underruns and make them available in the debug info Change-Id: I28d56dd35d88851fa167ad92368a5882937a758f
2020-11-18configure: Add prompt for USB Serial into the advanced modeSolomon Peachy
And explicitly disable USB_ENABLE_SERIAL when HAVE_USBSTACK is not define Change-Id: Ieb4176b02a60eb1b9db81f0b8c69403898a76ca1
2020-11-17usb: increase the stack size.Solomon Peachy
It's not large enough on some targets. (this will be revisited when the USB insertion prompt stuff is moved out of the USB helper and over to the main thread) Change-Id: Iefed2cdf2fbb4ce92569fc5cacbdb479b7d24e61
2020-11-16FS13257: Fix inconsistent defaults in the USB mode selectionSolomon Peachy
Change-Id: I44894d13f070313ad326ce68018556573e35aad9
2020-11-16iriver_flash: update valid bootloaders tableJames Buren
This removes all the pre-release bootloader of version 7 and replaces them with production releases of version 8. The pre-releases have their own problems and should be left behind as they were never officially released. Change-Id: If96531ba63cf4401d04133bda94735fe94ae4de1
2020-11-14Remove some SWCODEC artifactsMoshe Piekarski
Change-Id: I580522bc0ec3bc86c24400625d7d9cde2eea8fc8
2020-11-14rockbox: revise charger_inserted and power_input_present functionsJames Buren
This makes it so the thread cached variable is only read if building the regular firmware. For bootloaders the data is now read directly. This fixes the functions for bootloaders so they do not have to import the power management code just so these functions will work when in the bootloader. Change-Id: Ic425b02c08b48df7a11a6c19c022b0e1cb316a85
2020-11-13ibasso: Hopefully hack usb into building again.Solomon Peachy
Change-Id: I6f369d60319704ab4d2c18b80ba6e78902630790
2020-11-13ibasso: Fix red introduced in 60f581eSolomon Peachy
Change-Id: I9095e9e9213dde252de836851b743001b9483a1b
2020-11-13usb: Add ability to prompt user about what to do upon usb insertionSolomon Peachy
v3: Add in config option v4: Bugfixes v5: Force a redraw upon exiting v6: keypress-in-chargeonly mode enables mass storage (and vice versa) v7: Fix bootloader builds v8: Update manual, and have bootloader respect keypresses v9: Change default to mass storage (ie no change in behavior) todo: * test-build dx50/dx90 * Switch from yes/no to proper menu? * prevent WPS progress bar from drawing over us Change-Id: I82e0ccb08497b7a5aa756ce77f1332ee963703a7 ... Change-Id: I7946cf240b18a4fa8ace5e25e1eb6e97b8b12d7c
2020-11-13h300, Others Bugfix Bootloader backlight_init()William Wilgus
backlight_init needs to be called after lcd_init when using lcd_enable() Change-Id: Id034835c903801fea49e2b972c110c1ec5106976
2020-11-13h300: fix one long-standing bootloader bugJames Buren
This was introduced in e13c6001332882291363bdf2f1155875439fe187 back when the author was trying to optimize the LCD code with DMA. For whatever reason this broke the bootloader for the last 10 years or so and no one could figure out why. This is now fixed. However the bootloader is still currently broken in HEAD due to recent changes to the LCD code. A fix for that is not yet known. Change-Id: I046d53f9f391f558c391f2fadb6b260fe3be4d92
2020-11-12pcm: Further cleanup of unused bits of the PCM ACPI:Solomon Peachy
* pcm_get_bytes_remaining() * pcm_calculate_peaks() * pcm_get_peak_buffer() Nothing in-tree uses these at all (except for the lua plugin wrapper) Change-Id: I971b7beed6760250c8b1ce58f401a601e1e2d585
2020-11-12Rocker Add WPS and Tree Hotkey, button codes in debug menuWilliam Wilgus
VolUp+VolDown becomes the wps and tree (file browser) hotkey Change-Id: I0cba96927420c318506bc0c15dabcb809cd81647
2020-11-11iriver_flash: refactor code to be easier to understandJames Buren
This overhauls most of the code to be easier to understand in terms of the interactions with the flash. I found the original to be rather confusing with how it kept switching between byte and word offsets. My solution was to make all external access to the flash in terms of sectors and bytes. Whatever the flash uses internally is now handled by the subroutines for performing the erase, program, and verify operations. This helps make it far more consistent for the code that actually uses these operations as they do not need to concern themselves with word sizes and offsets anymore. As a side effect of this change the flash operations are now done entirely by subroutines; even the batch operations that used to use custom loops. Additionally some functions were merged with other functions in order to reduce the amount of functions as well as consolidating common code fragments. Change-Id: I4698e920a226a3bbe8070004a14e5848abdd70ec
2020-11-08Fuze+: Fix misplaced rectangle when lcd_flip setMoshe Piekarski
Change-Id: Ic5197d8dffd66cfefdb42242869b48b33aa4d042
2020-11-04pp5020: use ipod firmware timings for ATA PIO.Torne Wuff
Some mSATA adapters seem to have trouble working with Rockbox using our normal PIO timings; the timing value we use is probably out of spec and is different to the OF. Switch to using the OF's timings according to which PIO mode we select. This may not completely resolve problems with these adapters but allows Rockbox to boot and play audio. Change-Id: If73210700eb4af01864b373709ee1d15c775fb11
2020-11-03Remove the firmware decompressor and a few more other SH-stragglers.Solomon Peachy
Change-Id: Ic568755afcccc6db1b6e791b1ed0d2588b90356f
2020-11-03ATA: Check to see if the ATA device is solid-state (WIP)Solomon Peachy
Not all devices advertise this flag, unfortunately. Change-Id: I6d666febdfcba7598e4d29df7d05c0a288e15158
2020-11-03erosq: Fix scrollwheel regression introduced in 125e97b0Solomon Peachy
Change-Id: Ie1a53d7140ffb09d8e3a19a41617fdc51344a619
2020-11-02FuzePlus USB+screen dump overflows usbstackWilliam Wilgus
Bump USB stack by 128 bytes adds USB_EXTRA_STACK Change-Id: I12839edbe889c878482081cf59fc6540384673ac
2020-10-31Rocker: Fix a boneheaded bug introduced in dd82f13fa1Solomon Peachy
Change-Id: Ia743cba6ccd50b38b052f26cce23ac9fe7aac31b
2020-10-31hosted: Consolidate common /dev/input code shared by the hiby targetsSolomon Peachy
* Enable dynamic number of input devices, needed for bluetooth support Change-Id: Ic2425834eb9b0fff298899ab45f3115ce1d95e91
2020-10-31nwz/alsa: various improvementsAmaury Pouly
Also audiohw driver to specific device name, rewrite alsa controls code to cache more data, thus making the code easier and use less stack. Avoid using short/long in pcm alsa code since it's the wrong size on 64-bit (simulator for example) Change-Id: Ibc1ec44396e37b6cbdedbcf37300878638e5d2d3
2020-10-31hosted: fix warning when LOGF is enabledSolomon Peachy
Change-Id: I67b4cbf8899860411869399143424a0e55d0d4ca
2020-10-31lcd_framebuffer bugfixes, sanity checksWilliam Wilgus
several issues I saw that could pontentially cause problems scroll engine doesn't take text height into account when checking bounds NBELEMS was one whole row too large hopefully I got them right this time Change-Id: If303da8320429c3964fc675351cb088d46303745
2020-10-31fix red introduced in the android pcm driver (rev fe2d52c)Solomon Peachy
Change-Id: I2fa160fd39842a5434cf11573b50061786e610ca
2020-10-31pcm: Get rid of pcm_play_pause() and associated APIsSolomon Peachy
Nothing in the core has used it for some time. It's exported to the plugin API but the last plugins to use it were switched to the mixer API back in 2011. This allows us to get rid of pcm_play_dma_pause() from all audio drivers Change-Id: Ic3fa02592316f84963e41d792d1cabb436d1ff6b
2020-10-27dircache: Fix a NULL pointer dereferenceSolomon Peachy
if idx == 0, get_idx_dcvolp() will return NULL. Change-Id: I4eafa71bb1f77ef8c865570bf8f124cdd9326d3e
2020-10-27iaudiom5: Fix build.Solomon Peachy
Basically we're overflowing IRAM by 48 bytes. Shrink the stack by 48 bytes to compensate. Fixing this properly will require careful decisions about what (code and/or data) to eject from IRAM. Change-Id: Ia3054280bcbd9813b9cce83f16ba4fbd15085110
2020-10-27coldfire: We need -fno-delete-null-pointer-checks in flash controller codeSolomon Peachy
Change-Id: I9a3e4ced2c3d41f6a31a968af72659a1a14f702e
2020-10-26'Fix RED e200 Framebuffer_viewport_rewriteWilliam Wilgus
Free malloc in checkwps too Change-Id: I2b8fcbc94beb0644b643d3b7a9cb53bc26fc8a51
2020-10-26FIX RED framebuffer viewport rewriteWilliam Wilgus
Change-Id: I4cb8f580e15440d06f8d5fabb2fbf5147c67b49c
2020-10-26FIX RED/YELLOW framebuffer viewport rewriteWilliam Wilgus
Change-Id: Icfd3b00b646c593991f73550d8a316a80e5930a1
2020-10-26Whitespace cleanup on fb_viewport RewriteWilliam Wilgus
Change-Id: I24aac41c8abecf7b78a44d7f59e842b791be4563
2020-10-26LCD core move buf ptr and address look up function viewport structWilliam Wilgus
I'm currently running up against the limitations of the lcd_draw functions I want these functions to be able to be used on any size buffer not just buffers with a stride matching the underlying device [DONE] allow the framebuffer to be decoupled from the device framebuffer [DONE need examples] allow for some simple blit like transformations [DONE] remove the device framebuffer from the plugin api [DONE}ditto remote framebuffer [DONE] remove _viewport_get_framebuffer you can call struct *vp = lcd_set_viewport(NULL) and vp->buffer->fb_ptr while remote lcds may compile (and work in the sim) its not been tested on targets [FIXED] backdrops need work to be screen agnostic [FIXED] screen statusbar is not being combined into the main viewport correctly yet [FIXED] screen elements are displayed incorrectly after switch to void* [FIXED] core didn't restore proper viewport on splash etc. [NEEDS TESTING] remote lcd garbled data [FIXED] osd lib garbled screen on bmp_part [FIXED] grey_set_vp needs to return old viewport like lcd_set_viewport [FIXED] Viewport update now handles viewports with differing buffers/strides by copying to the main buffer [FIXED] splash on top of WPS leaves old framebuffer data (doesn't redraw) [UPDATE] refined this a bit more to have clear_viewport set the clean bit and have skin_render do its own screen clear scrolling viewports no longer trigger wps refresh also fixed a bug where guisyncyesno was displaying and then disappearing [ADDED!] New LCD macros that allow you to create properly size frame buffers in you desired size without wasting bytes (LCD_ and LCD_REMOTE_) LCD_STRIDE(w, h) same as STRIDE_MAIN LCD_FBSTRIDE(w, h) returns target specific stride for a buffer W x H LCD_NBELEMS(w, h) returns the number of fb_data sized elemenst needed for a buffer W x H LCD_NATIVE_STRIDE(s) conversion between rockbox native vertical and lcd native stride (2bitH) test_viewports.c has an example of usage [FIXED!!] 2bit targets don't respect non-native strides [FIXED] Few define snags Change-Id: I0d04c3834e464eca84a5a715743a297a0cefd0af
2020-10-26make the plugin API frambuffer agnosticMoshe Piekarski
Change-Id: I5abdc231093054c517ff53b9a456997e440e3f6e
2020-10-26sonynwz: A10 and A20 series support high bitratesSolomon Peachy
Change-Id: I6b33368ed5d7800b79dafbb736e6ed079accbd25
2020-10-26h300: add support for ROM image generationJames Buren
Change-Id: I6e0985de370609bae98ba6eab487bf43eb4191b6
2020-10-26rocker: Disable mute-on-pause, due to a platform kernel bug.Solomon Peachy
In short, the display fading back in after a pause resuming interferes with the audio codec, causing BadThings(tm) that cannot be recovered from This really is just avoiding a known trigger; there's no guarantee this condition won't occur under random circumstances during normal use, and there's no good way to work around this from within rockbox. I suspect the underlying problem is that both the display control and codec control share an i2c bus, but the kernel drivers implementing them isn't using proper linux bus access/locking. Change-Id: Id4f56f9cb269ed74aac2f041146b3630cef09030
2020-10-26coldfire: make the RAM and ROM image locations configurable by macrosJames Buren
Change-Id: Ie27e39c34947b0391be621dafb8711c44e863a1c
2020-10-26h300: enable support for iriver_flashJames Buren
This also modifies the configuration file to include macros defined in the H100 / H120 implementation. Change-Id: Iae845889c98661ec548c04fc57e733dcc346c0f1
2020-10-26x3ii/x20/rocker: Fix volume scaling.Solomon Peachy
Change-Id: Ie70d709b4c18f16cdd67aa05d9183b4ace2e66b4
2020-10-26Get rid of another vestigal SH remnant in the rom linker scriptSolomon Peachy
Change-Id: Id7509ad4affc4d72fbfdd11b39a404ad54c76f1b
2020-10-25pcm-alsa: fix red.Solomon Peachy
Change-Id: Id8d5442b0b3eb4ce3c20d1c9d24f07b5378cc22f
2020-10-25hosted: Document HW capabilities of audio driversSolomon Peachy
One surprise: X3ii is capable of 384KHz playback Change-Id: I0cc88637c81a21d54979e82b2941fe14de933d4d
2020-10-25hosted: alsa: Fix two bugs when recordingSolomon Peachy
Change-Id: Ib97857874676ea4aa8f04d44e048de8465a4da4f