]> git.karo-electronics.de Git - karo-tx-linux.git/log
karo-tx-linux.git
11 years agoENGR00175219-5 MX6: remove cko1_clk in clock.c
Gary Zhang [Thu, 1 Mar 2012 08:09:18 +0000 (16:09 +0800)]
ENGR00175219-5 MX6: remove cko1_clk in clock.c

there are clko_clk and cko1_clk in clock.c which operate
the same CKO1 clock source.
remove cko1_clk codes to avoid operation confusion.

Signed-off-by: Gary Zhang <b13634@freescale.com>
11 years agoENGR00172084 MX6Q: Add 4 capture modes for ov5642
Daiane Angolini [Thu, 1 Mar 2012 16:37:52 +0000 (13:37 -0300)]
ENGR00172084 MX6Q: Add 4 capture modes for ov5642

capture modes included:
 VGA(640x480)@15fps
 QVGA(320x240)@15fps
 NTSC(720x480)@15fps
 PAL(720x576)@15fps

in order to test it:
mxc_v4l2_capture.out -iw 640 -ih 480 -ow 640 -oh 480 -r 0 -fr 15 -m 0 test.yuv
mxc_v4l2_capture.out -iw 320 -ih 240 -ow 320 -oh 240 -r 0 -fr 15 -m 1 test.yuv
mxc_v4l2_capture.out -iw 720 -ih 480 -ow 720 -oh 480 -r 0 -fr 15 -m 2 test.yuv
mxc_v4l2_capture.out -iw 720 -ih 480 -ow 720 -oh 576 -r 0 -fr 15 -m 3 test.yuv

Signed-off-by: Daiane Angolini <daiane.angolini@freescale.com>
11 years agoENGR00175261 - EPDC fb: Remove warning messages from EPDC init
Danny Nold [Wed, 29 Feb 2012 20:31:04 +0000 (14:31 -0600)]
ENGR00175261 - EPDC fb: Remove warning messages from EPDC init

- Remove screen update from probe function.  This update is redundant.
The update in mxc_epdc_fb_fw_handler() will update and show the tux
logo if FB console is added, so this achieves the same effect as the
update invocation that was removed.
- Remove dmaengine_get(), because SDMA driver returns a failure when
cycling through DMA channels.  Since it is not essential to register
with this call, it has been removed.  dmaengine_put() also removed.
- Added hw_inialization variable to track whether HW is in process
of being initialized.  In which case, we do not print an error
message when an update is received.

Signed-off-by: Danny Nold <dannynold@freescale.com>
11 years agommc: block: add handling for two parallel block requests in issue_rw_rq
Per Forlin [Fri, 1 Jul 2011 16:55:33 +0000 (18:55 +0200)]
mmc: block: add handling for two parallel block requests in issue_rw_rq

Change mmc_blk_issue_rw_rq() to become asynchronous.
The execution flow looks like this:

* The mmc-queue calls issue_rw_rq(), which sends the request
  to the host and returns back to the mmc-queue.
* The mmc-queue calls issue_rw_rq() again with a new request.
* This new request is prepared in issue_rw_rq(), then it waits for
  the active request to complete before pushing it to the host.
* When the mmc-queue is empty it will call issue_rw_rq() with a NULL
  req to finish off the active request without starting a new request.

Signed-off-by: Per Forlin <per.forlin@linaro.org>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Venkatraman S <svenkatr@ti.com>
Tested-by: Sourav Poddar <sourav.poddar@ti.com>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
11 years agommc: queue: add a second mmc queue request member
Per Forlin [Fri, 1 Jul 2011 16:55:31 +0000 (18:55 +0200)]
mmc: queue: add a second mmc queue request member

Add an additional mmc queue request instance to make way for two active
block requests. One request may be active while the other request is
being prepared.

Signed-off-by: Per Forlin <per.forlin@linaro.org>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Venkatraman S <svenkatr@ti.com>
Tested-by: Sourav Poddar <sourav.poddar@ti.com>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
11 years agommc: block: move error path in issue_rw_rq to a separate function.
Per Forlin [Fri, 1 Jul 2011 16:55:30 +0000 (18:55 +0200)]
mmc: block: move error path in issue_rw_rq to a separate function.

Break out code without functional changes. This simplifies the code and
makes way for handling two parallel requests.

Signed-off-by: Per Forlin <per.forlin@linaro.org>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Venkatraman S <svenkatr@ti.com>
Tested-by: Sourav Poddar<sourav.poddar@ti.com>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
11 years agommc: block: add a block request prepare function
Per Forlin [Fri, 1 Jul 2011 16:55:29 +0000 (18:55 +0200)]
mmc: block: add a block request prepare function

Break out code from mmc_blk_issue_rw_rq to create a block request prepare
function. This doesn't change any functionallity. This helps when handling
more than one active block request.

Signed-off-by: Per Forlin <per.forlin@linaro.org>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Venkatraman S <svenkatr@ti.com>
Tested-by: Sourav Poddar <sourav.poddar@ti.com>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
11 years agommc: block: add member in mmc queue struct to hold request data
Per Forlin [Sat, 9 Jul 2011 21:12:36 +0000 (17:12 -0400)]
mmc: block: add member in mmc queue struct to hold request data

The way the request data is organized in the mmc queue struct, it only
allows processing of one request at a time.  This patch adds a new struct
to hold mmc queue request data such as sg list, request, blk request and
bounce buffers, and updates any functions depending on the mmc queue
struct. This prepares for using multiple active requests in one mmc queue.

Signed-off-by: Per Forlin <per.forlin@linaro.org>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Venkatraman S <svenkatr@ti.com>
Tested-by: Sourav Poddar <sourav.poddar@ti.com>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
11 years agommc: queue: let host controllers specify maximum discard timeout
Adrian Hunter [Tue, 28 Jun 2011 14:16:02 +0000 (17:16 +0300)]
mmc: queue: let host controllers specify maximum discard timeout

Some host controllers will not operate without a hardware
timeout that is limited in value.  However large discards
require large timeouts, so there needs to be a way to
specify the maximum discard size.

A host controller driver may now specify the maximum discard
timeout possible so that max_discard_sectors can be calculated.

However, for eMMC when the High Capacity Erase Group Size
is not in use, the timeout calculation depends on clock
rate which may change.  For that case Preferred Erase Size
is used instead.

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
11 years agommc: block: add checking of r/w command response
Russell King - ARM Linux [Mon, 20 Jun 2011 19:10:49 +0000 (20:10 +0100)]
mmc: block: add checking of r/w command response

Check the status bits in the r/w command response for any errors.
If error bits are set, then we won't have seen any data transferred,
so it's pointless doing any further checking.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Tested-by: Pawel Moll <pawel.moll@arm.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
11 years agommc: block: improve error recovery from command channel errors
Russell King - ARM Linux [Mon, 20 Jun 2011 19:10:28 +0000 (20:10 +0100)]
mmc: block: improve error recovery from command channel errors

Command channel errors fall into four classes:

