Commit graph

32756 commits

Author SHA1 Message Date
Franklin Wei
7e46440e4d Yellow go bye-bye
Change-Id: I12ce8b7781b4b1ce1c47b2973057586177f90157
Reviewed-on: http://gerrit.rockbox.org/923
Reviewed-by: Frank Gevaerts <frank@gevaerts.be>
2014-08-22 23:53:50 +02:00
Franklin Wei
8f9bd987e1 Fixed a chip8 bug
Change-Id: Ia28610713461eb02e8911be7fa0d5ad8ec8ba7fe
Reviewed-on: http://gerrit.rockbox.org/919
Reviewed-by: Frank Gevaerts <frank@gevaerts.be>
2014-08-22 23:36:26 +02:00
Michael Sevakis
5fb370267f Make sure load_context is the last thing in switch_thread.
This should fix the android crash issue (fingers crossed).

Change-Id: I9d3f773dbdf7dde60bd76962dcf66a3bad8b0925
2014-08-20 05:58:59 -04:00
Franklin Wei
9fed5fd9e9 Added Clip/+ to 2048 targets
Change-Id: I9fb5a50f214e9dd87d1f1f62f4324876bdd94fe8
Reviewed-on: http://gerrit.rockbox.org/918
Reviewed-by: Michael Giacomelli <giac2000@hotmail.com>
2014-08-19 23:04:35 +02:00
Franklin Wei
7ac0056beb 2048: service pack 1 :)
- fixed some bugs
- added 1-bit LCD support

Change-Id: I7bb458d79d799dcd6b11d9d538773404f9a7f97c
Reviewed-on: http://gerrit.rockbox.org/917
Reviewed-by: Michael Giacomelli <giac2000@hotmail.com>
2014-08-19 22:37:54 +02:00
Michael Sevakis
a9713d89e7 thread-unix patchup!
The changed thread code may not wish to save the old context under
certain circumstances but thread-unix.c assumed it would, cached it
and used it unconditionally.

Also, prevent it from leaking away all the jump buffers (old problem).
Creating and removing threads would eventually run it out of buffers
and then it would crash after that. Plugins, like Pictureflow, which
have worker threads could only be started a few times. Implement a
simple O(1) allocator that will reuse them and stays self-contained
to its own types (as it appears the original author intended).

Change-Id: Icf65413c086b346fb79bf827102b725269e2812c
2014-08-18 10:40:44 -04:00
Avi Eisenberg
ec844f8b6d Always unboost at exit
Change-Id: I8b4a2d61a5f4491265888d84c0f2c684bcf38edb
Reviewed-on: http://gerrit.rockbox.org/915
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
2014-08-18 04:12:43 +02:00
Michael Sevakis
030f51ce81 Oops. Broke an egg. Restore wrongly removed code in mutex.c.
Nice colorful diffs reveals some lines that should NOT have been
removed when !defined(HAVE_PRIORITY_SCHEDULING) in mutex_unlock.

Change-Id: I4152ea864b7706217c670e1b99250b09e69c5858
2014-08-16 06:37:29 -04:00
Michael Sevakis
528715a672 Fix warnings from 6ed0087
Forgot to (void) an unused parameter when priorityless.

usb-drv-rl27xx.c was using a compound init to initialize a semaphore
but the structure changed so that it is no longer correct. Use
designated initializers to avoid having to complete all fields.

Forgot to break compatibility on all plugins and codecs since the
kernel objects are now different. Take care of that too and do the
sort thing.

Change-Id: Ie2ab8da152d40be0c69dc573ced8d697d94b0674
2014-08-16 06:00:36 -04:00
Michael Sevakis
6ed00870ab Base scheduler queues off linked lists and do cleanup/consolidation
Abstracts threading from itself a bit, changes the way its queues are
handled and does type hiding for that as well.

Do alot here due to already required major brain surgery.

Threads may now be on a run queue and a wait queue simultaneously so
that the expired timer only has to wake the thread but not remove it
from the wait queue which simplifies the implicit wake handling.

List formats change for wait queues-- doubly-linked, not circular.
Timeout queue is now singly-linked. The run queue is still circular
as before.

Adds a better thread slot allocator that may keep the slot marked as
used regardless of the thread state. Assists in dumping special tasks
that switch_thread was tasked to perform (blocking tasks).

Deletes alot of code yet surprisingly, gets larger than expected.
Well, I'm not not minding that for the time being-- omlettes and break
a few eggs and all that.

