Commit graph

9491 commits

Author SHA1 Message Date
Amaury Pouly
58f8bddf88 zenxfi2: add fmradio i2c glue
Change-Id: Ifa8781b3c416002355b17591a4fdbed8a20979a8
2012-05-20 01:35:24 +02:00
Michael Sevakis
c2e9c93563 lcd-ssd1303: Fix big oops putting height where there should've been width.
Rid code of dar commasar and substitute huggy braces while we're at it. :P

Change-Id: If91974b93660bb0de32a0c92629eb83cea99d266
2012-05-19 17:21:54 -04:00
Michael Sevakis
b1dcd298c7 ssd1303: make sure sansa clip and whatever others clip updates properly.
Sometimes I do want to update outside the screen boundaries and it was
messing it up; such things should not cause display problems.

Change-Id: Ic9deec609b19e5a1c603601b20c66599dd44f892
2012-05-19 14:05:11 -04:00
Jonas Wielicki
028c5e35ee Add identify() call to reset procedures
This change is motivated by the ATA specs, section 9.2 Software reset protocol
(quote):
    A host should issue an IDENTIFY DEVICE and/or IDENTIFY PACKET DEVICE
    command after the software reset protocol has completed to determine the
    current status of features implemented by the device(s).

This indeed fixes a local issue with an SSD in an iriver h320. No other tests
were carried out.

Change-Id: I191444aec3e55f6890020f601c715d0022d09fb6
Reviewed-on: http://gerrit.rockbox.org/218
Reviewed-by: Bertrik Sikken <bertrik@sikken.nl>
Reviewed-by: Linus Nielsen Feltzing <linus@haxx.se>
Reviewed-by: Peter D'Hoye <peter.dhoye@gmail.com>
Tested-by: Peter D'Hoye <peter.dhoye@gmail.com>
Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
2012-05-19 19:15:04 +02:00
Amaury Pouly
e401683482 zenxfi3&stfm1000: implement fmradio i2c and debug screen
Change-Id: I83dbdee13185d9adcf590dc213da5a8c97adb2ba
2012-05-19 18:04:25 +02:00
Amaury Pouly
a42f5736b1 Restore backtrace which was accidentely commented out
Change-Id: Ic6e945ffa5b83a38efdbecc3aea2433b1d91bb45
2012-05-19 16:55:07 +02:00
Amaury Pouly
12c64a4b79 Initial commit for the Creative ZEN X-Fi2 and X-Fi3 ports
These are really similar devices so one commit for both is ok.

Change-Id: I8bd1d3fef1eb6d00aaadfb7af56c771f62d0c9c3
2012-05-19 16:10:52 +02:00
Amaury Pouly
b422be9bd0 Add stub STFM1000 tuner driver
Change-Id: I7f82f7b8971de75c92f84d12aaddccc50f3e47b1
2012-05-19 16:10:52 +02:00
Amaury Pouly
deb61e0622 Add the MPR121 (touchbutton chip) driver
Change-Id: I9db97a698ef1c7f0b4f47e406faa1f6c0ec524db
2012-05-19 16:10:52 +02:00
Amaury Pouly
8b53c0f9a9 imx233: completely rework the sd driver
Change-Id: I456df0d9f5eaee435bdfd5a3f667055715e53d2a
2012-05-19 16:10:52 +02:00
Amaury Pouly
3f59cf9708 imx233: fix compilation for target with HAVE_BUTTON_DATA defined
Change-Id: I9d92320b1e545b7ac3983b7f9904f281028cc22d
2012-05-19 16:10:52 +02:00
Amaury Pouly
85d5c19347 imx233: add touchscreen driver
Change-Id: I406076d110e33cdae871222191d82262fabcf16a
2012-05-19 16:10:52 +02:00
Amaury Pouly
247e611f49 imx233: add stub nand driver
Change-Id: I6ed3d274b27eb56afb8289cba1b11bceb74bac12
2012-05-19 16:10:52 +02:00
Amaury Pouly
9d87113958 imx233: add pwm driver
Change-Id: Ib920b119f52b492247d75e97c5ec9298146d583c
2012-05-19 16:10:52 +02:00
Amaury Pouly
55e01b8de4 imx233: enhance lradc driver with touchscreen specific stuff
Change-Id: I83759a00257274c0cbde5a78306256abd2c83800
2012-05-19 16:10:52 +02:00
Amaury Pouly
01216c5ad3 imx233: add lcdif width define
Change-Id: I7649dd15b938e2eb6a2e9d3709fa268def72498a
2012-05-19 16:10:52 +02:00
Amaury Pouly
70253f80bc imx233: fix i2c to be more correct
Change-Id: Ib707a0b87d01f24eeccc39c6cbc1c015456fd503
2012-05-19 16:10:52 +02:00
Amaury Pouly
07138ba2ba imx233: move the freescale partition handling to its own file
The freescale firmware partitions has a lots of quirks that
need to be dealt with, so do it the proper way.

