Amaury Pouly
e5b5041583
imx233/fuze+: rework lradc/adc code, add external temperature sensing(battery)
...
Rework code to be more useful:
- move battery channel init to lradc
- always init lradc from system (previously from adc)
- don't reserve channels for vddio, nmos or pmos
- implement external temperature sensing using current source
- use this for battery sensing on the Fuze+ (calibration needed)
Change-Id: I5f9a24b9243db7d1e6bdb16b84bc891e61d0c318
2012-03-17 17:42:49 +01:00
Amaury Pouly
e07b22f27e
fuze+: add unknown channel to debug menu
...
imx233: always divide physical channels by two for wider range
The Fuze+ OF monitors channel 2 but I'm unable to determine the meaning of it.
Print the value on the debug menu so that people can have a look at it.
Change-Id: I8a942febeafbce06014178abda12e38a16c26664
2012-03-15 18:47:23 +01:00
Amaury Pouly
9caffa8bf7
imx233/fuze+: rework i2c and fmradio_i2c init
...
Only enable fmradio_i2c once with _init() called from system.
Move actual i2c init to system for consistency.
Move tuner power pin setup to power instead of fmradio.
Change-Id: Idb56bfba5803f71b5d049f174c48d2afb969a6ea
2012-03-15 15:01:11 +01:00
Jonathan Gordon
b37e6bc8c1
lcd drivers: Convert lcd_[remote_]framebuffer to a pointer
...
Change all lcd drivers to using a pointer to the static framebuffer
instead of directly accessing the static array. This will let us
later do fun things like dynamic framebuffer sizes (RaaA) or
ability to use different buffers for different layers (dynamic
skin backdrops!)
Change-Id: I0a4d58a9d7b55e6c932131b929e5d4c9f9414b06
2012-02-28 11:44:59 +11:00
Amaury Pouly
e67a1af35f
fuze+: the radio chip needs a few milliseconds to power up
...
Change-Id: I7e7f3bf86ab69d6c7e94e8b16c1a26f74a76f1a2
2012-02-05 18:14:12 +01:00
Boris Gjenero
cd89b31133
Fix Fuze+ bootloader red
...
Change-Id: I434e3f4930e6ab7f8d9f5ba43a5bfe0a387e0f09
2012-02-04 22:40:51 -05:00
Amaury Pouly
1a083cdacc
imx233/fuze+: fix a typo, handle volume differently because of the line1/dac mode difference.
...
The headphone volume register value reads differently in Line1 and DAC mode.
Since the volume is not set again when switching between playback and radio,
we need to remember the hp volume and reapply setting when changing the mode.
Change-Id: I8fbd344f78653c19d81a39dd3f680ec6885cb1ec
2012-02-03 20:04:39 +01:00
Amaury Pouly
3511435ee3
fuze+: don't use the DCP to copy the framebuffer since it can yield and then several lcd udpates could run concurrently with undefined behaviour
...
Change-Id: I39167188f354859fc8e4f9f979c97343b40beb7d
2012-02-02 11:20:00 +01:00
Amaury Pouly
0f02da208c
fuze+: check rectangle coordinates in lcd_update_rect
...
Change-Id: I5f23063751d7650b8eefd0f37393498d9a27bd19
2012-02-01 15:02:22 +01:00
Amaury Pouly
b1702a569a
fuze+: pin B1P30 is volume down key and has no relation with SD
...
Change-Id: Iee93e90d3054442ae873c55c05c030ed690ccbd6
2012-02-01 15:02:22 +01:00
Amaury Pouly
289440605a
imx233/fuze+: set a few recommended power bits by Freescale, remove some uneeded headers, implement audio path selection for playback and radio
...
Change-Id: If926ead9b776504a58eb102fcc0e9acadf4f7379
2012-02-01 15:02:22 +01:00
Amaury Pouly
d32891fa59
fuze+: change rendering scheme, do not rely on generic framebuffer and implement rect updating and yuv blitting correctly.
...
Now lcd_framebuffer is the only framebuffer in the system. We still use a ARM-buffered buffer
which serve as an intermediate buffer for copying, to accomodate the requirement of the controller.
We implement lcd_update_rect() properly using this new scheme (this requires two little quirks),
this allows to implement lcd_blit_yuv with the right semantic (bypasses the framebuffer). YUV to RGB
conversion is still done in software but the DCP CSC should be able to do that but the hardware rotation
scheme is not the same as our software so it will require some tricks.
Change-Id: I0752e9c2f1a705d2e6a6010084e1f150965d8370
2012-01-27 20:08:33 +01:00
Amaury Pouly
8cadb587e8
fuzeplus: fix lcd-target.h (LCD_FRAMEBUF_ADDR must point to lcd_framebuffer and not FRAME)
...
Change-Id: Ia1f16f9b8e3041517b60336c06aedd40dfd2be12
2012-01-15 02:29:30 +01:00
Rafaël Carré
162a8b1e40
fix fuze+ build: we need stdbool.h for bool
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31622 a1c6a512-1295-4272-9138-f99709370657
2012-01-08 00:22:39 +00:00
Rafaël Carré
95cf63b294
button-target.h : move prototypes to button.h
...
no need to define BUTTON_REMOTE anymore
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31620 a1c6a512-1295-4272-9138-f99709370657
2012-01-08 00:07:19 +00:00
Amaury Pouly
4200e979fa
fuze+: workaround the power/volume+ multiplexing that would trigger a false power button detection on heavy usage (FS#12405). Thanks to Jean-Louis Biasini
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31599 a1c6a512-1295-4272-9138-f99709370657
2012-01-07 18:01:01 +00:00
Rafaël Carré
d1dd88eb45
imx233: move dbg function declaration to system-target.h
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31573 a1c6a512-1295-4272-9138-f99709370657
2012-01-04 06:37:25 +00:00
Amaury Pouly
84b97dd1ea
fuze+: remove two_finger pseudo touchpad button because it was unrealiable, update keymap to remove akward mappings
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31444 a1c6a512-1295-4272-9138-f99709370657
2011-12-26 17:45:54 +00:00
Amaury Pouly
f7f1f7023f
imx233/fuze+: implement power management(battery charger), add powermgmt debug info, add power debug info, move target specific powermgmt code to its own files, remove auto-slow setup which was forgotten for debugging
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31424 a1c6a512-1295-4272-9138-f99709370657
2011-12-24 19:20:12 +00:00
Michael Sevakis
95e6043d5e
Convert remaining memframe LCDs that can be convert to common code.
...
Massage the way it interfaces a bit to make things more flexible.
The chroma_buf scheme on Sansa Connect and Creative ZVx calling the
lcd_write_yuv420_lines implementation in lcd-as-memframe.S with five params
with a chroma buffer that the function can't use wouldn't work anyway so just
have them use the stock implementation (really, how was that working?).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31335 a1c6a512-1295-4272-9138-f99709370657
2011-12-16 23:40:39 +00:00
Amaury Pouly
744adcba81
imx233: add comment about block reset
...
fuze+: reset the controller for all lcd types, should fix the "CRT effet"
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31234 a1c6a512-1295-4272-9138-f99709370657
2011-12-13 22:48:01 +00:00
Amaury Pouly
374a08ab31
fuze+: update keymap and touchpad driver based on FS#12405 with minor modifications. Thanks to Jean-Louis Biasini.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31098 a1c6a512-1295-4272-9138-f99709370657
2011-11-30 18:39:22 +00:00
Amaury Pouly
852b68c74a
imx233/fuze+: set drive strength of tuner chip enable pin, enable backlight on panic
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31026 a1c6a512-1295-4272-9138-f99709370657
2011-11-17 23:10:22 +00:00
Amaury Pouly
7e211ff9d1
fuze+: adjust touchpad sensitivity based on product id like OF, add debug screen to hw info
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31010 a1c6a512-1295-4272-9138-f99709370657
2011-11-17 19:13:09 +00:00
Amaury Pouly
ea8570b48c
imx233: remove virtual 5V channel (value doesn't make sense), fix battery conversion (need to trigger delay)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30986 a1c6a512-1295-4272-9138-f99709370657
2011-11-14 21:42:43 +00:00
Amaury Pouly
e167c1d8d7
imx233: add automatic battery conversion using delay channel, make 5V a virtual channel since it has a builtin divider
...
fuze+: use 5V virtual channel
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30982 a1c6a512-1295-4272-9138-f99709370657
2011-11-14 21:05:14 +00:00
Amaury Pouly
7fec08927b
fuze+: fix backlight to have a real zero
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30978 a1c6a512-1295-4272-9138-f99709370657
2011-11-14 19:46:09 +00:00
Amaury Pouly
2a45f7772b
fuze+: fix backlight calculations
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30977 a1c6a512-1295-4272-9138-f99709370657
2011-11-14 19:14:34 +00:00
Amaury Pouly
7aac4188d2
fuze+: fix typo (mdelay vs udelay) in register read (shouldn't change anything) and be sure lcdif is ready
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30958 a1c6a512-1295-4272-9138-f99709370657
2011-11-10 17:29:57 +00:00
Amaury Pouly
bbbc2e8877
fuze+: fix typo in lcd init sequence for second lcd type
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30926 a1c6a512-1295-4272-9138-f99709370657
2011-11-07 09:18:24 +00:00
Amaury Pouly
856fb705c2
fuze+: use macro and add a few static
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30889 a1c6a512-1295-4272-9138-f99709370657
2011-11-02 17:48:04 +00:00
Amaury Pouly
f5d664ad93
fuzeplus: rework button handling to use a queue instead of a blocking semaphore in the thread
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30844 a1c6a512-1295-4272-9138-f99709370657
2011-10-27 10:38:19 +00:00
Amaury Pouly
e9575bdf2f
fuze+: fix typo and remove ugly logf construct
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30829 a1c6a512-1295-4272-9138-f99709370657
2011-10-23 14:19:50 +00:00
Amaury Pouly
623cbd6e02
imx233/fuze+: implement pcm out and audio codec, update SOURCES
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30800 a1c6a512-1295-4272-9138-f99709370657
2011-10-18 22:08:41 +00:00
Amaury Pouly
359826aa94
fuze+: fix bootloader not set backlight brightness
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30791 a1c6a512-1295-4272-9138-f99709370657
2011-10-18 21:58:14 +00:00
Amaury Pouly
09b4c7667e
fuze+: implement basic touchpad driver
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30637 a1c6a512-1295-4272-9138-f99709370657
2011-10-02 14:44:31 +00:00
Amaury Pouly
30f333108c
fuze+: set backlight brightness to default only when there is not backlight infrastructure
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30636 a1c6a512-1295-4272-9138-f99709370657
2011-10-02 14:44:26 +00:00
Amaury Pouly
2546bc59cc
imx233/fuze+: add fuze+ to the simulator framework
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30602 a1c6a512-1295-4272-9138-f99709370657
2011-09-25 15:35:39 +00:00
Amaury Pouly
e55394521b
imx233/fuze+: implement various audio stubs and update source
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30535 a1c6a512-1295-4272-9138-f99709370657
2011-09-13 23:40:12 +00:00
Amaury Pouly
696b9d146b
imx233/fuze+: implement lradc function and adc on top of it
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30534 a1c6a512-1295-4272-9138-f99709370657
2011-09-13 23:40:09 +00:00
Amaury Pouly
06c03b51b2
imx233/fuze+: fix default init code (define lcd kind as 9325 and do 7783 init !)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30532 a1c6a512-1295-4272-9138-f99709370657
2011-09-13 23:39:22 +00:00
Amaury Pouly
7d4fed53cc
imx233:fuze+: major memory and usb rework
...
- now identity map dram uncached and have a cached and buffered virtual alias
- rework dma to handle virtual to physical pointers conversion
- fix lcd frame pointer
- implement usb detection properly
- implement bootloader usb properly
- allow the bootloader to disable MMC windowing (useful for recovery)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30432 a1c6a512-1295-4272-9138-f99709370657
2011-09-05 11:29:32 +00:00
Amaury Pouly
855e3c6f0f
imx233/fuze+: implement lcd_blit_yuv (untested)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30207 a1c6a512-1295-4272-9138-f99709370657
2011-07-24 19:12:27 +00:00
Amaury Pouly
eb90d95693
imx233/fuze+: huge rework
...
- enable MMU
-rework lcd frame buffer
- add rtc/adc/power stubs (or not)
- fix a few MMC related defines (hopefully)
- implement cache handling for DMA
- more SD work
- add keymap (based on clip)
- add virtual buttons
- update linker scripts
- big step toward apps actually compiling
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30200 a1c6a512-1295-4272-9138-f99709370657
2011-07-23 11:45:22 +00:00
Amaury Pouly
5a2681161b
imx233/fuze+: make SOURCES more correct, implement i2c for fmradio
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30135 a1c6a512-1295-4272-9138-f99709370657
2011-07-09 17:14:05 +00:00
Amaury Pouly
e36b20c4a1
imx233/fuze+: replace software i2c by hardware i2c, make some code more correct, reduce code size of lcd init sequences
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30120 a1c6a512-1295-4272-9138-f99709370657
2011-07-03 15:18:41 +00:00
Amaury Pouly
88f75d096e
imx233/fuze+: don't compile {touchpad code,sd} in bootloader mode, fix style in mmc
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30112 a1c6a512-1295-4272-9138-f99709370657
2011-07-02 02:21:06 +00:00
Amaury Pouly
a43509cc99
fuze+: implement a full-blown debug screen for touchpad with graphical feedback
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29869 a1c6a512-1295-4272-9138-f99709370657
2011-05-13 16:40:22 +00:00
Amaury Pouly
86e8c28330
fuze+: implement Synaptics RMI driver on top of i2c, add touchpad debug screen, bootloader enters debug screen by default
...
Since the bootloader currently always fails at storage point (unimplemented), always enter touchpad debug screen and power off which pressing power button.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29859 a1c6a512-1295-4272-9138-f99709370657
2011-05-11 22:38:09 +00:00
Amaury Pouly
2481427b03
fuze+: add init/enable/disable lcd sequences for the second lcd kind (only based on disassembly, untested)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29852 a1c6a512-1295-4272-9138-f99709370657
2011-05-10 17:22:01 +00:00