rockbox/firmware/target/arm/imx233
William Wilgus 1f63604e2c Fuze PLUS Fix lcd_update_rect()
Lcd_update rect was hanging during horizontal screen update x = 238 and width = 2
which was within the bounds of the screen, this seems to be a weird corner case
but more testing needs done.

Update_rect now properly bounded between 0 - screen w/h
--Cleaned up code

Pixels in x are now multiples of 4.

Datasheet states:
-------------------------------------------------------------------------------------------
WORD_LENGTH=0 implies the input frame buffer is RGB 16 bits per pixel.
DATA_FORMAT_16_BIT field indicates if the pixels are in RGB 555 or RGB 565 format.
Limitations:
— BYTE_PACKING_FORMAT [3:0] should be 0x3 or 0xC if there is only one pixel per word.
— If there are two pixels per word, BYTE_PACKING_FORMAT [3:0] should be 0xF and
H_COUNT will be restricted to be a multiple of 2 pixels.

and

WORD_LENGTH=3 indicates that the input frame-buffer is RGB 24 bits per pixel (RGB 888). If
BYTE_PACKING_FORMAT [3:0] is 0x7, it indicates that there is only one pixel per 32-bit word
and there is no restriction on H_COUNT.
Limitations:
— If BYTE_PACKING_FORMAT [3:0] is 0xF, it indicates that the pixels are packed, i.e. there
are 4 pixels in 3 words or 12 bytes. In that case, H_COUNT must be a multiple of 4 pixels.
-------------------------------------------------------------------------------------------

We are using 16 bits per pixel and byte_packing = 0xF but device crashes with multiple of 2 pixels

Behaviour can be verified with plugin - oscilloscope, Horizontal mode device hangs as indicator
reaches right of screen