Change-Id: I8a5bd3fb462a4df143bc6c931057f3ffedd4b3d3
2012-05-19 16:10:52 +02:00
Amaury Pouly
61b129ac1e imx233: add gpmi stubs
Change-Id: I5ddcf392e6ffc27513170b1ee768c96cdc5a83d4
2012-05-19 16:10:52 +02:00
Amaury Pouly
bbbfd9f3d3 imx233: add dma channel defines
Change-Id: I462cfa338ded85aca4bb00ec91f144bb17136dbe
2012-05-19 16:10:52 +02:00
Amaury Pouly
d57e1e048e imx233: add icoll debug screen
Change-Id: Icbd91c2ea24dcf61cc6a649122263a4354f09ff4
2012-05-19 16:10:52 +02:00
Amaury Pouly
068443caaf imx233: move away timer defines from imx233.h
Change-Id: I9f721ae12a3ddf72c4e90ad0754a5c2b819847bb
2012-05-19 16:10:52 +02:00
Amaury Pouly
9ced006c06 imx233: move icoll stuff to its own file
The icoll code now has an IRQ storm detection mechanism which
will prevent the device from hard freezing in case it happen.

Change-Id: I9861238dce61d29af1e48f9c534ec63a7f23465c
2012-05-19 16:10:51 +02:00
Amaury Pouly
553aeae9c6 imx233: fix clkctrl naming
Move to a more consistent naming convention like the other devices

Change-Id: I4ddbbee27ee9f5ae775c5776592ec7ce02b30948
2012-05-19 16:10:51 +02:00
Amaury Pouly
9022c69b64 fuze+: fix lcd_on comment and storage qualifier
Change-Id: Iaf06ecd30559ac07b760f6a01ff920fdbacb398e
2012-05-19 16:10:51 +02:00
Amaury Pouly
25feb00a64 imx233: rework adc battery temperature sensor handling
Change-Id: I770729d7246b0ad8bc6fc5d6e45861325f6b790c
2012-05-19 16:10:51 +02:00
Amaury Pouly
692338629b imx233: move rtc init from drivers/ to firmware/
Change-Id: Id816987a4bb1191d5c9cf8a85c51d75fbb2da7c8
2012-05-19 12:57:42 +02:00
Amaury Pouly
2837555e09 imx233: add rtc functions related to msec
Change-Id: I3ed7469150920f3d7ac6c4218c2165fec547a422
2012-05-19 12:57:42 +02:00
Michael Sevakis
0bda1e1504 Fix a drawing bug where rectangles stop drawing too early.
As far as I can say only one file is affected. The loops needs to
go one more time since the end pointer is on the last pixel, not
beyond it.

Change-Id: Ie629138f8399b927bef7bad3847ef42db37e2fed
2012-05-19 06:05:47 -04:00
Dominik Riebeling
2d9c0bab54 Add support for cp1252 (Western European) codepage.
In Europe Windows defaults to its own codepage cp1252 (also known as "WinLatin"
or "Windows-1252"). cp1252 adds some characters to ISO-8859-1.

Some mp3 tagging software on Windows uses cp1252 instead of ISO-8859-1. This
violates the ID3 specification, which requires tags to be ISO-8859-1 or
Unicode. However, similar violations are made for other codepages and supported
by Rockbox using the "Default Codepage" setting. Add support for cp1252 to
enable people using such broken tools to override the correct decoding to get
their tags displayed properly.