Change-Id: I0834d7bb16b2aecb2f63b58886eeda6ae4f29d59
2014-08-16 05:15:37 -04:00
Michael Sevakis
eb63d8b4a2 Add common linked list functions
Forms implemented to a greater or lesser degree at the moment:
ll_*   = singly-linked list
lld_*  = doubly-linked list
lldc_* = doubly-linked circular list

Change-Id: Ieed5af50fc59165c8b14c3513b3b5d0e6f7de9fa
2014-08-16 00:27:01 -04:00
Amaury Pouly
278e8664a7 hwpatcher: fix horrible typo in the makefile
Change-Id: I6e8d8ae3a5f6e1111a6b7d910a1a6b94e2733ca6
2014-08-13 12:44:26 +02:00
Franklin Wei
df99ef2c7b Added highscore highlight to xobox game
Change-Id: Idf6848fc80a56398889d5deeb16bf3707fcd3e30
Reviewed-on: http://gerrit.rockbox.org/893
Reviewed-by: Michael Giacomelli <giac2000@hotmail.com>
2014-08-12 18:25:56 +02:00
Franklin Wei
b61553c2b1 Added 2048 game
Change-Id: I4012dca4f93ca0db386a454635534f648ba906e9
Reviewed-on: http://gerrit.rockbox.org/888
Reviewed-by: Michael Giacomelli <giac2000@hotmail.com>
Tested: Michael Giacomelli <giac2000@hotmail.com>
2014-08-12 00:01:24 +02:00
Michael Sevakis
9a3400a4a6 Fix some more straggling stuff
* HWCODEC bootloaders

* Remove references to thread structures outside the kernel. They are
private and should not be used elsewhere. The mrobe-100 is an offender
that gets squashed.

* The ata.c hack stuff for large sector disks on iPod Video gets squashed
for the same reason. I will no longer maintain it, period; please find
the real reason for its difficulties.

Change-Id: Iae1a675beac887754eb3cc59b560c941077523f5
2014-08-08 03:23:29 -04:00
Michael Sevakis
4ea4cdfc11 Bootloaders need the reacharound to get at the internal goods
They need to include kernel-internal.h in order to perform inits.

Change-Id: I5b0f155e4ff49a065c6cb97691ecd4396a199979
2014-08-08 02:28:11 -04:00
Michael Sevakis
981d028c09 Do some kernel cleanup
* Seal away private thread and kernel definitions and declarations
into the internal headers in order to better hide internal structure.

* Add a thread-common.c file that keeps shared functions together.
List functions aren't messed with since that's about to be changed to
different ones.

* It is necessary to modify some ARM/PP stuff since GCC was complaining
about constant pool distance and I would rather not force dump it. Just
bl the cache calls in the startup and exit code and let it use veneers
if it must.

* Clean up redundant #includes in relevant areas and reorganize them.

* Expunge useless and dangerous stuff like remove_thread().

Change-Id: I6e22932fad61a9fac30fd1363c071074ee7ab382
2014-08-08 01:59:59 -04:00
Marcin Bukat
53d9f2e6a7 rkwtool: The tool to inspect and extract update RKW files
Change-Id: Ie32d0a597b93d23a7d5946a3d9409572b41b45bc
2014-08-07 19:09:35 +02:00
Michael Sevakis
81ffd9bfee Fix some stuff for no priority and
thread_queue_wake() doesn't need the 2nd parameter. The original purpose
for it never came to be.

Non priority version mrsw_writer_wakeup_readers was left improperly
finished. Get that back into line.

Change-Id: Ic613a2479f3cc14dc7c761517670eb15178da9f5
2014-08-06 02:27:49 -04:00
Michael Sevakis
e7e302f255 One more shot; errno.h needs to be in the ARM one too :)
Change-Id: Icf5e5fb269c975eaaefc6e756f46d4530b982b1f
2014-08-05 22:20:28 -04:00
Michael Sevakis
0615cb8042 Hosted builds using thread.c have errno as thread context.
Never came up testing but I don't have those SDKs installed. Taking a
jab at it.

Change-Id: I4d0de1c666e0895d41b3de41dd9024626bd37601
2014-08-05 22:05:20 -04:00
Michael Sevakis
29f5385263 Fix up some more red
find_first_set_bit() becomes a small inline on ARMv5+ and checkwps now gets
made with -std=gnu99 (it eats all the GCCOPTS) like the rest of things.

Change-Id: Ie6039b17fec057a3dcb0f453d8fd5efac984df89
2014-08-05 21:32:13 -04:00
Michael Sevakis
bb7700928a Oops. Somehow lost the track of the new files last push.
Change-Id: If3fad318bc2d620fa940de3f9595ff61024939df
2014-08-05 21:00:10 -04:00
Michael Sevakis
533d396761 Add multi-reader, single-writer locks to kernel.
Any number of readers may be in the critical section at a time and writers
are mutually exclusive to all other threads. They are a better choice when
data is rarely modified but often read and multiple threads can safely
access it for reading.