Change-Id: I1445f5334f4e7fe59304c65c76b47d0daa0614b2
2018-05-25 22:48:01 +02:00
..
creative-zen zen/zenxfi: increase LCD clock frequency 2017-08-27 17:49:11 +02:00
creative-zenxfi2 Zen XFi2: Enable Plugins 2018-04-03 11:34:01 +02:00
creative-zenxfi3 imx233: make microphone bias, bias pin and resistor configurable 2016-09-21 00:36:51 +01:00
pins imx233: add stmp3600 and stmp3700 pin descriptions 2013-06-18 16:21:38 +02:00
regs imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
samsung-ypz5 Samsung YP-Z5: keypad adaption to the new button API 2017-05-16 12:10:50 +10:00
sansa-fuzeplus Fuze PLUS Fix lcd_update_rect() 2018-05-25 22:48:01 +02:00
sony-nwz nwz-370/380: increase adc button error margin 2016-05-28 17:11:49 +02:00
adc-imx233.c imx233: cosmetics 2016-05-28 17:07:42 +02:00
adc-target.h Fix sim red 2013-11-19 22:12:42 +00:00
app.lds imx233: remove redundant lines in linker script 2017-01-24 15:34:20 +01:00
ata-imx233.c imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
ata-target.h Unify storage threads into one 2017-10-26 14:35:41 -04:00
audio-imx233.c imx233: remove weak attribute on some functions 2017-02-04 17:16:32 +01:00
audio-imx233.h imx233: remove weak attribute on some functions 2017-02-04 17:16:32 +01:00
audioin-imx233.c imx233: make microphone bias, bias pin and resistor configurable 2016-09-21 00:36:51 +01:00
audioin-imx233.h imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
audioout-imx233.c imx233: fix audio debug screen on stmp3700 2017-01-14 01:17:25 +01:00
audioout-imx233.h imx233: slightly rework 3D audio setting 2016-12-12 12:15:24 +01:00
boot.lds imx233: remove redundant lines in linker script 2017-01-24 15:34:20 +01:00
button-imx233.c imx233: remove weak attribute on some functions 2017-02-04 17:16:32 +01:00
button-imx233.h imx233: remove weak attribute on some functions 2017-02-04 17:16:32 +01:00
button-lradc-imx233.c imx233: make button-lradc drive able to handle VDDIO derived values 2014-02-10 23:14:25 +01:00
button-lradc-imx233.h imx233: make button-lradc drive able to handle VDDIO derived values 2014-02-10 23:14:25 +01:00
clkctrl-imx233.c imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
clkctrl-imx233.h imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
clock-target.h
crt0.S Add boot data support to rockbox. 2017-10-29 17:50:59 +01:00
dcp-imx233.c Add missing kernel.h includes (hopefully all of them). 2014-01-05 20:32:09 +01:00
dcp-imx233.h Fix copyright headers 2012-12-29 01:40:35 +01:00
debug-imx233.c Don't call touchscreen functions when we don't have a touchscreen 2017-09-17 00:27:10 +02:00
dma-imx233.c imx233: workaround hardware dma bug 2017-01-15 18:41:27 +01:00
dma-imx233.h imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
dualboot-imx233.c imx233: add capability to boot OF or updater instead of Rockbox 2016-12-12 12:03:08 +01:00
dualboot-imx233.h imx233: add capability to boot OF or updater instead of Rockbox 2016-12-12 12:03:08 +01:00
emi-imx233.c imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
emi-imx233.h imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
fmradio-imx233.c imx233: rewrite i2c driver 2016-06-01 22:55:37 +02:00
fmradio-imx233.h imx233: factor fmradio i2c and tuner power code 2013-11-19 20:39:10 +00:00
gpmi-imx233.c imx233: add gpmi stubs 2012-05-19 16:10:52 +02:00
gpmi-imx233.h imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
i2c-imx233.c imx233: rewrite i2c driver 2016-06-01 22:55:37 +02:00
i2c-imx233.h imx233: rewrite i2c driver 2016-06-01 22:55:37 +02:00
icoll-imx233.c imx233: add more icoll statistics 2016-12-12 13:20:10 +01:00
icoll-imx233.h imx233: add more icoll statistics 2016-12-12 13:20:10 +01:00
kernel-imx233.c imx233: simplify timrot API 2016-05-28 17:18:32 +02:00
kernel-imx233.h imx233: fix touchscreen driver 2017-05-16 12:14:43 +10:00
lcdif-imx233.c imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
lcdif-imx233.h imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
led-imx233.c imx233: add small framework for LED 2017-01-16 20:08:13 +01:00
led-imx233.h imx233: add small framework for LED 2017-01-16 20:08:13 +01:00
lradc-imx233.c imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
lradc-imx233.h imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
nand-imx233.c Do some housekeeping with fat.h and SECTOR_SIZE 2017-03-12 22:05:44 -04:00
ocotp-imx233.h imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
partitions-imx233.c imx233: be less strict about partition checks (>=1GB only) 2014-01-21 18:52:28 +01:00
partitions-imx233.h imx233/creative: workaround stupid Creative partition table 2013-11-11 02:02:11 +00:00
pcm-imx233.c imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
pinctrl-imx233.c imx233: fix pinctrl for stmp3600 and stmp3700 2013-06-17 00:29:25 +02:00
pinctrl-imx233.h imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
power-imx233.c imx233: update comment about vbusvalid 2017-08-27 17:48:39 +02:00
power-imx233.h imx233: don't print stmp3780 debug info on stmp3700 2017-07-31 01:04:24 +02:00
powermgmt-imx233.c imx233: fix red 2016-05-28 16:50:07 +01:00
powermgmt-imx233.h imx233: speedup charging trickle phase 2016-05-28 16:21:03 +01:00
pwm-imx233.c imx233: add small framework for LED 2017-01-16 20:08:13 +01:00
pwm-imx233.h imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
rtc-imx233.c imx233: implement alarm wake up 2013-07-02 00:45:00 +02:00
rtc-imx233.h imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
sdmmc-imx233.c Unify storage threads into one 2017-10-26 14:35:41 -04:00
sdmmc-imx233.h Fix red, forgotten file 2016-05-29 20:21:26 +01:00
ssp-imx233.c imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
ssp-imx233.h imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
system-imx233.c Imx233 Disable Autoslow only at maximum cpu frequency 2017-11-12 14:28:03 +01:00
system-target.h imx233: Implement mutex for cpu_boost_lock/unlock 2017-10-28 14:47:21 +02:00
timer-imx233.c imx233: simplify timrot API 2016-05-28 17:18:32 +02:00
timrot-imx233.c imx233: simplify timrot API 2016-05-28 17:18:32 +02:00
timrot-imx233.h imx233: simplify timrot API 2016-05-28 17:18:32 +02:00
touchscreen-imx233.c imx233: fix touchscreen driver 2017-05-16 12:14:43 +10:00
touchscreen-imx233.h Fix copyright headers 2012-12-29 01:40:35 +01:00
uartdbg-imx233.c imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
uartdbg-imx233.h imx233: generate register headers using headergen_v2 and update code for it 2016-05-28 16:49:22 +02:00
usb-imx233.c imx233: fix usb_detect() to be consistent with vbus detection 2013-10-21 01:23:14 +02:00