Change-Id: I9f2ec478afe2503e99ee8e6609416c92b0f453e0
Reviewed-on: http://gerrit.rockbox.org/209
Reviewed-by: Jens Arnold <amiconn@rockbox.org>
Tested-by: Jens Arnold <amiconn@rockbox.org>
2012-05-19 01:42:53 +02:00
Jens Arnold
c736c0e45b Player LCD: Map several punctuation characters in the U+20xx range
This is in preparation of Win-1252 support (gerrit #209).
2012-05-19 00:30:55 +02:00
Thomas Martitz
6b8330d216 Enable USING_STORAGE_CALLBACK on hosted targets. Fixes config.cfg not written properly.
Change-Id: I3c87b41baae284b818be5c272d984d937ae0e350
2012-05-13 19:14:56 +02:00
Amaury Pouly
1d21e54fc4 fuze+: add RDS support
I successfully identified the STC/RDS pin as B2P27.
Strangely the OF uses polling instead of interrupts
but since they routed it, let's use it! On the fuze+
the fmradio i2c uses bit toggling so we can't read
the RDS data in the interrupt context. Instead we
defer the work to a thread.

Change-Id: Iedfa425320e6c91b4351b72e97c732696bdb2b73
Reviewed-on: http://gerrit.rockbox.org/236
Reviewed-by: Bertrik Sikken <bertrik@sikken.nl>
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
2012-05-12 13:09:06 +02:00
Amaury Pouly
645680d62b imx233: add pinctrl debug code to track pin uses
Past development has proved that one can mistakely use
the same pin for two uses without noticing. Since this
causes extremely hard to find bugs, the infrastructure
will allow to register pin uses and panic when a conflict
is detected. The pinctrl debug now shows the pin uses
when its support is compiled in.

Change-Id: Idb2d5235ce09207d77aa474d6f158e72b933761a
2012-05-10 00:13:11 +02:00
Nils Wallménius
d29a11b7a8 Rename HAVE_PITCHSCREEN to HAVE_PITCHCONTROL
Also move the definition to config.h

Change-Id: I36bb5020c5e06b2344292bc05e8c13ccc7a6a1ff
Reviewed-on: http://gerrit.rockbox.org/234
Reviewed-by: Nils Wallménius <nils@rockbox.org>
2012-05-09 14:32:38 +02:00
Nils Wallménius
2dda258f99 Remove STATICIRAM hack
It was only needed by the old arm toolchain that we no longer use or support.

Change-Id: Id0e6c67477f8834a637079b03cde5fbf9da68b1c
Reviewed-on: http://gerrit.rockbox.org/233
Reviewed-by: Nils Wallménius <nils@rockbox.org>
2012-05-08 22:46:12 +02:00
Amaury Pouly
3c26f131df fuze+: don't touch B1P{22,24} in lcd code since these are used by the tuner
Change-Id: Icdb328b939902c4f8e57a76d27296d58b9548aab
2012-05-08 14:07:40 +02:00
Marcin Bukat
18c016b4e0 Fix test fat failing on 64bit system (second bit of FS#12646)
We use unsigned long/long in number of places in fat.c. When this
is used to cast 32bit fat field it fails on 64bit systems.
This patch introduces explicit types (uint16_t, uint32_t) only
in places which influence how fat structures are interpreted.

Change-Id: I0be44d0b355f9de20b4deb221698d095f55d4bde
Reviewed-on: http://gerrit.rockbox.org/232
Reviewed-by: Frank Gevaerts <frank@gevaerts.be>
Reviewed-by: Torne Wuff <torne@wolfpuppy.org.uk>
2012-05-08 13:00:56 +02:00
Marcin Bukat
10829b2f78 Fix fat test program not compiling (FS#12646).
This changes the way creat() is wrapped around in native builds
so more experienced devs should look at it.

This patch forces to compile fat test in 32bit mode. Building
natively on x86-64 works just fine but our fat code apparently
can't deal with 64bit pointers/ints correctly.

Change-Id: I000015094f7db957ce826c22672608cd419908b0
Reviewed-on: http://gerrit.rockbox.org/228
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
2012-05-08 13:00:14 +02:00
Rafaël Carré
dae7a29b35 fix a mistake of 803408f18 spotted by n1s
When the source string terminates (with a 0) we pad the rest of the
destination with spaces.
2012-05-07 12:54:11 -04:00
Rafaël Carré
c4a51d2d88 missing const 2012-05-07 01:35:57 -04:00
Rafaël Carré
dd57c01bef simplify yearday_to_daymonth() 2012-05-07 01:30:45 -04:00
Rafaël Carré
803408f186 simplify copy_padded 2012-05-07 01:19:15 -04:00
Rafaël Carré
7ca2081036 remove debug-target.h 2012-05-07 00:55:59 -04:00
Rafaël Carré
ed38c5d953 remove unused prototypes 2012-05-07 00:51:13 -04:00
Rafaël Carré
cf090209a4 Sansa AMS: more compat irq names 2012-05-07 00:02:13 -04:00
Rafaël Carré
2eccc02d7d sansa AMS: i2s_reset() is never used 2012-05-06 23:47:05 -04:00
Rafaël Carré
65bb8e4452 Remove extraneous parens 2012-05-06 23:13:34 -04:00
Michael Sevakis
88aeef9127 Remove pointless IRAM allocation from voice DSP.
It's always used in MONO mode and doesn't need the IRAM sample/
resample buffers and 1280 bytes can be freed.

M5 can now have its PCM mixer downmix buffer in IRAM.

Change-Id: I0af08be5b212b7dfe382bba588a6585eb328a038
2012-05-04 22:00:44 -04:00
Sean Bartell
cadb3627fc Add rbcodecplatform.h and rbcodecconfig.h.
librbcodec users must provide these two files when the library is built.
rbcodecconfig.h provides configuration #defines and basic types, and
will be included by public librbcodec headers, so it must not conflict
with the user's code. rbcodecplatform.h provides various OS functions,
and will only be included by source files and private headers. This
system is intended to provide maximum flexibility for use on embedded
systems, where no operating system headers are included. Unix systems
can just copy rbcodecconfig-example.h and rbcodecplatform-unix.h with
minimal changes.

Change-Id: I350a2274d173da391fd1ca00c4202e9760d91def
Reviewed-on: http://gerrit.rockbox.org/143
Reviewed-by: Nils Wallménius <nils@rockbox.org>
Tested-by: Nils Wallménius <nils@rockbox.org>
2012-05-03 14:49:35 +02:00