Priority inheritance is fully implemented along with other changes to the
kernel to fully support it on multiowner objects.

This also cleans up priority code in the kernel and updates some associated
structures in existing objects to the cleaner form.

Currently doesn't add the mrsw_lock.[ch] files since they're not yet
needed by anything but the supporting improvements are still useful.

This includes a typed bitarray API (bitarray.h) which is pretty basic
for now.

Change-Id: Idbe43dcd9170358e06d48d00f1c69728ff45b0e3
Reviewed-on: http://gerrit.rockbox.org/801
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested: Michael Sevakis <jethead71@rockbox.org>
2014-08-06 02:47:47 +02:00
Kyryljan_Serhij
6536f1db3e Russian language update
Change-Id: I78af1702c1f60c2fc66ebeb738aed187f13906f3
Reviewed-on: http://gerrit.rockbox.org/903
Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
2014-08-05 19:09:36 +02:00
Frank Gevaerts
78f4f7b621 Make crosstool-ng build with gnu make 4.0
Change-Id: Id3a5a310e6fa53e690c92f420994875cb1bfff43
2014-07-30 14:29:27 +02:00
Szymon Dziok
86fa139eac Support for remote on Samsung YH920/YH925.
Remote buttons are bound to the standard buttons in button-target.h, but they can
have a separate buttonmap, if someone wants.

Change-Id: Id8c78a3dfec0005bf588dc16416870b4c7c56836
2014-07-28 22:11:33 +02:00
Szymon Dziok
228c47be4c Samsung YH-925: Don't add anything to adc value while reading it.
OF doesn't do such thing. Values in mV are converted proportionally, so no change
 to the battery meter.

Change-Id: Ic545b0514535e7f17f0379ed02f6bdf515f69ac6
2014-07-28 22:11:33 +02:00
Szymon Dziok
f74edac8c7 Samsung YH-920: Proper values for battery monitoring, based on the OF formula.
Change-Id: I894eb6bad600bd059fe9a5ea1103737a736d4005
2014-07-28 22:11:33 +02:00
Peter Lecký
eaaff2680b Slovak language update
Change-Id: I3150dd77b3f5ce85d324ce3e9b6931c659dbde58
Signed-off-by: Bertrik Sikken <bertrik@sikken.nl>
2014-07-27 18:30:26 +02:00
Sebastian Leonhardt
7e778c5f49 Samsung YH-820: enable battery monitoring
The "percent_to_volt_charge" values are quite arbitrary
and may need some more tweaking.

Change-Id: I9f177d46681030d615fe2c2e78cf9bd2dde026af
Reviewed-on: http://gerrit.rockbox.org/824
Reviewed-by: Szymon Dziok <b0hoon@o2.pl>
Tested: Szymon Dziok <b0hoon@o2.pl>
2014-07-27 12:09:36 +02:00
Szymon Dziok
6bbfb35560 SA9200: Implement clicker.
It's not integrated with key click option for now.

Change-Id: Ib0769b02bfebe7c55eca7b7ea61df5d6dd83cdd3
2014-07-26 15:38:49 +00:00
Szymon Dziok
3f2c525c57 Reduce definitions of actions for fm radio.
Change-Id: I89188ecc820058b79b5c8fcf3e9b5ed49ae8aff4
2014-07-26 15:36:12 +00:00
Szymon Dziok
e3476f06d0 MPIO HD200: Fix action for fm radio.
Change-Id: I65a8e6f39d47f5d091e9676102b0ec08eb08690c
2014-07-26 15:36:12 +00:00
Szymon Dziok
facf708048 HDD1630/HDD6330: Add actions for fm radio.
Change-Id: I6acc21663fd0bc27509f8c37c71defb817ec7108
2014-07-26 15:36:12 +00:00
Szymon Dziok
fb373e1f50 Ak4537: Optimization of the code.
Change-Id: I98e25d7177b24b277a79d8bf8d494dac26553c2c
2014-07-26 15:36:12 +00:00
Szymon Dziok
f734eedc1f Disable detection of fm radio for the YH920, it's pointless.
Change-Id: Ibabda73046dc523c2bd0b1dfd0644f8882fbb74c
2014-07-26 15:36:12 +00:00
Marcin Bukat
345841aa56 rk27load: stage1 dram config fix #2
Change-Id: I5c4cf3dedab26e4cae05496bcae3a2d235d12e2f
2014-07-23 22:11:10 +02:00
Marcin Bukat
dcd8172f4f rk27load: fix stage1 dram config bug
Change-Id: I03d44dbd05fcd5dfc0e508020fae7006d8a97505
2014-07-23 12:32:16 +02:00
Chiwen Chang
9fb65294fb add supports for x,y value in percentage to several tags.
including
BAR_PARAMS, %xl, %dr, %T,%St, %xl and %Cl