1. The command was issued with the card in the wrong state
2. The command failed to be received by the card correctly
3. The cards response failed to be received by the host (CRC error)
4. The card failed to respond to the card

For (1), in theory we should know that the card is in the correct state.
However, a failed stop command (or other failure) may result in the card
remaining in a data transfer state from the previous command.  If we
detect this condition, we try to recover by sending a stop command.

For the initial commands (set block count and the read/write command)
no data will have been transferred.  All that we need deal with is
retrying at this point.  A failed stop command can be remedied as
above.

If we are unable to recover the card (eg, the card ignores our requests
for status, or we don't recognise the error code) then we immediately
fail the request.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Tested-by: Pawel Moll <pawel.moll@arm.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
11 years agommc: block: allow get_card_status() to return error status
Russell King - ARM Linux [Mon, 20 Jun 2011 19:10:08 +0000 (20:10 +0100)]
mmc: block: allow get_card_status() to return error status

If the MMC_SEND_STATUS command is not successful, we should not return
a zero status word, but instead allow the caller to know positively
that an error occurred.

Convert the open-coded get_card_status() to use the helper function,
and provide definitions for the card state field.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Tested-by: Pawel Moll <pawel.moll@arm.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
11 years agommc: mmc_test: test to measure how sg_len affect performance
Per Forlin [Fri, 1 Jul 2011 16:55:27 +0000 (18:55 +0200)]
mmc: mmc_test: test to measure how sg_len affect performance

Add a test that measures how the mmc bandwidth depends on the numbers of
sg elements in the sg list. The transfer size if fixed and sg length goes
from a few up to 512. The purpose is to measure overhead caused by
multiple sg elements.

Signed-off-by: Per Forlin <per.forlin@linaro.org>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Venkatraman S <svenkatr@ti.com>
Tested-by: Sourav Poddar <sourav.poddar@ti.com>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
11 years agommc: mmc_test: add test for non-blocking transfers
Per Forlin [Fri, 1 Jul 2011 16:55:26 +0000 (18:55 +0200)]
mmc: mmc_test: add test for non-blocking transfers

Add four tests for read and write performance per
different transfer size, 4k to 4M.
 * Read using blocking mmc request
 * Read using non-blocking mmc request
 * Write using blocking mmc request
 * Write using non-blocking mmc request

The host driver must support pre_req() and post_req()
in order to run the non-blocking test cases.

Signed-off-by: Per Forlin <per.forlin@linaro.org>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Venkatraman S <svenkatr@ti.com>
Tested-by: Sourav Poddar<sourav.poddar@ti.com>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
11 years agommc: mmc_test: add debugfs file to list all tests
Per Forlin [Fri, 1 Jul 2011 16:55:25 +0000 (18:55 +0200)]
mmc: mmc_test: add debugfs file to list all tests

Add a debugfs file "testlist" to print all available tests.

Signed-off-by: Per Forlin <per.forlin@linaro.org>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Venkatraman S <svenkatr@ti.com>
Tested-by: Sourav Poddar<sourav.poddar@ti.com>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
11 years agommc: mmci: implement pre_req() and post_req()
Per Forlin [Fri, 1 Jul 2011 16:55:24 +0000 (18:55 +0200)]
mmc: mmci: implement pre_req() and post_req()

pre_req() runs dma_map_sg() and prepares the dma descriptor for the next
mmc data transfer. post_req() runs dma_unmap_sg.  If not calling pre_req()
before mmci_request(), mmci_request() will prepare the cache and dma just
like it did it before.  It is optional to use pre_req() and post_req()
for mmci.

Signed-off-by: Per Forlin <per.forlin@linaro.org>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
11 years agommc: omap_hsmmc: add support for pre_req and post_req
Per Forlin [Fri, 1 Jul 2011 16:55:23 +0000 (18:55 +0200)]
mmc: omap_hsmmc: add support for pre_req and post_req

pre_req() runs dma_map_sg(), post_req() runs dma_unmap_sg.  If not calling
pre_req() before omap_hsmmc_request(), dma_map_sg will be issued before
starting the transfer.  It is optional to use pre_req().  If issuing
pre_req(), post_req() must be called as well.

Signed-off-by: Per Forlin <per.forlin@linaro.org>
Reviewed-by: Venkatraman S <svenkatr@ti.com>
Tested-by: Sourav Poddar <sourav.poddar@ti.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
11 years agommc: core: add non-blocking mmc request function
Per Forlin [Fri, 1 Jul 2011 16:55:22 +0000 (18:55 +0200)]
mmc: core: add non-blocking mmc request function

Previously there has only been one function mmc_wait_for_req()
to start and wait for a request. This patch adds:

 * mmc_start_req() - starts a request wihtout waiting
   If there is on ongoing request wait for completion
   of that request and start the new one and return.
   Does not wait for the new command to complete.

This patch also adds new function members in struct mmc_host_ops
only called from core.c:

 * pre_req - asks the host driver to prepare for the next job
 * post_req - asks the host driver to clean up after a completed job

The intention is to use pre_req() and post_req() to do cache maintenance
while a request is active. pre_req() can be called while a request is
active to minimize latency to start next job. post_req() can be used after
the next job is started to clean up the request. This will minimize the
host driver request end latency. post_req() is typically used before
ending the block request and handing over the buffer to the block layer.

Add a host-private member in mmc_data to be used by pre_req to mark the
data. The host driver will then check this mark to see if the data is
prepared or not.

Signed-off-by: Per Forlin <per.forlin@linaro.org>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Venkatraman S <svenkatr@ti.com>
Tested-by: Sourav Poddar <sourav.poddar@ti.com>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
11 years agoENGR00175826 defconfig: add mx6q_sabresd in updater defconfig.
Zhang Jiejing [Thu, 1 Mar 2012 04:16:11 +0000 (12:16 +0800)]
ENGR00175826 defconfig: add mx6q_sabresd in updater defconfig.

add mx6q_sdabresd board in updater defconfig.

Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
11 years agoENGR00175824 fix the wrong patch for arch/arm/include/asm/futex.h
Huang Shijie [Wed, 29 Feb 2012 10:56:16 +0000 (18:56 +0800)]
ENGR00175824 fix the wrong patch for arch/arm/include/asm/futex.h

The patch
   "1e5fce1 ENGR00139261 [MX6Q]support 8 bit MMC and eMMC DDR mode"
reverts the patch
   "28d5b74 ARM: 7099/1: futex: preserve oldval in SMP __futex_atomic_op"

This patch just re-reverts the patch 1e5fce1.

Acked-by: Lily Zhang <r58066@freescale.com>
Signed-off-by: Huang Shijie <b32955@freescale.com>
11 years agoENGR00175692-03 [MX6DL] SD3.0: can not recognize SD3.0 cards on some boards.
Ryan QIAN [Wed, 29 Feb 2012 06:23:49 +0000 (14:23 +0800)]
ENGR00175692-03 [MX6DL] SD3.0: can not recognize SD3.0 cards on some boards.

Improve SD3.0 compatibility: reset host controller before changing clk
tuning ctrl reg.

Signed-off-by: Ryan QIAN <b32804@freescale.com>
11 years agoENGR00175692-02 [MX6DL] SD3.0: can not recognize SD3.0 cards on some boards.
Ryan QIAN [Wed, 29 Feb 2012 06:09:53 +0000 (14:09 +0800)]
ENGR00175692-02 [MX6DL] SD3.0: can not recognize SD3.0 cards on some boards.

Improve SD3.0 compatibility: change DSE to 34ohm for 200Mhz.

Signed-off-by: Ryan QIAN <b32804@freescale.com>
11 years agoENGR00175692-01 [MX6DL] SD3.0: can not recognize SD3.0 cards on some boards.
Ryan QIAN [Wed, 29 Feb 2012 05:59:07 +0000 (13:59 +0800)]
ENGR00175692-01 [MX6DL] SD3.0: can not recognize SD3.0 cards on some boards.

Improve compatibility by doing the following:
- Change DSE to 34ohm for 200MHz
- Reset host controller before changing clk tuning ctrl reg

Signed-off-by: Ryan QIAN <b32804@freescale.com>
11 years agoENGR00174839 i.mx: asrc: enable clock before access the asrc register
Jason Liu [Tue, 28 Feb 2012 12:16:52 +0000 (20:16 +0800)]
ENGR00174839 i.mx: asrc: enable clock before access the asrc register

proc01 test fail on MX6dl and system hange after
the following output:

proc01 0 TINFO: /proc/kmsg: known issue: errno=EAGAIN(11):
<hang>
system will hang when access the proc file under: /proc/driver/asrc/ChSettings
The issue is that the asrc clock is off when try toaccess the asrc register.

Enable the asrc clock before access the asrc register fix the issue.

And we need turn off the clock after we finished accessing the register

Signed-off-by: Jason Liu <r64343@freescale.com>
11 years agofutex: Fix spelling in a source code comment
Bart Van Assche [Sun, 17 Jul 2011 07:01:00 +0000 (09:01 +0200)]
futex: Fix spelling in a source code comment

Change a single occurrence of "unlcoked" into "unlocked".

Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Cc: Darren Hart <dvhltc@us.ibm.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
11 years agofutex: uninitialized warning corrections
Vitaliy Ivanov [Thu, 7 Jul 2011 12:10:31 +0000 (15:10 +0300)]
futex: uninitialized warning corrections

The variables here are really not used uninitialized.

kernel/futex.c: In function 'fixup_pi_state_owner.clone.17':
kernel/futex.c:1582:6: warning: 'curval' may be used uninitialized in this function
kernel/futex.c: In function 'handle_futex_death':
kernel/futex.c:2486:6: warning: 'nval' may be used uninitialized in this function
kernel/futex.c: In function 'do_futex':
kernel/futex.c:863:11: warning: 'curval' may be used uninitialized in this function
kernel/futex.c:828:6: note: 'curval' was declared here
kernel/futex.c:898:5: warning: 'oldval' may be used uninitialized in this function
kernel/futex.c:890:6: note: 'oldval' was declared here

Signed-off-by: Vitaliy Ivanov <vitalivanov@gmail.com>
Acked-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
11 years agoplist: Remove the need to supply locks to plist heads
Dima Zavin [Fri, 8 Jul 2011 00:27:59 +0000 (17:27 -0700)]
plist: Remove the need to supply locks to plist heads

This was legacy code brought over from the RT tree and
is no longer necessary.

Signed-off-by: Dima Zavin <dima@android.com>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Daniel Walker <dwalker@codeaurora.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: Lai Jiangshan <laijs@cn.fujitsu.com>
Link: http://lkml.kernel.org/r/1310084879-10351-2-git-send-email-dima@android.com
Signed-off-by: Ingo Molnar <mingo@elte.hu>
11 years agoENGR00175219-4 wm8958: add audio codec support
Gary Zhang [Tue, 28 Feb 2012 09:04:36 +0000 (17:04 +0800)]
ENGR00175219-4 wm8958: add audio codec support

add two channels record support.

Signed-off-by: Gary Zhang <b13634@freescale.com>
11 years agoENGR00175219-3 wm8958: add audio codec support
Gary Zhang [Tue, 28 Feb 2012 06:51:40 +0000 (14:51 +0800)]
ENGR00175219-3 wm8958: add audio codec support

add wm8958 audio codec support

Signed-off-by: Gary Zhang <b13634@freescale.com>
11 years agoENGR00175219-2 MX6Q_SABRESD: add wm8958 support
Gary Zhang [Tue, 28 Feb 2012 06:50:07 +0000 (14:50 +0800)]
ENGR00175219-2 MX6Q_SABRESD: add wm8958 support

add wm8958 codec support

Signed-off-by: Gary Zhang <b13634@freescale.com>
11 years agoENGR00175219-1 MX6: add wm8958 option in defconfig
Gary Zhang [Tue, 28 Feb 2012 06:48:26 +0000 (14:48 +0800)]
ENGR00175219-1 MX6: add wm8958 option in defconfig

add wm8958 option in defconfig

Signed-off-by: Gary Zhang <b13634@freescale.com>
11 years agoENGR00175205 camera: change sensor_clock as an indepent module
Yuxi Sun [Thu, 23 Feb 2012 03:32:38 +0000 (11:32 +0800)]
ENGR00175205 camera: change sensor_clock as an indepent module

Sensor_clock function will have confict when dual camera is introduced,
so change it as an indepent module.

Signed-off-by: Yuxi Sun <b36102@freescale.com>
11 years agoENGR00175321 [MX6]MMCSD: eMMC4.4 failed to work after resume
Ryan QIAN [Fri, 24 Feb 2012 08:48:53 +0000 (16:48 +0800)]
ENGR00175321 [MX6]MMCSD: eMMC4.4 failed to work after resume

- clear ddr_en bit on non ddr timing mode in platform code.

Signed-off-by: Ryan QIAN <b32804@freescale.com>
11 years agoENGR00175305:gpu-viv:don't open 2d clock when operate only on 3d
Wu Guoxing [Fri, 24 Feb 2012 01:12:31 +0000 (09:12 +0800)]
ENGR00175305:gpu-viv:don't open 2d clock when operate only on 3d

mx6dl do not have shader clock, and the shader clock is used
as 2d clock. so, operate differently for mx6q & mx6dl

Signed-off-by: Wu Guoxing <b39297@freescale.com>
Acked-by: Lily Zhang
11 years agoENGR00175222-2 IPUv3 fb:Check mem resource start address
Liu Ying [Thu, 23 Feb 2012 05:51:03 +0000 (13:51 +0800)]
ENGR00175222-2 IPUv3 fb:Check mem resource start address

This patch checks memory resource start address before
using the memory resource.

Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
(cherry picked from commit 2d16313abad65330cb03d365d307f2d0caafe955)

11 years agoENGR00175222-1 IPUv3 pdev:Check fb size before reserve ov fb
Liu Ying [Thu, 23 Feb 2012 05:48:19 +0000 (13:48 +0800)]
ENGR00175222-1 IPUv3 pdev:Check fb size before reserve ov fb

This patch checks overlay fb size before reserve fb mem for
it.

Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
(cherry picked from commit b29df373e547c83f9b3bcfd9a98016f462fa9ec2)

11 years agoENGR00175221-02 [MX6] MMCSD: clear EXE_TUNE bit after tuning finishes.
Ryan QIAN [Thu, 23 Feb 2012 00:24:53 +0000 (08:24 +0800)]
ENGR00175221-02 [MX6] MMCSD: clear EXE_TUNE bit after tuning finishes.

- add hook for post tuning in common code
- add hook for post tuning for platform code to deal with clean up stuff on
finishing tuning.

Signed-off-by: Ryan QIAN <b32804@freescale.com>
11 years agoENGR00175221-01 [MX6] MMCSD: clear EXE_TUNE bit after tuning finishes.
Ryan QIAN [Thu, 23 Feb 2012 00:23:38 +0000 (08:23 +0800)]
ENGR00175221-01 [MX6] MMCSD: clear EXE_TUNE bit after tuning finishes.

- clear exe_tune flag after tuning in platform code, otherwise it
will reduce io performance for SDR104 cards.

- add platform code to clear exe_tune bit after tuning completes.

Signed-off-by: Ryan QIAN <b32804@freescale.com>
11 years agoENGR00174905 [MX6] gc355 can't work after specific suspend/resume case
Larry Li [Tue, 21 Feb 2012 06:51:15 +0000 (14:51 +0800)]
ENGR00174905 [MX6] gc355 can't work after specific suspend/resume case

GC355 can't work at below steps:
- suspend resume
- load gpu driver and run gc355 application

In order to make GPU work properly, GPU clock needs to be on while power
on GPU. Not only direct GPU clk ccgr needs to be on, but also relative
clock in GPU clock tree has to be enabled.

Signed-off-by: Larry Li <b20787@freescale.com>
11 years agoENGR00174886-2 - EPDC fb: Don't register EPDC unless "epdc" kernel option set
Danny Nold [Wed, 22 Feb 2012 18:59:59 +0000 (12:59 -0600)]
ENGR00174886-2 - EPDC fb: Don't register EPDC unless "epdc" kernel option set

- EPDC firmware build was breaking due to binary build pre-empting
the conversion from .fw.ihex->.fw.  Resolve this by forcing
firmware objects to be built in order.

Signed-off-by: Danny Nold <dannynold@freescale.com>
11 years agoENGR00174886-1 - EPDC fb: Don't register EPDC unless "epdc" kernel option set
Danny Nold [Wed, 22 Feb 2012 18:59:38 +0000 (12:59 -0600)]
ENGR00174886-1 - EPDC fb: Don't register EPDC unless "epdc" kernel option set

- Add E Ink support as a default for MX6 platforms
- Conditionalize registration of EPDC-related modules based on "epdc"
kernel command line option

Signed-off-by: Danny Nold <dannynold@freescale.com>
11 years agoENGR00174569: MX6 - Disable WAIT mode by default
Ranjani Vaidyanathan [Wed, 15 Feb 2012 15:15:06 +0000 (09:15 -0600)]
ENGR00174569: MX6 - Disable WAIT mode by default

None of the workarounds implemented in SW provide a stable solution for
the WAIT mode issue.
For this release, WAIT mode is disabled by default.

Signed-off-by: Ranjani Vaidyanathan <ra5478@freescale.com>
11 years agoENGR00174914 MX6x HDMI implement HDMI driver suspend/resume function
Sandor Yu [Wed, 22 Feb 2012 08:08:24 +0000 (16:08 +0800)]
ENGR00174914 MX6x HDMI implement HDMI driver suspend/resume function

Added FB suspend/resume event process in HDMI driver.

Signed-off-by: Sandor Yu <R01008@freescale.com>
11 years agoENGR00174734-3 usb: change function name for discharge data line
Peter Chen [Wed, 22 Feb 2012 03:38:55 +0000 (11:38 +0800)]
ENGR00174734-3 usb: change function name for discharge data line

In order to reflect the function well, it needs to discharge
both dp and dm, so change the function name.

Signed-off-by: Peter Chen <peter.chen@freescale.com>
11 years agoENGR00174734-2 usb: fix bugs that dp and dm are floating at device mode
Peter Chen [Fri, 17 Feb 2012 07:22:07 +0000 (15:22 +0800)]
ENGR00174734-2 usb: fix bugs that dp and dm are floating at device mode

At i.mx6x, the data line (dp and dm) are floating at device mode,
that is to say data line will be any values (0-3.6v).
So if the usb wakeup is enabled, there will be a wakeup interrupt
that causes usb to active mode.

In order to fix this problem well, we need to do below things:
- Need to discharge both dp and dm
- It needs to discharge data line when we switch to device mode and
usb cable is disconnected from the host, but not to disable discharge
after line state is SE0, the reason is that if we do not pulldown
the data line, the line state will be floating again, and possible cause
the wakeup interrupt.
- It needs to disable discharge data line when the usb cable connects at
device mode and usb device is connected at host mode, otherwise it will
affect signal quality.

Signed-off-by: Peter Chen <peter.chen@freescale.com>
11 years agoENGR00174734-1 usb: need to discharge both dp and dm
Peter Chen [Fri, 17 Feb 2012 07:14:25 +0000 (15:14 +0800)]
ENGR00174734-1 usb: need to discharge both dp and dm

Change to discharge both dp and dm

Signed-off-by: Peter Chen <peter.chen@freescale.com>
11 years agoENGR00174615:Enable AH-1613 GPS module
B38613 [Wed, 22 Feb 2012 05:34:50 +0000 (13:34 +0800)]
ENGR00174615:Enable AH-1613 GPS module

set GPIO config and disable UART3 DMA.

Signed-off-by: Zhou Jianzheng <B38613@freescale.com>
11 years agoENGR00174916 MX6x, console output hang 20 seconds when system bootup
Sandor Yu [Tue, 21 Feb 2012 10:05:14 +0000 (18:05 +0800)]
ENGR00174916 MX6x, console output hang 20 seconds when system bootup

It is cause by fb driver to init HDMI PHY
when HDMI driver not register.

Signed-off-by: Sandor Yu <R01008@freescale.com>
11 years agoENGR00174911 MX6x Setting HDMI default mode according bootload cmdline
Sandor Yu [Tue, 21 Feb 2012 09:26:28 +0000 (17:26 +0800)]
ENGR00174911 MX6x Setting HDMI default mode according bootload cmdline

Origin HDMI default video mode is setting to VGA.
But the HDMI will change to the vide mode setting in bootloader
command line when the first time HDMI cable plugin.
It will cause GUI sometime can't not get correct FB video mode
when system bootup without HDMI cable plugout.

Signed-off-by: Sandor Yu <R01008@freescale.com>
11 years agoENGR00175080 [MX6] MMC: kernel failed to init eMMC card, after boot from eMMC
Ryan QIAN [Wed, 22 Feb 2012 01:32:51 +0000 (09:32 +0800)]
ENGR00175080 [MX6] MMC: kernel failed to init eMMC card, after boot from eMMC

issue:
if uboot is loaded from eMMC, the eMMC memory will be configured to DDR mode.
on kernel startup, it will initialize the card at SDR mode, while the register
of USDHC is still configured to DDR enable mode. Therefore, the initialization
of eMMC memory will fail.

fix:
- clear MIX_CTRL on sdhc platform init code.
- clear vselect bit of VENDOR_SPEC on sdhc platform init code.

Signed-off-by: Ryan QIAN <b32804@freescale.com>
11 years agoENGR00171079-10: mx6q-arm2 cs42888 board sample rate settings
Adrian Alonso [Tue, 21 Feb 2012 20:45:49 +0000 (14:45 -0600)]
ENGR00171079-10: mx6q-arm2 cs42888 board sample rate settings

* Board mx6q-arm2 cs42888 supportted sample rate settings,
  pass them trough mxc_audio_codec_platform_data

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00171079-9: mx53-ard cs42888 board sample rate settings
Adrian Alonso [Tue, 21 Feb 2012 20:44:29 +0000 (14:44 -0600)]
ENGR00171079-9: mx53-ard cs42888 board sample rate settings

* Board mx53-ard cs42888 supportted sample rate settings,
  pass them trough mxc_audio_codec_platform_data
* Update copyrigth year 2012

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00171079-8 imx6q sabreauto cs42888 audio support
Adrian Alonso [Fri, 17 Feb 2012 00:42:33 +0000 (18:42 -0600)]
ENGR00171079-8 imx6q sabreauto cs42888 audio support

* Add imx6q sabreauto cs42888 audio support
* Set clock parent relations
  anaclk_2 -> pll4_audio_clk -> esai_root_clk
* Match corresponding sysclk frequency to keep lrclk_ratio
  relation on imx-cs4288 esai configuration

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00171079-7 mx6q clock anaclk input source clock
Adrian Alonso [Fri, 17 Feb 2012 00:35:49 +0000 (18:35 -0600)]
ENGR00171079-7 mx6q clock anaclk input source clock

* Add mx6q anaclk_1/2 clock input source clock support
* anaclk can be bypassed to pll4_audio.
* _clk_audio_video_set_parent allows to bypass anaclk input
  clock source, for sabreauto platform anaclk_2 is the clock
  source for cs42888 and this clock needs to be bypassed to
  esai to supply the same master clk signal.

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00171079-6 imx-cs42888 sabreauto esai config
Adrian Alonso [Fri, 17 Feb 2012 00:32:27 +0000 (18:32 -0600)]
ENGR00171079-6 imx-cs42888 sabreauto esai config

* imx-cs42888 config esai for sabreauto support
* Select lrclk_ratio according to mclk_freq
* Set clkdiv relations
* Add safer codec reset, request and free gpio

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00171079-5 imx6q-sabreauto set supportted sample rates
Adrian Alonso [Fri, 17 Feb 2012 21:09:31 +0000 (15:09 -0600)]
ENGR00171079-5 imx6q-sabreauto set supportted sample rates

* cs42888 set imx6q-sabreauto supportted play/record sample rates
  master clk signal is a fixed source clock @24576000Mhz, thus
  limit the play/record sample rates lrclk.

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00171079-4 cs42888 imx6q-sabreauto supportted rates
Adrian Alonso [Fri, 17 Feb 2012 19:38:14 +0000 (13:38 -0600)]
ENGR00171079-4 cs42888 imx6q-sabreauto supportted rates

* Get audio codec platform data and overwrite supportted
  sample rates if defined in machine board file.
* Remove machine soc specific sample rate settings.

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00171079-3 fsl_devices add generic audio codec platform data
Adrian Alonso [Fri, 17 Feb 2012 18:14:28 +0000 (12:14 -0600)]
ENGR00171079-3 fsl_devices add generic audio codec platform data

* Add generic audio codec platform_data to be able to
  pass specific settings to audio codecs found in Freescale
  target boards.
* cs42888 get this platform data to override specific settings

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00171079-2 mx6 add anaclk_2 io buffers enable macros
Adrian Alonso [Fri, 17 Feb 2012 00:19:46 +0000 (18:19 -0600)]
ENGR00171079-2 mx6 add anaclk_2 io buffers enable macros

* Add ANACLK_2 input/output buffers enable macros.
  In orther to bypass anaclk_2 to pll4_audio need to
  set anaclk_2 input buffer enable bits.

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00171079-1 mx6q-ard: esai remove record early param
Adrian Alonso [Fri, 17 Feb 2012 00:18:25 +0000 (18:18 -0600)]
ENGR00171079-1 mx6q-ard: esai remove record early param

* Remove record early param, pad GPIO9 shared with
  ESAI_FSR and WDOG1 doesn't conflict as WDOG1
  connection is open, NANDF_CS3 is shared with ESAI_TX1
  and connection is also open with nand socket, no other
  pad conflicts.
* Add esai interrupt gpio pin.

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00175049 - Remove section mismatch warning for Max17135
Danny Nold [Tue, 21 Feb 2012 20:16:08 +0000 (14:16 -0600)]
ENGR00175049 - Remove section mismatch warning for Max17135

- Entire max17135_regulator_init function declared as __init, which
should be safe, since it is only executed at driver init time.

Signed-off-by: Danny Nold <dannynold@freescale.com>
11 years agoENGR00174925 HDMI Kernel panic whatever plug in or plug out
Alan Tull [Tue, 21 Feb 2012 18:35:20 +0000 (12:35 -0600)]
ENGR00174925 HDMI Kernel panic whatever plug in or plug out

Panic is due to runtime being a NULL pointer.

Signed-off-by: Alan Tull <r80115@freescale.com>
11 years agoENGR00174897 i.mx6: clock: fix axi clock mux setting
Jason Liu [Mon, 20 Feb 2012 03:18:40 +0000 (11:18 +0800)]
ENGR00174897 i.mx6: clock: fix axi clock mux setting

Fix the error in the axi clock mux setting,
- reg = ((mux - 1) << MXC_CCM_CBCDR_AXI_ALT_SEL_OFFSET);
+ reg |= ((mux - 1) << MXC_CCM_CBCDR_AXI_ALT_SEL_OFFSET);

Signed-off-by: Jason Liu <r64343@freescale.com>
11 years agoENGR00174896 i.mx6: i.mx6l: clock: gpu/vpu clock adjustment
Jason Liu [Fri, 17 Feb 2012 11:07:17 +0000 (19:07 +0800)]
ENGR00174896 i.mx6: i.mx6l: clock: gpu/vpu clock adjustment

GPU clock on i.mx6dl:
gpu2d_core_clk source from gpu3d_shader_clk,
gpu3d_axi_clk source from mmdc0 directly, 400Mhz by default,
gpu2d_axi_clk source from mmdc0 directly, 400Mhz by default,

AXI_CLK on i.mx6dl:
set axi_clk parent to pll3_pfd_540M and divid by 2, which will
get 270Mhz by default,

VPU clock on i.mx6dl:
VPU will parent from axi_clk, then by default, it will be 270Mhz,
which will be suitable for VPU 1080p support.

pll3_pfd_540M on i.mx6dl will be dedicated to VPU/IPU/AXI_CLK use,
other users should not change this assignment

Signed-off-by: Jason Liu <r64343@freescale.com>
11 years agoENGR00174904 VPU: change spinlock to mutex
Sammy He [Tue, 21 Feb 2012 05:51:20 +0000 (13:51 +0800)]
ENGR00174904 VPU: change spinlock to mutex

The spinlock caused a bug warning when we enable the lock debug mechenism.

See the log:
"
BUG: sleeping function called from invalid context at mm/slub.c:847
in_atomic(): 1, irqs_disabled(): 0, pid: 6053, name: aiurdemux0:sink
INFO: lockdep is turned off.
no locks held by aiurdemux0:sink/6053.
[<80042f24>] (unwind_backtrace+0x0/0xfc) from
                                     [<800f1dec>] (kmem_cache_alloc+0x114/0x180)
[<800f1dec>] (kmem_cache_alloc+0x114/0x180) from
                                     [<800e425c>] (__get_vm_area_node+0x88/0x194)
[<800e425c>] (__get_vm_area_node+0x88/0x194) from
                                     [<800e4b78>] (__vmalloc_node_range+0x68/0x1c8)
[<800e4b78>] (__vmalloc_node_range+0x68/0x1c8) from
                                     [<800e4d18>] (__vmalloc_node+0x40/0x48)
[<800e4d18>] (__vmalloc_node+0x40/0x48) from
                                     [<800e4f04>] (vmalloc_user+0x2c/0x74)
[<800e4f04>] (vmalloc_user+0x2c/0x74) from [<8038eb28>] (vpu_ioctl+0x204/0x8b0)
[<8038eb28>] (vpu_ioctl+0x204/0x8b0) from [<8010643c>] (do_vfs_ioctl+0x80/0x5e4)
[<8010643c>] (do_vfs_ioctl+0x80/0x5e4) from [<801069d8>] (sys_ioctl+0x38/0x60)
[<801069d8>] (sys_ioctl+0x38/0x60) from [<8003d500>] (ret_fast_syscall+0x0/0x3c)
"

Change the spinlock to mutex to fix this issue.

Signed-off-by: Huang Shijie <b32955@freescale.com>
Signed-off-by: Sammy He <r62914@freescale.com>
11 years agoENGR00174654 Update gpu kernel driver to vivante 4.6.5 release
b02279 [Fri, 17 Feb 2012 08:17:30 +0000 (16:17 +0800)]
ENGR00174654 Update gpu kernel driver to vivante 4.6.5 release

Signed-off-by: Loren Huang <b02279@freescale.com>
Acked-by: Lily Zhang
11 years agoENGR00174899: mx6/dl:gpu2d:fix gc320 can not run at high core clock issue
Wu Guoxing [Tue, 21 Feb 2012 05:02:50 +0000 (13:02 +0800)]
ENGR00174899: mx6/dl:gpu2d:fix gc320 can not run at high core clock issue

gc320 on Rigel can not run at high core clock, above 200M core clock will
make system hang.
change gc320's axi outstanding limit to 16 as a ic workaround.

Signed-off-by: Wu Guoxing <b39297@freescale.com>
Acked-by: Lily Zhang
11 years agoENGR00174892 [MX6]MMC: support SD3.0 UHS-I DDR50 mode.
Ryan QIAN [Tue, 21 Feb 2012 01:28:50 +0000 (09:28 +0800)]
ENGR00174892 [MX6]MMC: support SD3.0 UHS-I DDR50 mode.

- align UHS-I trial sequence with community that first DDR50
then SDR50.
- escape DDR50 from tuning procedure, only SDR104 will be tuned
so far.

Signed-off-by: Ryan QIAN <b32804@freescale.com>
11 years agoENGR00174829-2 power: max8903_charger: fix build warrning.
Zhang Jiejing [Mon, 20 Feb 2012 05:05:20 +0000 (13:05 +0800)]
ENGR00174829-2 power: max8903_charger: fix build warrning.

Fix below warrning message:
drivers/power/max8903_charger.c:218:
warning: 'gpio' may be used uninitialized in this function

Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
11 years agoENGR00174829-1 MX6Q_SABRESD: fix warnning message
Zhang Jiejing [Mon, 20 Feb 2012 05:00:40 +0000 (13:00 +0800)]
ENGR00174829-1 MX6Q_SABRESD: fix warnning message

Fix below warnning message:

arch/arm/mach-mx6/board-mx6q_sabresd.c:753:
warning: 'mx6q_sabresd_flexcan_gpios' defined but not used

Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
11 years agoENGR00174824 [MX6]Add workaround for i.MX6DL suspend/resume
Anson Huang [Mon, 20 Feb 2012 02:44:35 +0000 (10:44 +0800)]
ENGR00174824 [MX6]Add workaround for i.MX6DL suspend/resume

To keep i.MX6DL resume work stably, need to open LDO on based
on the current codes.Will continue to optimize power in suspend
state in future codes.

Signed-off-by: Anson Huang <b20788@freescale.com>
11 years agoENGR00174634 MIPI DSI: Add MIPI LCD ID detect and disable clock when no panel.
Wayne Zou [Thu, 16 Feb 2012 07:25:24 +0000 (15:25 +0800)]
ENGR00174634 MIPI DSI: Add MIPI LCD ID detect and disable clock when no panel.

1. Add MIPI LCD ID detection.
2. Disable MIPI clock when no MIPI LCD panel deteced.
3. Add timeout feature for register read/write to improve error handle.

Signed-off-by: Wayne Zou <b36644@freescale.com>
11 years agoENGR00174809 hdmi audio oops in hdmi_dma_mmap_copy
Alan Tull [Fri, 17 Feb 2012 21:15:35 +0000 (15:15 -0600)]
ENGR00174809 hdmi audio oops in hdmi_dma_mmap_copy

Runtime dma_area may be invalid after trigger stop command.
This will cause an oops in hdmi_dma_mmap_copy.  To fix this,
disable mmap copying with trigger stop command and also check
the runtime->dma_area before doing hdmi_dma_mmap_copy.

Signed-off-by: Alan Tull <r80115@freescale.com>
11 years agoENGR00173964 make hdmi audio init dependent on hdmi video init
Alan Tull [Fri, 17 Feb 2012 19:34:53 +0000 (13:34 -0600)]
ENGR00173964 make hdmi audio init dependent on hdmi video init

Don't show hdmi as an audio playback device if hdmi isn't
configured on the command line.

Signed-off-by: Alan Tull <r80115@freescale.com>
11 years agoENGR00174747 ASRC:fix spinlock bug
Chen Liangjun [Fri, 17 Feb 2012 06:33:50 +0000 (14:33 +0800)]
ENGR00174747 ASRC:fix spinlock bug

When use clk_enable and clk_disable function, system may enter
sleep. so these 2 funciton can not used surrounding with spin
lock/unlock. And the clk_enable/disable function already keep
the counter of open and close and it is no need to keep the counter
in driver.

Signed-off-by: Chen Liangjun <b36089@freescale.com>
11 years agoENGR00174630 [MX6]Disable GPT serial clock
Anson Huang [Thu, 16 Feb 2012 10:13:38 +0000 (18:13 +0800)]
ENGR00174630 [MX6]Disable GPT serial clock

Currently we use 24MHz clock as GPT's clock
source, serial clock can be disabled, it sourced
from high freq clock, gating it can save ~8mA @VDDSOC.

Signed-off-by: Anson Huang <b20788@freescale.com>
11 years agoENGR00174732 ASRC:close core clock if ASRC idle
Chen Liangjun [Thu, 16 Feb 2012 08:15:36 +0000 (16:15 +0800)]
ENGR00174732 ASRC:close core clock if ASRC idle

Close ASRC core clock when ASRC device is not used.

Open ASRC core clock when an ASRC device is open. Close ASRC core
clock when an ASRC device is close.

Signed-off-by: Chen Liangjun <b36089@freescale.com>
11 years agoENGR00174652 i.mx6: explicitly set the LPM mode to run mode during early bootup
Jason Liu [Thu, 16 Feb 2012 07:45:36 +0000 (15:45 +0800)]
ENGR00174652 i.mx6: explicitly set the LPM mode to run mode during early bootup

the reset value of LPM[1:0] in CCM_CLPCR register is b'01, which means
system will enter into wait mode on next assertion of dsm_request signal.

In order to avoid the system unexpectly enter the wait mode during bootup
we need set the LPM mode to run mode explicity during early boot up phase,

Anytime, we want system to enter the wait mode, the sw procedure is:

mxc_cpu_lp_set(LP_MODE) -> set CCM_CLPCR register -> system enter wait mode

This patch also fix linux kernel reboot stress test on i.mx6dl, without this
patch linux kernel reboot test will fail random with error like this:

[   12.091220] Bad mode in interrupt handler detected
[   12.096056] Bad mode in interrupt handler detected
[   12.100851] Internal error: Oops - bad mode: 0 [#1] PREEMPT SMP

Signed-off-by: Jason Liu <r64343@freescale.com>
11 years agoENGR00174394 MX6Q_arm2/MX6Q_sabreauto: change ipu_id/disp_id for LDB config.
Wayne Zou [Tue, 14 Feb 2012 01:10:53 +0000 (09:10 +0800)]
ENGR00174394 MX6Q_arm2/MX6Q_sabreauto: change ipu_id/disp_id for LDB config.

MX6Q_arm2/MX6Q_sabreauto:  change ipu_id/disp_id for LDB configuration.
For, LDB_SEP0 mode, the disp_id should be 0, and sec_disp_id should be
1 on MX6Q, since the LDB channel 0 should be connected to IPU DI0.

Signed-off-by: Wayne Zou <b36644@freescale.com>
11 years agoENGR00174649 i.mx6dl: clock: set ipu1 clock to 270M, change ldb_di_clk parent
Wayne Zou [Thu, 16 Feb 2012 07:28:11 +0000 (15:28 +0800)]
ENGR00174649 i.mx6dl: clock: set ipu1 clock to 270M, change ldb_di_clk parent

Set ipu1 clock to 270M, source from pll3_pfd_540M for best performance.
And set ldb_di_clk parent to pll2_pfd_352M.

Signed-off-by: Wayne Zou <b36644@freescale.com>
11 years agoENGR00174540: i.mx6: anatop_regulator: LDO voltage print not correctly
Jason Liu [Wed, 15 Feb 2012 10:34:41 +0000 (18:34 +0800)]
ENGR00174540: i.mx6: anatop_regulator: LDO voltage print not correctly

The LDO voltage constraint not printed correctly:

print_constraints: vddpu: 725 <--> 1300 mV at 700 mV fast normal
print_constraints: vddsoc: 725 <--> 1300 mV at 700 mV fast normal
print_constraints: vdd2p5: 2000 <--> 2775 mV at 2000 mV fast normal
print_constraints: vdd1p1: 800 <--> 1400 mV at 700 mV fast normal
print_constraints: vdd3p0: 2800 <--> 3150 mV at 2625 mV fast normal

There due to one typo: << in the code, thus will make the LDO constraint print
not correctly, the patch will make the print correctly as the followings:

print_constraints: vddpu: 725 <--> 1300 mV at 1100 mV fast normal
print_constraints: vddsoc: 725 <--> 1300 mV at 1200 mV fast normal
print_constraints: vdd2p5: 2000 <--> 2775 mV at 2400 mV fast normal
print_constraints: vdd1p1: 800 <--> 1400 mV at 1100 mV fast normal
print_constraints: vdd3p0: 2800 <--> 3150 mV at 3000 mV fast normal

Signed-off-by: Jason Liu <r64343@freescale.com>
11 years agoENGR00174532 [mx6Q]Change 2D clock to 480M
Larry Li [Wed, 15 Feb 2012 08:59:06 +0000 (16:59 +0800)]
ENGR00174532 [mx6Q]Change 2D clock to 480M

Change GPU2D core clock to 480M and use PLL3 as parent

Signed-off-by: Larry Li <b20787@freescale.com>
11 years agoENGR00174106-3 - EPDC fb: Support EPDC v2.0
Danny Nold [Tue, 14 Feb 2012 23:15:23 +0000 (17:15 -0600)]
ENGR00174106-3 - EPDC fb: Support EPDC v2.0

- Added new register definitions for EPDCv2.0
- Added support for 64 LUTs
- Conditionalized code for EPDC versions 1.0, 2.0, and 2.1
- Support for EPDC auto-waveform selection
- Support for collision test mode
- Support for PxP bypassing
- Support for LUT cancellation
- Support for new PxP limitations
- Support for collision minimization EPDC feature
- Added workaround for collision status bug (can't clear
IRQ before reading collision status for LUTs 16-63)

Signed-off-by: Danny Nold <dannynold@freescale.com>
11 years agoENGR00174106-2 - EPDC fb: Add waveform file for E Ink Pearl panel
Danny Nold [Thu, 9 Feb 2012 03:30:56 +0000 (21:30 -0600)]
ENGR00174106-2 - EPDC fb: Add waveform file for E Ink Pearl panel

- Added waveform firmware file for E Ink Pearl panel

Signed-off-by: Danny Nold <dannynold@freescale.com>
11 years agoENGR00174106-1 - EPDC fb: Support EPDC on MX 6DL/S
Danny Nold [Thu, 9 Feb 2012 03:28:42 +0000 (21:28 -0600)]
ENGR00174106-1 - EPDC fb: Support EPDC on MX 6DL/S

- Added EPDC and EPD PMIC (Maxim 17135) to MX6Q ARM2 board file
- Added EPDC-related IOMUX and GPIO settings
- Added EPDC clock configuration settings to clock file
- Updated config files with EPDC and Maxim 17135 config entries

Signed-off-by: Danny Nold <dannynold@freescale.com>
11 years agoENGR00172274-02 - [MX6]: rework IEEE-1588 in MX6Q Sabre-lite/sd board.
Fugang Duan [Tue, 14 Feb 2012 08:56:26 +0000 (16:56 +0800)]
ENGR00172274-02 - [MX6]: rework IEEE-1588 in MX6Q Sabre-lite/sd board.

- Config GPIO_16 pad to ENET_ANATOP_ETHERNET_REF_OUT.
- IEEE-1588 ts_clk and i2c3 are mutually exclusive, because
  all of them use GPIO_16, so it only for one function work
  at a moment.
- Test result:
TO1.1 IEEE 1588 is convergent in Sabrelite board.

Signed-off-by: Fugang Duan <B38611@freescale.com>
11 years agoENGR00174425: i.mx6: i.mx6dl: clock: set gpu2d_axi clock parent to mmdc0
Jason Liu [Tue, 14 Feb 2012 09:22:03 +0000 (17:22 +0800)]
ENGR00174425: i.mx6: i.mx6dl: clock: set gpu2d_axi clock parent to mmdc0

on i.mx6dl, gpu2d_axi clock is directly connected to mmdc0

Signed-off-by: Jason Liu <r64343@freescale.com>
11 years agoENGR00174423-2: i.mx6: clock: code clean up in pfd_set_rate
Jason Liu [Tue, 14 Feb 2012 09:20:20 +0000 (17:20 +0800)]
ENGR00174423-2: i.mx6: clock: code clean up in pfd_set_rate

code clean up by removing the dead code in function pfd_set_rate

Signed-off-by: Jason Liu <r64343@freescale.com>
11 years agoENGR00174423-1 i.mx6: cpu_op: code clean up
Jason Liu [Tue, 14 Feb 2012 09:14:40 +0000 (17:14 +0800)]
ENGR00174423-1 i.mx6: cpu_op: code clean up

code clean up by removing the un-expected mfd/mfn/mfi setting

Signed-off-by: Jason Liu <r64343@freescale.com>
11 years agoENGR00174381 imx6q-sabreauto: spdif remove tx clock settings
Adrian Alonso [Mon, 13 Feb 2012 20:15:00 +0000 (14:15 -0600)]
ENGR00174381 imx6q-sabreauto: spdif remove tx clock settings

* Sabreauto platform only supports spdif in (Rx)
  Remove unused Tx clock settings

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00174299-3: Add ePxP config option in defconfig
Robby Cai [Mon, 13 Feb 2012 10:21:44 +0000 (18:21 +0800)]
ENGR00174299-3: Add ePxP config option in defconfig

add ePxP config option

Signed-off-by: Robby Cai <R63905@freescale.com>
11 years agoENGR00174299-2: MSL part: add ePxP V2 driver
Robby Cai [Mon, 13 Feb 2012 08:46:52 +0000 (16:46 +0800)]
ENGR00174299-2: MSL part: add ePxP V2 driver

MSL part for ePxP v2 driver

Signed-off-by: Robby Cai <R63905@freescale.com>
11 years agoENGR00174299-1: driver part: Add ePxP v2 DMAENGINE driver
Robby Cai [Mon, 13 Feb 2012 06:36:54 +0000 (14:36 +0800)]
ENGR00174299-1: driver part: Add ePxP v2 DMAENGINE driver

add ePxP v2 DMAENGINE driver

Signed-off-by: Robby Cai <R63905@freescale.com>
11 years agoENGR00174437 ESAI: Add cs42888 build support in Makefile.
Lionel Xu [Tue, 14 Feb 2012 09:31:31 +0000 (17:31 +0800)]
ENGR00174437 ESAI: Add cs42888 build support in Makefile.

Add cs42888 build support.

Signed-off-by: Lionel Xu <Lionel.Xu@freescale.com>
11 years agoENGR00174399 ASRC: fix mmap fail bug
Chen Liangjun [Tue, 14 Feb 2012 03:23:30 +0000 (11:23 +0800)]
ENGR00174399 ASRC: fix mmap fail bug

If output sample rate is less than input sample rate, it is possible
that the address of output dma buffer 0 can not be divided by page size.
Thus the mmap of output dma in the user space would fail and test
would fail.

let all output dma buffers allocate dma buffer together and we can
assure that the address of output dma buffer 0 can be divided by
page size.

Signed-off-by: Chen Liangjun <b36089@freescale.com>
11 years agoENGR00174395 V4L2 capture: Driver improvement
Liu Ying [Mon, 13 Feb 2012 09:45:17 +0000 (17:45 +0800)]
ENGR00174395 V4L2 capture: Driver improvement

1) CSI module should be disabled first for CSI_MEM channel,
otherwise, the capture channels will hang after restarting
for several times.
2) Disable CSI module correctly for overlay. Move stopping
preview channel operation out of de-select interface.
3) Check cam->overlay_on is true in close function before
stopping preview.
4) Check cam->vf_start_sdc function before calling it.

Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
11 years agoENGR00174121-3 MX6: add max8903 driver in defconfig.
Zhang Jiejing [Mon, 13 Feb 2012 10:17:20 +0000 (18:17 +0800)]
ENGR00174121-3 MX6: add max8903 driver in defconfig.

enable max8903 in defconfig.

Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
11 years agoENGR00174121-2 MX6Q_SABRESD: add battery chip support.
Zhang Jiejing [Mon, 13 Feb 2012 06:34:12 +0000 (14:34 +0800)]
ENGR00174121-2 MX6Q_SABRESD: add battery chip support.

add battery support.

support Charger plug in and detect, DC and USB.
support charging status query.

not support voltage reading due to HW design,
to support this will have more efforts so add this later if needed.

Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
11 years agoENGR00174121-1 power: max8903 add support for dcm always high.
Zhang Jiejing [Thu, 9 Feb 2012 09:08:32 +0000 (17:08 +0800)]
ENGR00174121-1 power: max8903 add support for dcm always high.

add this to support MX6Q_SABRESD board hardware design.

Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
11 years agoENGR00174296 [MX6_SD]USDHC: iNAND on board failed to work on ddr mode
Ryan QIAN [Tue, 14 Feb 2012 03:10:45 +0000 (11:10 +0800)]
ENGR00174296 [MX6_SD]USDHC: iNAND on board failed to work on ddr mode

- add delay in mmc_switch to improve compatibility.

Signed-off-by: Ryan QIAN <b32804@freescale.com>