Cleaned up, rebased, and forward-ported from the xvortex fork.
(original credit to vsoftster@gmail.com)
Change-Id: Ibcc023a0271ea81e901450a88317708c2683236d
Signed-off-by: Solomon Peachy <pizza@shaftnet.org>
Rocker is configured with CST (China Standard Time) timezone
which is UTC+8. Time in RTC is stored in UTC.
Change-Id: Ib9c03e0f0a1d3ea3a69f238cb083809ea9386e2a
Add define in config file to enable RTC support in rockbox,
Fix time_menu.c to include radio.h only when tuner is present
Implement time setting function on linux (was empty stub)
Not tested.
Change-Id: I40e6c4a6c1b66ada9cf4e698e502e221d0fc44df
Actual / of underlying linux OS should not be available to user.
I am still not sure if implementation is correct. It doesn't
perform any relative path sandboxing for example.
Change-Id: Ic577a10f3947f6e950e2c4d03173f9f207395eb7
None of the Sony up to A15 seem to support RDS (they use either Si4702 or Si4708),
thus I did not add any code to support RDS.
Change-Id: I64838993b9705b36b94665f8470c7a89c772c961
We don't really know what those are supposed to do. They seem to change the
volume curve but it is not very clear what is the intended purpose.
Change-Id: I65f5d18aba139844c23df092277ba17ee8518f96
sonynwz: quirk for cpufreq broken driver
There was some redundancy between frequency_linux(cpu, true) and
current_scaling_frequency(), also I see no reason to compile the cpuinfo stuff
unconditionally and the scaling info only on DX since it was already printed
some partial scaling info anyway. Thus compile all the code unconditionally
and simplify the logic in the debug menu. Also avoid putting buffers of size
PATH_MAX on stack since it can be quite big and we only requires 64 bytes
for those paths.
On Sony NWZ, the cpu driver reports frequency in MHz instead of kHz thus we need
to make the cpuinfo code aware of that bug.
Change-Id: I61af45ab5f179ecc909b4841b9137a915a60193a
We still miss the model IDS for those device so scsitool won't be able to
recognize them automatically.
Change-Id: I17ae0f0d95c011cea8e289def63c7673b6c4b667
Always compile in pcm_alsa_set_digital_volume, the linker will optimize it
away on targets that don't use it.
Change-Id: Ia21c3eaa8a64b75761ab5d056361e7ed1fcf949a
This requires a few changes unrelated to the A860 because configure unsets
APPLICATION but the NWZ is an application!
Change-Id: Id91aa23193383ac95886b281653da5286edd9caf
SUPPORTED SERIES:
- NWZ-E450
- NWZ-E460
- NWZ-E470
- NWZ-E580
- NWZ-A10
NOTES:
- bootloader makefile convert an extra font to be installed alongside the bootloader
since sysfont is way too small
- the toolsicon bitmap comes from the Oxygen iconset
- touchscreen driver is untested
TODO:
- implement audio routing driver (pcm is handled by pcm-alsa)
- fix playback: it crashes on illegal instruction in DEBUG builds
- find out why the browser starts at / instead of /contents
- implement radio support
- implement return to OF for usb handling
- calibrate battery curve (NB: of can report a battery level on a 0-5 scale but
probabl don't want to use that ?)
- implement simulator build (we need a nice image of the player)
- figure out if we can detect jack removal
POTENTIAL TODOS:
- try to build a usb serial gadget and gdbserver
Change-Id: Ic77d71e0651355d47cc4e423a40fb64a60c69a80
si4700_rds_process() should only be called on the rising edge of
RDSR since it now rejects segments out of sequence. Receiving the
same segment multiple times due to rapid polling is of course out
of sequence so do no more processing until RDSR bit cycles to
avoid repeatedly sending the same data instance.
I don't have the tools installed to test compile so there could be
typos. However, I tested on gigabeat-s with YPR0 setup copied over
and it fixed the issue with PS and RT.
Change-Id: Iab511bef64030de8c07d4d22dcf338c8720e2ae2
* Remove unused bits like the radio event and simplify basic
radio interface. It can be more self-contained with rds.h only
required by radio and tuner code.
* Add post-processing to text a-la Silicon Labs AN243. The chip's
error correction can only do so much; additional checks are highly
recommended. Simply testing for two identical messages in a row
is extremely effective and I've never seen corrupted text since
doing that, even with mediocre reception.
Groups segments must arrive in order, not randomly; logic change
only accepts them in order, starting at 0.
Time readout was made a bit better but really we'd need to use
verbose mode and ensure that no errors were seen during receiving
of time and more checks would be need to have a stable PI. The
text is the important bit anyway.
* Time out of stale text.
* Text is no longer updated until a complete group has been
received, as is specified in the standard. Perhaps go back to
scrolling text lines in the radio screen?
* Add proper character conversion to UTF-8. Only the default G0
table for the moment. The other two could be added in.
* Add variants "RDS_CFG_PROCESS" and "RDS_CFG_PUSH" to allow
the option for processed RDS data to be pushed to the driver and
still do proper post-processing (only text conversion for now for
the latter).
Change-Id: I4d83f8b2e89a209a5096d15ec266477318c66925
On Windows 64-bit, the size of long is 32-bit, thus any pointer to long cast is
not valid. In any case, one should use intptr_t and ptrdiff_t when casting
to integers. This commit attempts to fix all instances reported by GCC.
When relevant, I replaced code by the macros PTR_ADD, ALIGN_UP from system.h
Change-Id: I2273b0e8465d3c4689824717ed5afa5ed238a2dc
The kernel on this device reports nonexistent key presses, in particular it
reports right presses when pressing the left button... Since when it happens,
the right press comes after the left one, the new code simply ignores any
right press when the left button in pressed.
Change-Id: Ib6ced02682d9cecf4c7f6c58834907a667419cd7
This patch enables "Settings -> Sound Settings -> DAC's filter roll-off" for the
iBasso DX50.
Confirmed working on iBasso DX50, firmware 1.6.
Change-Id: I901615541d8fa4f6550c5156cf8c6069f5bdf9d0
Depends on http://gerrit.rockbox.org/r/#/c/1043/.
This patch adds a new setting in Settings -> General -> System: USB Mode.
Usable in Quickscreen and Shortcuts.
Possible settings are:
- Mass Storage: The default, on USB connect export the internal and external
drives as usual. Rockbox will exit gracefully in this case, since the internal
drive (/mnt/sdcard) is exported as mass storage device and Android prevents
Rockbox from continued execution.
- Charge Only: USB charge only, do not export the internal and external drives.
This will not close Rockbox.
- ADB: Enable the Android Debug Bridge. This will not close Rockbox.
Charge only and ADB are actually the same, since it is not yet established if
charge only is doable without adb and major hooks into Android.
German translation provided.
This may be genric for Android based devices but is only enabled
for iBasso Devices. Other maintainers may choose do adopt this.
Change-Id: I616247c29946c6595ebcf8f0c14b2410c9f0498b
Depends on http://gerrit.rockbox.org/r/#/c/1043/.
This patch adds a new setting in Settings -> General
-> System: Freq Scaling Governor
Usable in Quickscreen and Shortcuts.
Possible settings are:
- Conservative: Slow frequency switching.
- Ondemand or Interactive: Fast frequency switching.
- Powersave: Allways lowest frequency.
- Performance: Allways highest frequency.
German translation provided.
This may be genric for Android kernel based devices but is only enabled
for iBasso Devices. Other maintainers may choose do adopt this.
Change-Id: I10296f5be9586ad3a409105db0cd03682a30e9c1