Change-Id: I0811ebfff5f83085481dcbf08f97b7223f677bfe
Reviewed-on: http://gerrit.rockbox.org/900
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
2014-07-21 04:54:53 +02:00
Szymon Dziok
78478076a3 SVG image of the Creative Zen Mozaic and other formats for the manual.
Change-Id: I594afa62b5c5a3cef1dcf4d4249a13688e425267
Reviewed-on: http://gerrit.rockbox.org/895
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
2014-07-17 18:03:54 +02:00
Amaury Pouly
e08331eef4 zen/zenxfi/zenxfistyle/zenmozaic: implement plugin keymaps and enable plugins
Plugins on the ZEN/ZEN X-Fi require to increase the plugin buffer size.

Change-Id: If4651c87b402060faa24530985c6e871379c8ea1
2014-07-17 10:40:17 +02:00
Amaury Pouly
2387d92c9c keymaps: cleanup
- remove useles define in pegbox
- improve keymap of nwz in mpegplayer
- fix whitespace alignement

Change-Id: I0d5e3c59f89ed8e0e02c386255286cfbb8693230
2014-07-17 10:29:18 +02:00
Nils Wallménius
8e8671a73e libopus: use iram for more constants
Speeds up decoding of the 64 kbps test file by 2.59 MHz and the
128 kbps test file by 4.31 MHz on H300 (cf). Decoding the same
files on c200 is sped up by 0.33 MHz and 0.55 MHz respectively.

Change-Id: I0f9f9ef6a7293581cf45e3201b33c65504c95c81
2014-07-13 14:19:54 +02:00
Nils Wallménius
888e05ec12 libopus: asm C_MUL for coldfire
The recent merge of upstream changed the fft to use C_MUL which
wasn't implemented in asm for coldfire.

Speeds up decoding 64 kbps test file by 2.68 MHz and 128 kbps
test file by 2.80 MHz on H300.

Change-Id: I8b61fc0f9568d6350431e311a12e44fe4f60f72e
2014-07-13 11:49:34 +02:00
Nils Wallménius
9b7ec42403 Sync to upstream libopus
Sync to commit bb4b6885a139644cf3ac14e7deda9f633ec2d93c

This brings in a bunch of optimizations to decode speed
and memory usage. Allocations are switched from using
the pseudostack to using the real stack. Enabled hacks
to reduce stack usage.

This should fix crashes on sansa clip, although some
files will not play due to failing allocations in the
codec buffer.

Speeds up decoding of the following test files:

                 H300 (cf)   C200 (arm7tdmi)  ipod classic (arm9e)
16 kbps (silk)   14.28 MHz   4.00 MHz         2.61 MHz
64 kbps (celt)   4.09 MHz    8.08 MHz         6.24 MHz
128 kbps (celt)  1.93 MHz    8.83 MHz         6.53 MHz

Change-Id: I851733a8a5824b61feb363a173091bc7e6629b58
2014-07-13 11:12:40 +02:00
Marcin Bukat
e557951c94 crc-mi4: use const lookup table for crc
This doesn't touch external tools as I see no need for.

Change-Id: Ia69248c4b6a033c3772916525257e3540bddcffa
Reviewed-on: http://gerrit.rockbox.org/891
Tested: Sebastian Leonhardt <sebastian.leonhardt@web.de>
Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
2014-07-07 12:54:50 +02:00
Szymon Dziok
d188661d4c Finished SVG Image for Sansa Clip Zip.
Added labels and power button.

Original author: Marko Pahlke, FS#12602

Change-Id: I17cfa245fcd36755162a3c527de6ba768568a376
2014-07-02 15:33:30 +02:00
Szymon Dziok
a731780471 SVG image of the Sony NWZ-E360 and other formats for the manual.
Change-Id: I2783dd39a773d952997e4a6d28916290e0dd5f65
Reviewed-on: http://gerrit.rockbox.org/889
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
2014-07-02 10:57:37 +02:00
Amaury Pouly
8d754c0997 Sony NWZ: calibrate discharge curves
The charging curve also need to be calibrated but that will be part of another
commit.

Change-Id: Ie4c5995123e4059ae4f3c9d86c11fc1257314d39
2014-07-01 17:26:29 +02:00