Russell King [Mon, 29 Dec 2008 18:08:11 +0000 (18:08 +0000)]
Merge branch 'for-rmk' of git://git./linux/kernel/git/ycmiao/pxa-linux-2.6 into devel
Eric Miao [Tue, 23 Dec 2008 09:49:43 +0000 (17:49 +0800)]
[ARM] pxafb: add support for overlay1 and overlay2 as framebuffer devices
PXA27x and later processors support overlay1 and overlay2 on-top of the
base framebuffer (although under-neath the base is also possible). They
support palette and no-palette RGB formats, as well as YUV formats (only
available on overlay2). These overlays have dedicated DMA channels and
behave in a similar way as a framebuffer.
This heavily simplified and re-structured work is based on the original
pxafb_overlay.c (which is pending for mainline merge for a long time).
The major problems with this pxafb_overlay.c are (if you are interested
in the history):
1. heavily redundant (the control logics for overlay1 and overlay2 are
actually identical except for some small operations, which are now
abstracted into a 'pxafb_layer_ops' structure)
2. a lot of useless and un-tested code (two workarounds which are now
fixed on mature silicons)
3. cursorfb is actually useless, hardware cursor should not be used
this way, and the code was actually un-tested for a long time.
The code in this patch should be self-explanatory, I tried to add minimum
comments. As said, this is basically simplified, there are several things
still on the pending list:
1. palette mode is un-supported and un-tested (although re-using the
palette code of the base framebuffer is actually very easy now with
previous clean-up patches)
2. fb_pan_display for overlay(s) is un-supported
3. the base framebuffer can actually be abstracted by 'pxafb_layer' as
well, which will help further re-use of the code and keep a better
and consistent structure. (This is the reason I named it 'pxafb_layer'
instead of 'pxafb_overlay' or something alike)
See Documentation/fb/pxafb.txt for additional usage information.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Cc: Rodolfo Giometti <giometti@linux.it>
Signed-off-by: Eric Miao <ycmiao@ycmiao-hp520.(none)>
Eric Miao [Thu, 18 Dec 2008 14:51:54 +0000 (22:51 +0800)]
[ARM] pxafb: cleanup of the timing checking code
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Eric Miao <ycmiao@ycmiao-hp520.(none)>
Eric Miao [Thu, 18 Dec 2008 14:36:26 +0000 (22:36 +0800)]
[ARM] pxafb: cleanup of the color format manipulation code
1. introduce var_to_depth() to calculate the color depth including the
transparency bit
2. the conversion from 'fb_var_screeninfo' to LCCR3 BPP bits can be re-
used by overlays (in OVLxC1), thus an individual pxafb_var_to_bpp()
has been separated out.
3. pxafb_setmode() should really set the color bitfields correctly at
begining, introduce a pxafb_set_pixfmt() for this
4. allow user apps to specify color formats within fb_var_screeninfo,
and checking of this in pxafb_check_var() has been simplified as
below:
a) pxafb_var_to_bpp() should pass - which means a basically correct
bits_per_pixel and color depth setting
b) the RGBT bitfields are then forced into supported values by
pxafb_set_pixfmt()
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Eric Miao <ycmiao@ycmiao-hp520.(none)>
Eric Miao [Thu, 18 Dec 2008 14:10:00 +0000 (22:10 +0800)]
[ARM] pxafb: add palette format support for LCCR4_PAL_FOR_3
Add the palette format support for LCCR4_PAL_FOR_3, and fix the
issue of LCCR4 being never assigned.
Also remove the useless pxafb_set_truecolor().
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Eric Miao <ycmiao@ycmiao-hp520.(none)>
Eric Miao [Wed, 17 Dec 2008 08:50:43 +0000 (16:50 +0800)]
[ARM] pxafb: add support for FBIOPAN_DISPLAY by dma braching
dma branching is enabled by extending the current setup_frame_dma()
function to allow a 2nd set of frame/palette dma descriptors to be
used.
As a result, pxafb_dma_buff.dma_desc[], pxafb_dma_buff.pal_desc[]
and pxafb_info.fdadr[] are doubled.
This allows maximum re-use of the current dma setup code, although
the pxafb_info.fdadr[xx] for FBRx register values looks a bit odd.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Eric Miao <ycmiao@ycmiao-hp520.(none)>
Eric Miao [Wed, 17 Dec 2008 06:56:54 +0000 (14:56 +0800)]
[ARM] pxafb: allow pxafb_set_par() to start from arbitrary yoffset
Note the var->yres_virtual is only re-calculated from the fix.smem_len
when text mode acceleration is enabled (which is default), this is due
to the issue as Russell suggested below:
Previous experience of doing this with the X server and acornfb is that
it causes all sorts of problems - it seems to force the X server into
assuming that the framebuffer should be panned no matter what settings
you ask it for.
The recommended workaround (implemented in acornfb) is to only do these
kinds of adjustments if text mode acceleration is enabled. IIRC, the X
server should be disabling text mode acceleration when it maps the
framebuffer. I seem to remember that there are X servers which forget
to do that though.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Eric Miao <ycmiao@ycmiao-hp520.(none)>
Eric Miao [Tue, 16 Dec 2008 03:54:34 +0000 (11:54 +0800)]
[ARM] pxafb: allow video memory size to be configurable
The amount of video memory size is decided according to the following
order:
1. <xres> x <yres> x <bits_per_pixel> by default, which is the backward
compatible way
2. size specified in platform data
3. size specified in module parameter 'options' string or specified in
kernel boot command line (see updated Documentation/fb/pxafb.txt)
And now since the memory is allocated from system memory, the pxafb_mmap
can be removed and the default fb_mmap() should be working all right.
Also, since we now have introduced the 'struct pxafb_dma_buff' for DMA
descriptors and palettes, the allocation can be separated cleanly.
NOTE: the LCD DMA actually supports chained transfer (i.e. page-based
transfers), to simplify the logic and keep the performance (with less
TLB misses when accessing from memory mapped user space), the memory
is allocated by alloc_pages_*() to ensures it's physical contiguous.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Eric Miao <ycmiao@ycmiao-hp520.(none)>
Eric Miao [Thu, 25 Dec 2008 09:19:02 +0000 (17:19 +0800)]
[ARM] pxa: add document on the MFP design and how to use it
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Eric Miao [Wed, 24 Dec 2008 03:32:45 +0000 (11:32 +0800)]
[ARM] sa1100_wdt: don't assume CLOCK_TICK_RATE to be a constant
See description of commit:
[ARM] rtc-sa1100: don't assume CLOCK_TICK_RATE to be a constant
for additional information.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Eric Miao [Thu, 18 Dec 2008 03:10:32 +0000 (11:10 +0800)]
[ARM] rtc-sa1100: don't assume CLOCK_TICK_RATE to be a constant
As Nicolas and Russell pointed out, CLOCK_TICK_RATE is no more
a constant on PXA when multiple processors and platforms are
selected, change TIMER_FREQ in rtc-sa1100.c into a variable.
Since the code to decide the clock tick rate is re-used from
timer.c, introduce a common get_clock_tick_rate() for this.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Acked-by: Nicolas Pitre <nico@marvell.com>
Eric Miao [Sat, 27 Dec 2008 16:40:29 +0000 (00:40 +0800)]
[ARM] pxa/tavorevb: update board support (smartpanel LCD + keypad)
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Russell King [Thu, 25 Dec 2008 00:13:35 +0000 (00:13 +0000)]
Merge branch 'for_rmk' of git://git.mnementh.co.uk/linux-2.6-im into devel
Ian Molton [Wed, 24 Dec 2008 23:59:48 +0000 (23:59 +0000)]
[ARM] pxa: Update eseries defconfig
Signed-off-by: Ian Molton <ian@mnementh.co.uk>
wanzongshun [Tue, 23 Dec 2008 02:23:12 +0000 (03:23 +0100)]
[ARM] 5352/1: add w90p910-plat config file
The patch is for w90p910 platform default config.
Signed-off-by: Wan ZongShun <mcuos.com@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Tue, 23 Dec 2008 18:06:37 +0000 (18:06 +0000)]
Merge branch 'for-rmk' of git://git./linux/kernel/git/ycmiao/pxa-linux-2.6 into devel
Conflicts:
arch/arm/mach-pxa/am200epd.c
arch/arm/mach-pxa/ezx.c
Russell King [Sun, 21 Dec 2008 15:02:07 +0000 (15:02 +0000)]
[ARM] s3c: S3C options should depend on PLAT_S3C
This avoids non-Samsung builds being asked about Samsung specific
configuration options.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Sat, 20 Dec 2008 17:40:03 +0000 (17:40 +0000)]
Merge git://git.marvell.com/orion into devel
Lennert Buytenhek [Sun, 19 Oct 2008 23:51:04 +0000 (01:51 +0200)]
[ARM] mv78xx0: implement GPIO and GPIO interrupt support
Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Signed-off-by: Nicolas Pitre <nico@marvell.com>
Lennert Buytenhek [Sun, 19 Oct 2008 23:51:04 +0000 (01:51 +0200)]
[ARM] Kirkwood: implement GPIO and GPIO interrupt support
Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Signed-off-by: Nicolas Pitre <nico@marvell.com>
Lennert Buytenhek [Sun, 19 Oct 2008 23:51:03 +0000 (01:51 +0200)]
[ARM] Orion: share GPIO IRQ handling code
Split off Orion GPIO IRQ handling code into plat-orion/.
Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Signed-off-by: Nicolas Pitre <nico@marvell.com>
Lennert Buytenhek [Sun, 19 Oct 2008 23:51:03 +0000 (01:51 +0200)]
[ARM] Orion: share GPIO handling code
Split off Orion GPIO handling code into plat-orion/, and add
support for multiple sets of (32) GPIO pins.
Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Signed-off-by: Nicolas Pitre <nico@marvell.com>
Russell King [Fri, 19 Dec 2008 19:46:52 +0000 (19:46 +0000)]
Merge branch 'for-rmk' of git://git.pengutronix.de/git/ukl/linux-2.6 into devel
Russell King [Thu, 18 Dec 2008 23:29:15 +0000 (23:29 +0000)]
[ARM] s3c: define __io using the typesafe version
as per
0560cf5aa51216b06874333a2fa26ca034d97bdb
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Thu, 18 Dec 2008 22:15:48 +0000 (22:15 +0000)]
Merge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6 into devel
Russell King [Thu, 18 Dec 2008 22:15:30 +0000 (22:15 +0000)]
Merge branch 'next-merged' of git://aeryn.fluff.org.uk/bjdooks/linux into devel
Ben Dooks [Thu, 18 Dec 2008 22:06:42 +0000 (22:06 +0000)]
[ARM] S3C64XX: Ensure CPU_V6 is selected
Select CPU_V6 with the S3C64XX series.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 18 Dec 2008 11:26:54 +0000 (12:26 +0100)]
[ARM] 5349/1: VFP: Add PM code to save and restore current VFP state
When CONFIG_PM is selected, the VFP code does not have any handler
installed to deal with either saving the VFP state of the current
task, nor does it do anything to try and restore the VFP after a
resume.
On resume, the VFP will have been reset and the co-processor access
control registers are in an indeterminate state (very probably the
CP10 and CP11 the VFP uses will have been disabled by the ARM core
reset). When this happens, resume will break as soon as it tries to
unfreeze the tasks and restart scheduling.
Add a sys device to allow us to hook the suspend call to save the
current thread state if the thread is using VFP and a resume hook
which restores the CP10/CP11 access and ensures the VFP is disabled
so that the lazy swapping will take place on next access.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Sun, 14 Dec 2008 22:33:02 +0000 (22:33 +0000)]
[ARM] S3C: Remove unnecessary <linux/delay.h> includes
As per Russell King's last review comment, find and remove
all unnecessary includes of <linux/delay.h> in the files
that do not need them.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Sun, 14 Dec 2008 22:50:26 +0000 (22:50 +0000)]
[ARM] S3C24A0: Remove duplicate <mach/io.h> file
The commit
39263db7986bf15c753f6847699107bdf5a2e318 added
a default <mach/io.h> implementation which is shared if
needed between all the s3c implementations. Remove the
s3c24a0 version which is the same as this.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Sun, 14 Dec 2008 23:11:02 +0000 (23:11 +0000)]
[ARM] S3C: Remove cpufreq warnings for unset serial information
As noted by Russell King, do not print any warnings if the
uinfo or tty fields are not set when a CPU frequency change
is sent.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Sun, 14 Dec 2008 23:14:07 +0000 (23:14 +0000)]
[ARM] S3C64XX: Remove __virt_to_bus/__bus_to_virt macros
The changes for ARM highmem support have removed the need
for the __virt_to_bus and __bus_to_virt macros, so remove them
from this build.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Tue, 4 Nov 2008 15:29:09 +0000 (15:29 +0000)]
[ARM] S3C24XX: Add fourth UART definition for S3C2443
Add the fourth UART definition for the S3C2443, and at the
same time fixup the problems caused by the enlarging of the
UART array in the previous commits.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Mon, 3 Nov 2008 19:51:42 +0000 (19:51 +0000)]
[ARM] S3C: Update CONFIG_SERIAL_SAMSUNG_UARTS handling
Fix the usage of CONFIG_SERIAL_SAMSUNG_UARTS in several places
in the kernel where it had been missed. This finishes fixing a
long standing issue where S3C2443 and S3C64XX could not use the
4th UART
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Mon, 3 Nov 2008 09:21:23 +0000 (09:21 +0000)]
[ARM] S3C: Update number of serial ports
Update the serial driver to handle the 4 ports of the
S3C2443 and S364XX series.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 18 Dec 2008 16:17:37 +0000 (16:17 +0000)]
Merge branch 'next-s3c64xx-device' into next-merged
Conflicts:
arch/arm/mach-s3c2440/mach-at2440evb.c
Sascha Hauer [Thu, 18 Dec 2008 10:51:57 +0000 (11:51 +0100)]
[ARM] MXC: do not include mach/hardware.h from mach/memory.h
Instead of including other header files, define PHYS_OFFSET directly
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Thu, 18 Dec 2008 10:24:03 +0000 (11:24 +0100)]
[ARM] MXC: do not include mach/hardware.h from mach/timex.h
Instead of including other header files, define CLOCK_TICK_RATE directly
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Thu, 18 Dec 2008 10:08:55 +0000 (11:08 +0100)]
[ARM] MXC: remove dependency to other include files from irqs.h
This patch removes the inclusion of mach/hardware.h from mach/irqs.h and
switches to more meaningful names for the irq related macros.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Thu, 18 Dec 2008 09:01:49 +0000 (10:01 +0100)]
[ARM] MX1/MX2 DMA: add missing local_irq_restore()
This patch adds a missing call to local_irq_restore() and fixes some
compiler warnings about unused variables for MX1.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Ben Dooks [Thu, 18 Dec 2008 14:52:04 +0000 (14:52 +0000)]
Merge branch 'next-s3c64xx' into next-merged
Ben Dooks [Thu, 18 Dec 2008 14:52:00 +0000 (14:52 +0000)]
Merge branch 'next-s3c24xx' into next-merged
Ben Dooks [Mon, 10 Nov 2008 10:59:29 +0000 (10:59 +0000)]
[ARM] AT2440EVB: LCD frame buffer support.
Add LCD frame buffer support for AT2440EVB board.
Signed-off-by: Ramax Lo <ramaxlo@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Mon, 10 Nov 2008 10:59:28 +0000 (10:59 +0000)]
[ARM] S3C24XX: AT2440EVB MMC
Add SD/MMC support for AT2440EVB board.
Signed-off-by: Ramax Lo <ramaxlo@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Mon, 10 Nov 2008 10:59:31 +0000 (10:59 +0000)]
[ARM] ANUBIS: Add SM501 GPIO and update I2C setup
Add GPIO support to the SM501 on the Simtec Anubis,
and then add the necessary updates for allowing the
two gpio I2C busses to be used.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Mon, 10 Nov 2008 10:59:32 +0000 (10:59 +0000)]
[ARM] S3C24XX: Add extra GPIOs via Kconfig
Add Kconfig entries to allow more GPIO space to
be specified depending on the machine(s) selected.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Mon, 10 Nov 2008 10:59:33 +0000 (10:59 +0000)]
[ARM] JIVE: fix spi gpio implementation
Fix the name of the driver, as well as the fact we are not
passing the number of chipselects to the driver.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Ben Dooks [Thu, 18 Dec 2008 14:20:04 +0000 (14:20 +0000)]
[ARM] S3C24XX: ADC driver core
A common core driver for the S3C24XX ADC block so that
the touchscreen, hwmon and any other drivers can share
the resource.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Sascha Hauer [Thu, 18 Dec 2008 10:12:39 +0000 (11:12 +0100)]
[ARM] MX27ads: fix function name
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Thu, 18 Dec 2008 08:32:23 +0000 (09:32 +0100)]
[ARM] MX1: Add missing selection of ARM920T
The MX1 only has one possible CPU type, ARM920T. Select it in
Kconfig.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Russell King [Wed, 17 Dec 2008 20:05:39 +0000 (20:05 +0000)]
Merge branch 'rmk-devel-mxc-pu-v2' of git://pasiphae.extern.pengutronix.de/git/imx/linux-2.6 into devel
Russell King [Wed, 17 Dec 2008 20:04:45 +0000 (20:04 +0000)]
Merge branch 'mxc-pu-imxfb' of git://pasiphae.extern.pengutronix.de/git/imx/linux-2.6 into devel
Russell King [Wed, 17 Dec 2008 20:03:39 +0000 (20:03 +0000)]
Merge branch 'hsmmc-init' of git://git./linux/kernel/git/tmlind/linux-omap-2.6 into devel
Eric Miao [Wed, 10 Dec 2008 09:04:38 +0000 (17:04 +0800)]
[ARM] pxa/littleton: add preliminary I2C board info (da9034 + max7320)
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Eric Miao [Mon, 8 Dec 2008 13:33:49 +0000 (21:33 +0800)]
[ARM] pxa/saar: add support for the on-board smart panel LCD
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Jonathan Cameron [Fri, 12 Dec 2008 20:43:09 +0000 (20:43 +0000)]
[ARM] pxa: initial support for the Imote2 platform
Changes made as suggested by Eric Miao (including fix to map_io
silly mistake!).
Originally designed by Intel, now sold by Crossbow (www.xbow.com).
Very little actually on board. The patch includes sensors and
similar as found on commonly occurring daughter boards.
Some of the drivers are not in mainline as yet as they are either
part of the IIO subsystem or need a lot of work before submission.
What is the position wrt to putting them in i2c board configs etc?
Support for these boards has been maintained outside the kernel
for a long time, but now that there is a good da9030 pmic driver
available the last major hurdle no longer exists.
All comments welcomed.
The Imote2's big brother (stargate2) will follow once any problems
with this one have been cleaned up and a few bits and bobs have
been added to the da903x driver. Hopefully the cc2420 driver will
get cleaned up and submitted in the not too distant future as
well.
Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Stefan Schmidt [Mon, 8 Dec 2008 14:58:10 +0000 (15:58 +0100)]
[ARM] pxa/ezx: I2C configuration
I2C platform data setups.
Signed-off-by: Daniel Ribeiro <drwyrm@gmail.com>
Signed-off-by: Stefan Schmidt <stefan@datenfreihafen.org>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Stefan Schmidt [Mon, 8 Dec 2008 14:58:09 +0000 (15:58 +0100)]
[ARM] pxa/ezx: Keypad configuration
Matrix and single key setups for all phones.
Signed-off-by: Daniel Ribeiro <drwyrm@gmail.com>
Signed-off-by: Stefan Schmidt <stefan@datenfreihafen.org>
Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Stefan Schmidt [Mon, 8 Dec 2008 14:58:08 +0000 (15:58 +0100)]
[ARM] pxa/ezx: GPIO configuration
Pin configs for different generations and phones.
Signed-off-by: Daniel Ribeiro <drwyrm@gmail.com>
Signed-off-by: Stefan Schmidt <stefan@datenfreihafen.org>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Stefan Schmidt [Mon, 8 Dec 2008 14:58:07 +0000 (15:58 +0100)]
[ARM] pxa/ezx: Remove two memory banks fixup
Our bootloader now supports ATAGS_MEM
Signed-off-by: Daniel Ribeiro <drwyrm@gmail.com>
Signed-off-by: Stefan Schmidt <stefan@datenfreihafen.org>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Jaya Kumar [Tue, 9 Dec 2008 14:14:29 +0000 (22:14 +0800)]
[ARM] pxa/gumstix: fix incorrect init done by am200
Signed-off-by: Jaya Kumar <jayakumar.lkml@gmail.com>
Cc: Andre Puschmann <andre.puschmann@imms.de>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Eric Miao [Mon, 8 Dec 2008 10:51:01 +0000 (18:51 +0800)]
[ARM] pxafb: avoid the racing condition in pxafb_smart_thread
fbi->state change shall really be protected by fbi->ctrlr_lock, where
the change is sheltered. There is a possibility that pxafb_smart_thread
will start update the LCD panel when fbi->state == C_ENABLE, while
all other initialization isn't done.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Eric Miao [Mon, 8 Dec 2008 10:46:00 +0000 (18:46 +0800)]
[ARM] pxafb: allow insertion of delay to the smart panel command sequence
Some smart panel requires a delay between command sequences, while PXA
LCD controller didn't provide such one, let's emulate this by software.
A software delay marker can be inserted into the command sequence, once
pxafb_smart_queue() detects this, it flushes the previous commands and
delay for a specified number of milliseconds.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Eric Miao [Mon, 8 Dec 2008 10:35:03 +0000 (18:35 +0800)]
[ARM] pxafb: allow better platform configurable smart panel timing
For smart panels (LCD panel with internal framebuffer), the following
LCCR3 register bits have different meanings than the parallel one:
LCCR3_PCP - controls the L_PCLK_WR polarity
LCCR3_HSP - controls the L_LCLK_A0 polarity
LCCR3_VSP - controls the L_FCLK_RD polarity
To keep minimum change to the original parallel timing, the .lcd_conn
flags and 'pxafb_mode_info.sync' are re-used to reflect this:
LCD_PCLK_EDGE_{RISE,FALL} - configures LCCR3_PCP
sync & FB_SYNC_{HOR,VERT}_HIGH_ACT - configures LCCR3_{HSP,VSP}
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Eric Miao [Thu, 4 Dec 2008 03:14:11 +0000 (11:14 +0800)]
[ARM] pxafb: small cleanup of the smart panel code
Group smart panel related code in a more compact fasion, avoid abused
usage of #ifdef .. #endif.
Also fix the incorrect condition in pxafb_smart_init() to decide if it
is a smart panel or not. (should be '&' instead of '|')
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Eric Miao [Thu, 11 Dec 2008 06:06:43 +0000 (14:06 +0800)]
[ARM] pxafb: remove now unused pxafb_setup_gpio() and related stuffs
platform should now initialize the pin usage for the LCD controller
to correctly work.
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Eric Miao [Sun, 7 Dec 2008 09:49:01 +0000 (17:49 +0800)]
[ARM] pxa: convert legacy LCD setup of other boards to new one
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Cc: Ian Molton <spyro@f2s.com>
Cc: pHilipp Zabel <philipp.zabel@gmail.com>
Cc: Marek Vasut <marek.vasut@gmail.com>
Cc: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Cc: Juergen Schindele <linux@schindele.name>
Acked-by: Stefan Schmidt <stefan@datenfreihafen.org>
Acked-by: Marc Zyngier <maz@misterjones.org>
Acked-by: Mike Rapoport <mike@compulab.co.il>
Acked-by: Jaya Kumar <jayakumar.lkml@gmail.com>
Eric Miao [Sun, 7 Dec 2008 09:48:00 +0000 (17:48 +0800)]
[ARM] pxafb: add color TFT 8BPP LCD panel type
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Sascha Hauer [Tue, 16 Dec 2008 10:44:09 +0000 (11:44 +0100)]
i.MX Framebuffer: add TFT support
With TFTs we can do 5/6/5 instead of 4/4/4. Add a bitfield for this
and use it with TFTs.
Acked-by: Krzysztof Helt <krzysztof.h1@poczta.fm>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Tue, 16 Dec 2008 10:44:09 +0000 (11:44 +0100)]
i.MX Framebuffer: rename imxfb_mach_info to imx_fb_platform_data
rename imxfb_mach_info to a name more common to kernel hackers
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Tue, 16 Dec 2008 10:44:08 +0000 (11:44 +0100)]
i.MX Framebuffer: Cleanup Coding style
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Tue, 16 Dec 2008 10:44:08 +0000 (11:44 +0100)]
i.MX Framebuffer: remove header file
Move contents of imxfb.h to imxfb.c since it is used only
in this file
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Tue, 16 Dec 2008 10:44:08 +0000 (11:44 +0100)]
i.MX Framebuffer: fix margins
The upper/lower and left/right margins are mixed up in the driver.
Fix it
Acked-by: Krzysztof Helt <krzysztof.h1@poczta.fm>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Juergen Beisert [Tue, 16 Dec 2008 10:44:07 +0000 (11:44 +0100)]
i.MX Framebuffer: Use readl/writel instead of direct pointer deref
This patch prepares the current i.MX1 framebuffer driver for usage in the
whole i.MX family. It switches to readl/writel for register accesses.
Also it moves the register definitions to the driver where they belong.
Acked-by: Krzysztof Helt <krzysztof.h1@poczta.fm>
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Tue, 16 Dec 2008 10:44:07 +0000 (11:44 +0100)]
i.MX Framebuffer: remove gpio setup function
Remove the gpio mux setup function from i.MX framebuffer driver.
This function is platform specific and thus should be done by
the board setup. As there are currently no in-kernel users
of this driver we do not break anything.
Acked-by: Krzysztof Helt <krzysztof.h1@poczta.fm>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Tue, 16 Dec 2008 10:44:06 +0000 (11:44 +0100)]
MAINTAINERS: Add myself as i.MX Framebuffer driver maintainer
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Claudio Scordino [Tue, 11 Nov 2008 09:56:36 +0000 (10:56 +0100)]
Unused variable 'reg' removed.
Signed-off-by: Claudio Scordino <claudio@evidence.eu.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Paulius Zaleckas [Fri, 14 Nov 2008 10:01:39 +0000 (11:01 +0100)]
patch-mxc-fiq
Drivers which are going to use it will have to select it and use
mxc_set_irq_fiq() to set FIQ mode for this interrupt.
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Paulius Zaleckas [Fri, 14 Nov 2008 10:01:39 +0000 (11:01 +0100)]
patch-mx1-UART-support
Adds support for MX1 architecture to UART driver.
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Darius Augulis [Fri, 14 Nov 2008 10:01:39 +0000 (11:01 +0100)]
patch-mx1-mtd-xip
Adds MTD XIP support for ARCH_MX1.
Signed-off-by: Darius Augulis <augulis.darius@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Darius Augulis [Fri, 14 Nov 2008 10:01:38 +0000 (11:01 +0100)]
patch-mx1-add-devices
Adds common devices to ARCH_MX1.
Signed-off-by: Darius Augulis <augulis.darius@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Paulius Zaleckas [Fri, 14 Nov 2008 10:01:38 +0000 (11:01 +0100)]
patch-mxc-add-ARCH_MX1
Adds MX1 architecture to platform MXC. It will supersede mach-imx
and let it die.
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
Signed-off-by: Darius Augulis <augulis.darius@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Darius Augulis [Fri, 14 Nov 2008 10:01:38 +0000 (11:01 +0100)]
patch-iomux-mx1-mx2-cleanup
Fix GIUS register setup in the mxc_gpio_mode().
Signed-off-by: Darius Augulis <augulis.darius@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Valentin Longchamp [Fri, 24 Oct 2008 13:22:52 +0000 (15:22 +0200)]
[ARM] MX31: defconfig for mx31moboard platform
Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Valentin Longchamp [Sun, 23 Nov 2008 16:35:08 +0000 (17:35 +0100)]
[ARM] MX31: basic support for mx31moboard platform
Initial support for mx31moboard platfor with 3 serial ports
and NOR Flash
Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Valentin Longchamp [Fri, 24 Oct 2008 13:10:32 +0000 (15:10 +0200)]
MX31: UART5 pins definition
pins definition for UART5 when used in alternate mode 2
Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Valentin Longchamp [Fri, 24 Oct 2008 13:09:06 +0000 (15:09 +0200)]
MX31: definitions for UART2 pins
UART2 pins when used in functionnal mode
Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Marc Kleine-Budde [Fri, 10 Oct 2008 10:05:03 +0000 (12:05 +0200)]
imxmmc: use readl/writel
Use readl/writel instead of direct pointer deref.
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Marc Kleine-Budde [Fri, 10 Oct 2008 10:05:03 +0000 (12:05 +0200)]
imxmmc: Remove unused variables
This removes clkrt and cmdat from struct imxmci_host, they are
unused.
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Marc Kleine-Budde [Fri, 10 Oct 2008 10:05:03 +0000 (12:05 +0200)]
imxmmc: Checkpatch cleanup
This cleans up the warnings issued by the checkpatch script
and remove the file history from the header
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Sun, 23 Nov 2008 16:34:04 +0000 (17:34 +0100)]
[ARM] pcm037: add NAND support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Tue, 11 Nov 2008 14:15:39 +0000 (15:15 +0100)]
[ARM] MX3: add NAND support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Tue, 9 Sep 2008 09:30:58 +0000 (11:30 +0200)]
[ARM] pcm038: Add NAND support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Tue, 9 Sep 2008 09:30:58 +0000 (11:30 +0200)]
[ARM] MX27: Add NAND resources
This patch adds the platform device and resources for NAND
on mx27 boards.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Fabio Estevam [Wed, 12 Nov 2008 14:38:40 +0000 (15:38 +0100)]
Add default configuration for MX31PDK board.
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: sascha Hauer <s.hauer@pengutronix.de>
Fabio Estevam [Wed, 12 Nov 2008 14:38:39 +0000 (15:38 +0100)]
Add basic support for MX31PDK board.
Add basic support to the MX31PDK development board, also known
as MX31 3DS or MX31 3-stack board (http://www.freescale.com/imx31pdk).
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Sun, 23 Nov 2008 16:32:49 +0000 (17:32 +0100)]
[ARM] pcm037: Add support for SRAM device
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Guennadi Liakhovetski [Tue, 11 Nov 2008 14:12:00 +0000 (15:12 +0100)]
[ARM] pcm037: add support for the on-board LAN9217 network controller
smc911x now also supports LAN921{5,7,8} network controllers.
Signed-off-by: Guennadi Liakhovetski <lg@denx.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Sascha Hauer [Sun, 23 Nov 2008 16:31:46 +0000 (17:31 +0100)]
pcm038: add driver for static ram
The pcm038 module (phyCORE-i.MX27) comes with a 512 KiB static RAM which
can be battery buffered. Add mtd_ram support and configure the chip select
line, to which the sram is attached.
Signed-off-by: Luotao Fu <l.fu@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Guennadi Liakhovetski [Thu, 13 Nov 2008 11:20:49 +0000 (12:20 +0100)]
i.MX31: fix mxc_iomux_set_pad()
mxc_iomux_set_pad() is buggy on i.MX31 - it calculates the register and
the offset therein wrongly. Fix it.
Signed-off-by: Guennadi Liakhovetski <lg@denx.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>