]> git.karo-electronics.de Git - karo-tx-linux.git/log
karo-tx-linux.git
11 years agoENGR00211132 ESAI: fix build warning
Gary Zhang [Mon, 28 May 2012 02:27:46 +0000 (10:27 +0800)]
ENGR00211132 ESAI: fix build warning

imx-pcm.h should not include imx-ssi.h, or else DRV_NAME is
redefined

Signed-off-by: Gary Zhang <b13634@freescale.com>
11 years agoENGR00211129 - SPDC : modify waveform update modes.
Fugang Duan [Mon, 28 May 2012 02:58:19 +0000 (10:58 +0800)]
ENGR00211129 - SPDC : modify waveform update modes.

- Because mode_4 only use for handwriting mode, and
  mode_3 use for power off mode, modify the waveform
  mode for update requests.
- Use mode_2 for DU and A2, mode_1 for GU:
  mode_A2 = mode_2, mode_du = mode_2;
  mode_gu = mode_1;

Signed-off-by: Fugang Duan <B38611@freescale.com>
11 years agoENGR00211142 mx6q : set VDDCORE 1.05V at 672Mhz cpu point
Robin Gong [Mon, 28 May 2012 03:19:27 +0000 (11:19 +0800)]
ENGR00211142 mx6q : set VDDCORE 1.05V at 672Mhz cpu point

As SOC team suggestion, we should change VDDCORE from 1.1V to 1.05V at 672Mhz

Signed-off-by: Robin Gong <B38343@freescale.com>
11 years agoENGR00210547 [MX6]Enable I cache and branch prediction early
Anson Huang [Fri, 25 May 2012 08:36:56 +0000 (16:36 +0800)]
ENGR00210547 [MX6]Enable I cache and branch prediction early

1. When resume, we can enable I cache and branch prediction
early to speed up the resume process;
2. L2 cache still need clean before suspend to make suspend/resume
modifiedre stable, add it back until we find the root cause.

Signed-off-by: Anson Huang <b20788@freescale.com>
11 years agoENGR00210559-2 Integrate gpu openGL2.1 and DRM
Allen Xu [Thu, 24 May 2012 02:42:51 +0000 (10:42 +0800)]
ENGR00210559-2 Integrate gpu openGL2.1 and DRM

Add vivante drm modules code and select it in default config. Integrate
these code from vivante.

Signed-off-by: Allen Xu <allen.xu@freescale.com>
11 years agoENGR00210559-1 Integrate gpu openGL2.1 and DRM
Allen Xu [Thu, 24 May 2012 02:28:24 +0000 (10:28 +0800)]
ENGR00210559-1 Integrate gpu openGL2.1 and DRM

Add vivante drm modules code and select it in default config. Integrate
these code from vivante.

Signed-off-by: Allen Xu <allen.xu@freescale.com>
Acked-by: Lily Zhang
11 years agoENGR00210850 mx6: boot failure with local timer and wait mode enabled
Xinyu Chen [Fri, 25 May 2012 03:39:15 +0000 (11:39 +0800)]
ENGR00210850 mx6: boot failure with local timer and wait mode enabled

Previous patch only check the condition that GPT broadcast
event is ready or not before doing clock event switch.
It's not enough, as the clock switch from local timer to GPT
broadcast must be happen after GPT broadcast clock event setup
and current cpu's clock device switch to local timer clock event.
Otherwise, we will have chance that cpu exit the wait mode and
switch back clock event without local timer event setup correctly.

Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
11 years agoENGR00210075-5 - SPDC: Add waveform file for AUO paper panel
Fugang Duan [Sat, 19 May 2012 07:46:21 +0000 (15:46 +0800)]
ENGR00210075-5 - SPDC: Add waveform file for AUO paper panel

- Add waveform firmware file for AUO paper panel

Signed-off-by: Fugang Duan <B38611@freescale.com>
11 years agoENGR00210075-4 SPDC: Export some APIs for unit test case.
Fugang Duan [Tue, 22 May 2012 08:03:56 +0000 (16:03 +0800)]
ENGR00210075-4 SPDC: Export some APIs for unit test case.

- Export some APIs for unit test driver use.

Signed-off-by: Fugang Duan <B38611@freescale.com>
11 years agoENGR00210661: imx6sl: add watchdog support
Robby Cai [Thu, 24 May 2012 09:19:04 +0000 (17:19 +0800)]
ENGR00210661: imx6sl: add watchdog support

Register watchdog platform device and re-use watchdog driver.

Signed-off-by: Robby Cai <R63905@freescale.com>
11 years agoENGR00210694 MX6 SABRESD:Enable IRQ for max11801
Rong Dian [Thu, 24 May 2012 08:05:31 +0000 (16:05 +0800)]
ENGR00210694 MX6 SABRESD:Enable IRQ for max11801

If miss to configure IRQ for max11801, the max11801 driver fails to
probe and returns error,sabresd battery driver also fails to sample
voltage by max11801 ADC.

Signed-off-by: Rong Dian <b38775@freescale.com>
11 years agoENGR00210550: imx6sl: add viim support
Robby Cai [Wed, 23 May 2012 08:58:27 +0000 (16:58 +0800)]
ENGR00210550: imx6sl: add viim support

registered viim platform divice.

Signed-off-by: Robby Cai <R63905@freescale.com>
11 years agoENGR00180495 [mx6]Fix suspend/resume issue caused by hotplug
Anson Huang [Wed, 23 May 2012 07:13:03 +0000 (15:13 +0800)]
ENGR00180495 [mx6]Fix suspend/resume issue caused by hotplug

When we kill a secondary cpu, we need to wait for it
die, then kill it from hardware setting. And to avoid
the cache unalign issue, we use hardware register to
send flag to inform main cpu to kill secondary cpu.

Signed-off-by: Anson Huang <b20788@freescale.com>
11 years agoARM: 7359/2: smp_twd: Only wait for reprogramming on active cpus
Linus Walleij [Tue, 10 Apr 2012 11:37:42 +0000 (12:37 +0100)]
ARM: 7359/2: smp_twd: Only wait for reprogramming on active cpus

During booting of cpu1, there is a short window where cpu1
is online, but not active where cpu1 is occupied by waiting
to become active. If cpu0 then decides to schedule something
on cpu1 and wait for it to complete, before cpu0 has set
cpu1 active, we have a deadlock.

Typically it's this CPU frequency transition that happens at
this time, so let's just not wait for it to happen, it will
happen whenever the CPU eventually comes online instead.

Cc: Peter Zijlstra <peterz@infradead.org>
Cc: stable@kernel.org
Signed-off-by: Jonas Aaberg <jonas.aberg@stericsson.com>
Reviewed-by: Rickard Andersson <rickard.andersson@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
11 years agoARM: 7406/1: hotplug: copy the affinity mask when forcefully migrating IRQs
Will Deacon [Fri, 27 Apr 2012 11:56:24 +0000 (12:56 +0100)]
ARM: 7406/1: hotplug: copy the affinity mask when forcefully migrating IRQs

When a CPU is hotplugged off, we migrate any IRQs currently affine to it
away and onto another online CPU by calling the irq_set_affinity
function of the relevant interrupt controller chip. This function
returns either IRQ_SET_MASK_OK or IRQ_SET_MASK_OK_NOCOPY, to indicate
whether irq_data.affinity was updated.

If we are forcefully migrating an interrupt (because the affinity mask
no longer identifies any online CPUs) then we should update the IRQ
affinity mask to reflect the new CPU set. Failure to do so can
potentially leave /proc/irq/n/smp_affinity identifying only offline
CPUs, which may confuse userspace IRQ balancing daemons.

This patch updates migrate_one_irq to copy the affinity mask when
the interrupt chip returns IRQ_SET_MASK_OK after forcefully changing the
affinity of an interrupt.

Cc: stable@vger.kernel.org
Reported-by: Leif Lindholm <leif.lindholm@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
11 years agoARM: 7317/1: irq: avoid NULL check in for_each_irq_desc loop
Will Deacon [Fri, 3 Feb 2012 13:50:07 +0000 (14:50 +0100)]
ARM: 7317/1: irq: avoid NULL check in for_each_irq_desc loop

ARM unconditionally selects CONFIG_GENERIC_HARDIRQS, so the definition
of for_each_irq_desc will check that the desc is non-NULL anyway.

This patch removes a redundant check from the IRQ migration code.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
11 years agoARM: CPU hotplug: ensure we migrate all IRQs off a downed CPU
Russell King [Thu, 21 Jul 2011 14:14:21 +0000 (15:14 +0100)]
ARM: CPU hotplug: ensure we migrate all IRQs off a downed CPU

Our selection of interrupts to consider for IRQ migration is sub-
standard.  We were potentially including per-CPU interrupts in our
migration strategy, but omitting chained interrupts.  This caused
some interrupts to remain on a downed CPU.

We were also trying to migrate interrupts which were not migratable,
resulting in an OOPS.

Instead, iterate over all interrupts, skipping per-CPU interrupts
or interrupts whose affinity does not include the downed CPU, and
attempt to set the affinity for every one else if their chip
implements irq_set_affinity().

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
11 years agoARM: CPU hotplug: pass in proper affinity mask on IRQ migration
Russell King [Thu, 21 Jul 2011 14:07:56 +0000 (15:07 +0100)]
ARM: CPU hotplug: pass in proper affinity mask on IRQ migration

Now that the GIC takes care of selecting a target interrupt from the
affinity mask, we don't need all this complexity in the core code
anymore.  Just detect when we need to break affinity.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
11 years agoARM: CPU hotplug: fix abuse of irqdesc->node
Russell King [Thu, 21 Jul 2011 13:51:13 +0000 (14:51 +0100)]
ARM: CPU hotplug: fix abuse of irqdesc->node

irqdesc's node member is supposed to mark the numa node number for the
interrupt.  Our use of it is non-standard.  Remove this, replacing the
functionality with a test of the affinity mask.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
11 years agoARM: introduce handle_IRQ() not to dump exception stack
Russell King - ARM Linux [Mon, 11 Jul 2011 21:25:43 +0000 (22:25 +0100)]
ARM: introduce handle_IRQ() not to dump exception stack

On Mon, Jul 11, 2011 at 3:52 PM, Russell King - ARM Linux
<linux@arm.linux.org.uk> wrote:

...

> The __exception annotation on a function causes this to happen:
>
> [<c002406c>] (asm_do_IRQ+0x6c/0x8c) from [<c0024b84>]
> (__irq_svc+0x44/0xcc)
> Exception stack(0xc3897c78 to 0xc3897cc0)
> 7c60:                                                       4022d320 4022e000
> 7c80: 08000075 00001000 c32273c0 c03ce1c0 c2b49b78 4022d000 c2b420b4 00000001
> 7ca0: 00000000 c3897cfc 00000000 c3897cc0 c00afc54 c002edd8 00000013 ffffffff
>
> Where that stack dump represents the pt_regs for the exception which
> happened.  Any function found in while unwinding will cause this to
> be printed.
>
> If you insert a C function between the IRQ assembly and asm_do_IRQ,
> the
> dump you get from asm_do_IRQ will be the stack for your function,
> not
> the pt_regs.  That makes the feature useless.
>

When __irq_svc - or any of the other exception handling assembly code -
calls the C code, the stack pointer will be pointing at the pt_regs
structure.

All the entry points into C code from the exception handling code are
marked with __exception or __exception_irq_enter to indicate that they
are one of the functions which has pt_regs above them.

Normally, when you've entered asm_do_IRQ() you will have this stack
layout (higher address towards top):

       pt_regs
       asm_do_IRQ frame

If you insert a C function between the exception assembly code and
asm_do_IRQ, you end up with this stack layout instead:

       pt_regs
       your function frame
       asm_do_IRQ frame

This means when we unwind, we'll get to asm_do_IRQ, and rather than
dumping out the pt_regs, we'll dump out your functions stack frame
instead, because that's what is above the asm_do_IRQ stack frame
rather than the expected pt_regs structure.

The fix is to introduce handle_IRQ() for no exception stack dump, so
it can be called with MULTI_IRQ_HANDLER is selected and a C function
is between the assembly code and the actual IRQ handling code.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
11 years agoARM: SMP: use a timing out completion for cpu hotplug
Russell King [Wed, 18 Jan 2012 15:59:45 +0000 (15:59 +0000)]
ARM: SMP: use a timing out completion for cpu hotplug

Rather than open-coding the jiffy-based wait, and polling for the
secondary CPU to come online, use a completion instead.  This
removes the need to poll, instead we will be notified when the
secondary CPU has initialized.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
11 years agonohz: Remove "Switched to NOHz mode" debugging messages
Heiko Carstens [Tue, 23 Aug 2011 11:20:46 +0000 (13:20 +0200)]
nohz: Remove "Switched to NOHz mode" debugging messages

When performing cpu hotplug tests the kernel printk log buffer gets flooded
with pointless "Switched to NOHz mode..." messages. Especially when afterwards
analyzing a dump this might have removed more interesting stuff out of the
buffer.
Assuming that switching to NOHz mode simply works just remove the printk.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Link: http://lkml.kernel.org/r/20110823112046.GB2540@osiris.boeblingen.de.ibm.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
11 years agoENGR00210469 MX6q - Fix suspend/resume failure.
Ranjani Vaidyanathan [Mon, 21 May 2012 14:37:03 +0000 (09:37 -0500)]
ENGR00210469 MX6q - Fix suspend/resume failure.

Sourcing AXI_CLK from PLL3_PFD_540M causes the system to
hang on resuming from STOP mode.
The main issue is that PFDs may sometimes hang/freeze
when their parent PLLs are powered on and then relocked
when exiting from STOP mode. To avoid this, PFDs must
be disabled before entering STOP and enabled after resume.

The fix is to move axi_clk to periph_clk before system
enters STOP and then restore it back to PLL3_PFD_540M
after resume.

Signed-off-by: Ranjani Vaidyanathan <ra5478@freescale.com>
11 years agoENGR00174974 [MX6]Fix CPU hotplug platform related issue
Anson Huang [Wed, 23 May 2012 01:38:29 +0000 (09:38 +0800)]
ENGR00174974 [MX6]Fix CPU hotplug platform related issue

We need to turn of cache coherency of secondary core before
it is disable by core0, otherwise, the secondary core may be
waked by cache sync, and if it exit from wfi and access BUS,
meanwhile, core0 disable it from hardware, the whole SOC would
hang.

Signed-off-by: Anson Huang <b20788@freescale.com>
11 years agoENGR00210126 IPU: reconsolidate IPU clock enable/disable API
Wayne Zou [Mon, 21 May 2012 08:09:24 +0000 (16:09 +0800)]
ENGR00210126 IPU: reconsolidate IPU clock enable/disable API

Consolidate IPU clock enable/disable API by using clk_enable/clk_disable
directly.

Signed-off-by: Wayne Zou <b36644@freescale.com>
11 years agoENGR00210360 - EPDC: Fix regulator-related EPDC failure on MX6SL ARM2 CPU board
Robby Cai [Tue, 22 May 2012 08:55:18 +0000 (16:55 +0800)]
ENGR00210360 - EPDC: Fix regulator-related EPDC failure on MX6SL ARM2 CPU board

Its similar to ENGR00178581.
Remove call to regulator_has_full_constraints() from Max17135 EPD PMIC
initialization code, since leaving it enabled results in a failure of
system to load properly - key regulators are disabled when 'epdc' is added
to the kernel command line.

Signed-off-by: Robby Cai <R63905@freescale.com>
11 years agoENGR00209739-5 WM8962: check DMIC status
Gary Zhang [Tue, 22 May 2012 03:03:41 +0000 (11:03 +0800)]
ENGR00209739-5 WM8962: check DMIC status

if there are no amic_detect pin, by checking
DMIC pin status to get to know which mic is used

Signed-off-by: Gary Zhang <b13634@freescale.com>
11 years agoENGR00210075-3 - SPDC: Add Sipix driver
Fugang Duan [Sat, 19 May 2012 03:17:03 +0000 (11:17 +0800)]
ENGR00210075-3 - SPDC: Add Sipix driver

Add Sipix driver for electronic paper dispaly
- Support RGB565 & Y4 formats with 800x600 resolution
- Support synchronization update by waiting the last
  request update completed.
- Support automated update using Linux deferred io mechanism
- Support for panning(y-direction)
- Support rotation with 90,180,and 270 degree.
- Initial integration with ePXP, output Y4 format
- Support specific waveform modes update.
- Support Snapshot, Queue and Queue Merge update sheeme.
- Support full and partial EPD screen updates.
  mode_1 & mode_2: partial update
  mode_0 & mode_3: full update
- Align waveform mode with EPDC as below:
  mode_init = mode_0;
  mode_gc4  = mode_2;
  mode_A2   = mode_4, mode_du =mode_4;
  mode_gc8  = mode_1, mode_gc16 = mode_1, mode_gc32 = mode_1;

Signed-off-by: Fugang Duan <B38611@freescale.com>
11 years agoENGR00210271 - PWM1 pad incorrectly configured by EPDC driver
Danny Nold [Tue, 22 May 2012 01:48:35 +0000 (20:48 -0500)]
ENGR00210271 - PWM1 pad incorrectly configured by EPDC driver

- Remove configuration of PWM1 pad for EPDC.  Was there for debug purposes,
but caused problems with LCD support.

Signed-off-by: Danny Nold <dannynold@freescale.com>
11 years agoENGR00210075-2 - MX6SL MSL: Add SPDC in imx6s_defconfig
Fugang Duan [Sat, 19 May 2012 03:01:54 +0000 (11:01 +0800)]
ENGR00210075-2 - MX6SL MSL: Add SPDC in imx6s_defconfig

 Add Sipix panel option in imx6s_defconfig file

Signed-off-by: Fugang Duan <B38611@freescale.com>
11 years agoENGR00210075-1 - MX6SL MSL: Add SPDC support for MX6SoloLite ARM2 board
Fugang Duan [Sat, 19 May 2012 02:36:46 +0000 (10:36 +0800)]
ENGR00210075-1 - MX6SL MSL: Add SPDC support for MX6SoloLite ARM2 board

- Add IOMUX pad config defines and GPIO defines
- Add platform device/data for SPDC
- Add IRQ number define for SPDC

Signed-off-by: Fugang Duan <B38611@freescale.com>
11 years agoENGR00209994-2 : imx6sl: remove repeated ePxP device register.
Fugang Duan [Sat, 19 May 2012 07:30:46 +0000 (15:30 +0800)]
ENGR00209994-2 : imx6sl: remove repeated ePxP device register.

- remove repeated ePXP device register.

Signed-off-by: Fugang Duan <B38611@freescale.com>
11 years agoENGR00209739-4 add AUDMUX/SDMA support for MX6SL
Gary Zhang [Mon, 21 May 2012 10:39:05 +0000 (18:39 +0800)]
ENGR00209739-4 add AUDMUX/SDMA support for MX6SL

check CONFIG_ARCH_MX6 to replace cpu type

Signed-off-by: Gary Zhang <b13634@freescale.com>
11 years agoENGR00209739-3 MX6DQ/DL_SABRESD: operate WM8962 MCLK by callback
Gary Zhang [Mon, 21 May 2012 10:34:26 +0000 (18:34 +0800)]
ENGR00209739-3 MX6DQ/DL_SABRESD: operate WM8962 MCLK by callback

operate WM8962 MCLK by callback

Signed-off-by: Gary Zhang <b13634@freescale.com>
11 years agoENGR00209739-2 MX6SL_ARM2: add wm8962 support
Gary Zhang [Mon, 21 May 2012 10:29:43 +0000 (18:29 +0800)]
ENGR00209739-2 MX6SL_ARM2: add wm8962 support

add wm8962 codec support for mx6sl arm2

Signed-off-by: Gary Zhang <b13634@freescale.com>
11 years agoENGR00209739-1 WM8962: add support for MX6 SL
Gary Zhang [Mon, 21 May 2012 10:25:22 +0000 (18:25 +0800)]
ENGR00209739-1 WM8962: add support for MX6 SL

1. add support for mx6 sl
2. operate clock by callback

Signed-off-by: Gary Zhang <b13634@freescale.com>
11 years agoENGR00210160: [mx6]: mmc/sd illegal func call "clk_enable" in intr context
Ryan QIAN [Mon, 21 May 2012 09:24:42 +0000 (17:24 +0800)]
ENGR00210160: [mx6]: mmc/sd illegal func call "clk_enable" in intr context

issue:
calling clk_enable in an interrupt context which will cause kernel bug.

- It is a temp workaround for calling 'clk_enable' in an interrupt context.
By redefine SDHCI_USE_LEDS_CLASS to SDHCI_USE_LEDS_CLASS_BROKEN to exclude
led ctrl support, it does not support mmc/sd LED ctrl with this patch.

- Per current driver structure, it's difficult to fix this issue in driver
layer. The fix for this issue needs adjustment to current driver structure
and using new clock management in kernel interface.

Signed-off-by: Ryan QIAN <b32804@freescale.com>
11 years agoENGR00209716-2 Revert "ENGR00209022 Update gpu clock management code"
Loren Huang [Mon, 21 May 2012 07:32:25 +0000 (15:32 +0800)]
ENGR00209716-2 Revert "ENGR00209022 Update gpu clock management code"

This code is in 4.6.8 package.
This patch will cause suspend/resume failure
and data abort for vg applications.

Signed-off-by: Loren Huang <b02279@freescale.com>
Acked-by: Lily Zhang
11 years agoENGR00209716-1 Merge vivante 4.6.8 kernel part code
Loren Huang [Thu, 17 May 2012 17:15:35 +0000 (01:15 +0800)]
ENGR00209716-1 Merge vivante 4.6.8 kernel part code

Merge vivante 4.6.8 kernel part code

Signed-off-by: Loren Huang <b02279@freescale.com>
Acked-by: Lily Zhang
11 years agoENGR00180768 sd:detect some sd2.0 cards to sd1.0
B38613 [Wed, 25 Apr 2012 05:51:44 +0000 (13:51 +0800)]
ENGR00180768 sd:detect some sd2.0 cards to sd1.0

when SD_SPEC=2, no matter Physical Layer Spec v3.0
is supported or not, should both be recognized as
SD2.0card.

Signed-off-by: Zhou Jianzheng <B38613@freescale.com>
(cherry picked from commit 59f5c06bba9e426326346fc00c1524cb789d695a)

11 years agoENGR00209062-2: mx6dq and mx6dl dual camera support
Wu Guoxing [Mon, 21 May 2012 01:24:29 +0000 (09:24 +0800)]
ENGR00209062-2: mx6dq and mx6dl dual camera support

dual camera support for mx6q and mx6dl:
1. let mipi and parallel camera working on different csi
2. the two camera can work independently and synchronously
3. the two camera will be registered and different video
   device(/dev/video0, /dev/video1)
4. when both camera are working, the can not use the same
   ipu channel, that is, when camera one using PRP_ENC_MEM
   or PRP_VF_MEM channel, the other one can only use CSI_MEM

   this is the driver part.

Signed-off-by: Wu Guoxing <b39297@freescale.com>
11 years agoENGR00209062-1: mx6dq and mx6dl dual camera support
Wu Guoxing [Mon, 21 May 2012 01:21:12 +0000 (09:21 +0800)]
ENGR00209062-1: mx6dq and mx6dl dual camera support

dual camera support for mx6q and mx6dl:
1. let mipi and parallel camera working on different csi
2. the two camera can work independently and synchronously
3. the two camera will be registered and different video
   device(/dev/video0, /dev/video1)
4. when both camera are working, the can not use the same
   ipu channel, that is, when camera one using PRP_ENC_MEM
   or PRP_VF_MEM channel, the other one can only use CSI_MEM

   this is the arch part changes.

Signed-off-by: Wu Guoxing <b39297@freescale.com>
11 years agoENGR00209501 [MX6]Support different platforms DDR IO setting in DSM
Anson Huang [Fri, 18 May 2012 11:58:25 +0000 (19:58 +0800)]
ENGR00209501 [MX6]Support different platforms DDR IO setting in DSM

As Mx6 dq, dl and sl have different DDR IO address, so
we need to do the DDR IO low power setting according
to different CPU type.

Also, Mx6sl has some different config in DSM, need to
separate it from other platforms.

Change mx6q_suspend to mx6_suspend, as it is a common
thing for all mx6 platforms.

Add rtc driver for mxsl platform to support suspend/resume test.

Signed-off-by: Anson Huang <b20788@freescale.com>
11 years agoENGR00209621 MX6-Fixed random CON_ACK stall
Ranjani Vaidyanathan [Mon, 7 May 2012 19:28:49 +0000 (14:28 -0500)]
ENGR00209621 MX6-Fixed random CON_ACK stall

DLL ON/OFF code randomly hangs waiting for the CON_ACK bit
to be set when a CON_REQ is asserted.
Fix this by adding a delay after the MMDC automatic power savings
mode is disabled.

Signed-off-by: Ranjani Vaidyanathan <ra5478@freescale.com>
11 years agoENGR00209846 MX6SL-Enable DVFS_CORE on all MX6 platforms
Ranjani Vaidyanathan [Mon, 14 May 2012 21:12:59 +0000 (16:12 -0500)]
ENGR00209846 MX6SL-Enable DVFS_CORE on all MX6 platforms

Add support DVFS-CORE to MX6Sololite.
Set PLL1 in bypass mode when ARM freq drops below 400MHz.
ARM will be sourced from PLL2_PFD2_400M in this case.

Signed-off-by: Ranjani Vaidyanathan <ra5478@freescale.com>
11 years agoENGR00209617 MX6x - Add WAIT mode workaround
Ranjani Vaidyanathan [Wed, 16 May 2012 17:43:27 +0000 (12:43 -0500)]
ENGR00209617 MX6x - Add WAIT mode workaround

To avoid the ARM from accepting an interrupt in the dangerous
window, reduce the ARM core freq just before the sytem is
about to enter WAIT state.
Reduce the ARM freq so as to maintain 12:5 ARM_CLK to IPG
ratio. Use the ARM_PODF to drop the frequency.
In a multicore case the frequency is dropped only when all the
4 cores are going to be in WFI.

In case of single core environment, its easy to drop the ARM core
freq just before WFI since there is no need to identify the state of
the other cores.

Some other points to note:
1. If "mem_clk_on" is added to the command line, the memory clocks will
not be gated in WAIT mode. This will increase the system IDLE power.
This mode is valid only on MX6sl, MX6DQ TO1.2 and MX6DL TO1.1.
2. In case the IPG clk is too low (for ex 50MHz) and ARM is at 1GHz,
we cannot match the 12:5 ratio using ARM_PODF only. In this case,
donot clock gate the memories in WAIT mode (available on MX6SL,
MXDQ TO1.2 and MXDL TO1.1). For MXDQ TO1.1 and MX6DL TO1.0, disable
system wide WAIT entry in this case.

In STOP mode, always ensure that the memory clocks are gated, else
power impact will be significant.

WAIT mode is enabled by default with this commit.

Signed-off-by: Ranjani Vaidyanathan <ra5478@freescale.com>
11 years agoENGR00210003: imx6sl: add SPI support
Robby Cai [Fri, 18 May 2012 10:45:41 +0000 (18:45 +0800)]
ENGR00210003: imx6sl: add SPI support

- configure the pinmux for SPI module working.

Signed-off-by: Robby Cai <R63905@freescale.com>
11 years agoENGR00209994: imx6sl: add ePxP support
Robby Cai [Fri, 18 May 2012 10:31:50 +0000 (18:31 +0800)]
ENGR00209994: imx6sl: add ePxP support

add ePxP support on ARM2 board

Signed-off-by: Robby Cai <R63905@freescale.com>
11 years agoENGR00209883-2 - EPDC fb: Add support for MX 6SoloLite SoC
Danny Nold [Thu, 17 May 2012 20:22:51 +0000 (15:22 -0500)]
ENGR00209883-2 - EPDC fb: Add support for MX 6SoloLite SoC

- Add support for TCE source buffer in EPDC v2.1
- Remove debug code

Signed-off-by: Danny Nold <dannynold@freescale.com>
11 years agoENGR00209883-1 - EPDC fb: Add support for MX 6SoloLite ARM2 board
Danny Nold [Thu, 17 May 2012 20:17:37 +0000 (15:17 -0500)]
ENGR00209883-1 - EPDC fb: Add support for MX 6SoloLite ARM2 board

- Add EPDC and Max17135 structures and initialization calls to
the MX6SL ARM2 board file
- Add IOMUX configuration defines and GPIO defines for EPDC/Max17135
- Remove prints/debug from EPDC-related clocks.

Signed-off-by: Danny Nold <dannynold@freescale.com>
11 years agoENGR00209978-2: imx6sl: lcdif: update driver part
Robby Cai [Fri, 18 May 2012 10:11:16 +0000 (18:11 +0800)]
ENGR00209978-2: imx6sl: lcdif: update driver part

- use new console lock/unlock

Board Rework Needed:
 - remove R572, R569, R611 to eliminate conflict with FEC modules.

Signed-off-by: Robby Cai <R63905@freescale.com>
11 years agoENGR00209978-1: imx6sl: lcdif: add msl codes for lcdif
Robby Cai [Fri, 18 May 2012 09:26:02 +0000 (17:26 +0800)]
ENGR00209978-1: imx6sl: lcdif: add msl codes for lcdif

- update LCDIF pinmux setting (and pad ctrl setting)
- correct LCDIF pixel clock setting
- add platform device/data for lcdif

Signed-off-by: Robby Cai <R63905@freescale.com>
11 years agoENGR00209686-2:sdio:suspend/resume issue
B38613 [Fri, 18 May 2012 10:15:56 +0000 (18:15 +0800)]
ENGR00209686-2:sdio:suspend/resume issue

1.add MMC_PM_WAKE_SDIO_IRQ capability, it should be
used together with MMC_PM_KEEP_POWER although not support
SDIO wakeup in function.
2.add MMC_CAP_NONREMOVABLE to describe imx6's three sdhc
devices's removable feature.Now emmc is permanent,sdio and
sd is removable instead of all default were permanent before.
According to this feature, detimine whether reinit card
or not in resume.

Signed-off-by: B38613 <B38613@freescale.com>
11 years agoENGR00209686-1:sdio:suspend/resume issue
B38613 [Fri, 18 May 2012 10:14:56 +0000 (18:14 +0800)]
ENGR00209686-1:sdio:suspend/resume issue

1.add MMC_PM_WAKE_SDIO_IRQ capability, it should be
used together with MMC_PM_KEEP_POWER although not support
SDIO wakeup in function.
2.add MMC_CAP_NONREMOVABLE to describe imx6's three sdhc
devices's removable feature.Now emmc is permanent,sdio and
sd is removable instead of all default were permanent before.
According to this feature, detimine whether reinit card
or not in resume.

Signed-off-by: B38613 <B38613@freescale.com>
11 years agoENGR00209910 Mfg: Add support for MX6SL
Frank Li [Fri, 18 May 2012 04:50:53 +0000 (12:50 +0800)]
ENGR00209910 Mfg: Add support for MX6SL

Using the same config for all mx6 chip for mfgtools

Signed-off-by: Frank Li <Frank.Li@freescale.com>
11 years agoENGR00182769 HDMI: No sound when playing audio in 480p mode
Sandor Yu [Thu, 17 May 2012 07:28:54 +0000 (15:28 +0800)]
ENGR00182769 HDMI: No sound when playing audio in 480p mode

It is cause by HDMI audio driver can't get right pixel clock
from IPU driver if pixel clock source from HSP clock not from
DI clock.
HDMI driver get pixel clock by call clk_get_rate() function,
but the function return actually clock, in some videomode the
actually pixel clock is not right equal the pixel clock in CEA spec.

Get pixel clock from video mode struct instead of CCM register.
480P HDMI audio can work.

Signed-off-by: Sandor Yu <R01008@freescale.com>
11 years agoENGR00209557 IMX6: GPU: do not reserve memory when GPU is not enabled
Huang Shijie [Wed, 16 May 2012 10:39:14 +0000 (18:39 +0800)]
ENGR00209557 IMX6: GPU: do not reserve memory when GPU is not enabled

The current code will reserve 128M for GPU even when it is not enabled.

It is not needed. So do not reserve the memory when the GPU is not enabled.
(this can save 128M for Mfgtool.)

Signed-off-by: Huang Shijie <b32955@freescale.com>
11 years agoENGR00209384-4 mxc_spdif: disable sym_err isr
Adrian Alonso [Wed, 16 May 2012 22:34:24 +0000 (17:34 -0500)]
ENGR00209384-4 mxc_spdif: disable sym_err isr

* Disable symbol error interrupt when rx dpll is unlocked
  This means that no spdif Rx data had been identified and
  driver will keep issuing sym_err interrupt request.
* Add check to only execute capture_start/stop
  functions if rx_active is set.

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00209657 MX6SL-Initialise CPU_CLK and AHB_CLK to default rates.
Ranjani Vaidyanathan [Thu, 17 May 2012 04:41:47 +0000 (23:41 -0500)]
ENGR00209657 MX6SL-Initialise CPU_CLK and AHB_CLK to default rates.

Set CPU_CLK to be 1GHz at boot and ABH_CLK to be 132MHz.

Signed-off-by: Ranjani Vaidyanathan <ra5478@freescale.com>
11 years agoENGR00209710 MX6 IPUv3 fb:Show display dev name property
Liu Ying [Thu, 17 May 2012 06:56:24 +0000 (14:56 +0800)]
ENGR00209710 MX6 IPUv3 fb:Show display dev name property

1) Show display device name property:
   HDMI monitor - hdmi
   DVI monitor - dvi
   VGA monitor - vga
   dumb LCD panel - lcd
   LVDS panel - ldb
   MIPI LCD panel - mipi_dsi
   TVout - tve
2) Make fsl_disp_property device attribution be static.
3) Support overlay fb fsl_disp_property and
   fsl_disp_dev_property device attributions.
4) Remove fsl_disp_property and fsl_disp_dev_property
   device attributions when removing the driver.

Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
11 years agoENGR00209633-2 I2C mx6sl pfuze: add pfuze board support for mx6sl arm2
Robin Gong [Thu, 17 May 2012 06:19:01 +0000 (14:19 +0800)]
ENGR00209633-2 I2C mx6sl pfuze: add pfuze board support for mx6sl arm2

1.add pmic board support file
2.add i2c support on board-mx6sl_arm2.c
3.update IOMUX setting for I2C pin for mx6sl arm2 board
Signed-off-by: Robin Gong <B38343@freescale.com>
11 years agoENGR00209633-1 pfuze:pfuze driver support to mx6sl_arm2 which not use interrupt
Robin Gong [Thu, 17 May 2012 04:29:38 +0000 (12:29 +0800)]
ENGR00209633-1 pfuze:pfuze driver support to mx6sl_arm2 which not use interrupt

because mx6sl arm2 board didn't use pfuse INT, pfuze driver should judge if no
interrupt.
Signed-off-by: Robin Gong <B38343@freescale.com>
11 years agoENGR00209529 WM8962: registry detect pin handler more late
Gary Zhang [Wed, 16 May 2012 09:32:13 +0000 (17:32 +0800)]
ENGR00209529 WM8962: registry detect pin handler more late

move hp/mic detect pin handler from imx_wm8962_probe()
to imx_wm8962_init().

Signed-off-by: Gary Zhang <b13634@freescale.com>
11 years agoENGR00209570 - PxP : Add Y4 output format.
Fugang Duan [Wed, 16 May 2012 11:50:14 +0000 (19:50 +0800)]
ENGR00209570 - PxP : Add Y4 output format.

- Add Y4 output format for SPDC.

Signed-off-by: Fugang Duan <B38611@freescale.com>
11 years agoENGR00209480-6 mx6sl_usb : fix build error
Tony LIU [Thu, 17 May 2012 01:46:38 +0000 (09:46 +0800)]
ENGR00209480-6 mx6sl_usb : fix build error

fix build error

Signed-off-by: Tony LIU <junjie.liu@freescale.com>
11 years agoENGR00209620 MX6-Disable PU Brown out detection in low power mode.
Ranjani Vaidyanathan [Wed, 16 May 2012 17:24:28 +0000 (12:24 -0500)]
ENGR00209620 MX6-Disable PU Brown out detection in low power mode.

Ensure that the brown out detection of the PU regulator is
disabled before the regulator itself is disabled.
Keeping the detection enabled will generate an interrupt that
is not currently being handled in the BSP when the regulator is
disabled since its voltage is dropped to 0V. This will prevent
the system from entering complete WAIT state thus increasing the
power in the low power idle/audio usecase.

Signed-off-by: Ranjani Vaidyanathan <ra5478@freescale.com>
11 years agoENGR00209384-3 mxc_spdif: capture playback stop function
Adrian Alonso [Mon, 14 May 2012 23:54:14 +0000 (18:54 -0500)]
ENGR00209384-3 mxc_spdif: capture playback stop function

* Add capture/playback stop function
  Stops capture/playback process

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00209384-2 mxc_spdif: capture playback start function
Adrian Alonso [Mon, 14 May 2012 23:50:53 +0000 (18:50 -0500)]
ENGR00209384-2 mxc_spdif: capture playback start function

* Add start capture/playback function
  Start sequence for capturing/playing audio data.
* Remove caprure/playback prepere function hwd initialization
  handled by trigger function when user/app starts capture/play
  process.

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00209384-1 mxc_spdif: add trigger handler function
Adrian Alonso [Mon, 14 May 2012 23:48:27 +0000 (18:48 -0500)]
ENGR00209384-1 mxc_spdif: add trigger handler function

* Add trigger function in order to handle user
  space events start/stop/pause playback/capture

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoSAUCE remove unnecessary suspend/resume functions
Adrian Alonso [Mon, 14 May 2012 23:43:37 +0000 (18:43 -0500)]
SAUCE remove unnecessary suspend/resume functions

BugLink: http://bugs.launchpad.net/bugs/882723
Disabling/re-enabling clocks is not necessary as it's done in *_startup()
and *_shutdown() functions, and shall be performed during suspend/resume.

This is causing warnings of un-matched clk_enable()/clk_disable()

Rework patch for imx_3.0.15 code base

Signed-off-by: Eric Miao <eric.miao@linaro.org>
Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00209520-03 - FEC : Add support for MX6SL MSL.
Fugang Duan [Wed, 16 May 2012 09:57:53 +0000 (17:57 +0800)]
ENGR00209520-03 - FEC : Add support for MX6SL MSL.

- Modify the the platform macro define like as cpu_is_xxx()
  for supporting Mergrez chip.
- Config MIIGSK for FEC IP to enable RMII mode. MX25,MX53,
  and MX6Sololite use FEC IP, which need to config the MIIGSK
  registers memory map for RMII and MII.
- Correct device id_table entry name for differnt IP.
- Rewrite FEC MAC address by net_device address when reset FEC,
  which can avoid invalid MAC address to result in FEC cannot
  work.

Signed-off-by: Fugang Duan <B38611@freescale.com>
11 years agoENGR00209520-02 - MX6SL MSL : Adjust FEC clock name.
Fugang Duan [Wed, 16 May 2012 09:51:51 +0000 (17:51 +0800)]
ENGR00209520-02 - MX6SL MSL : Adjust FEC clock name.

- Ethernet clock source name is differentiated by IP name.
  FEC IP clock name is "FEC"; ENET IP clock name is "enet".

Signed-off-by: Fugang Duan <B38611@freescale.com>
11 years agoENGR00209520-01 - MX6SL MSL : Add FEC support
Fugang Duan [Wed, 16 May 2012 10:27:09 +0000 (18:27 +0800)]
ENGR00209520-01 - MX6SL MSL : Add FEC support

Add FEC support for mx6-sololite:

- Add FEC pad iomux setting.
- Power on phy and init fec.
- Add devname to distinguish different IP.
- Use ANATOP as FEC clock source in default, remove redundant
  config "FEC_CLOCK_FROM_ANATOP".

Signed-off-by: Fugang Duan <B38611@freescale.com>
11 years agoENGR00171114 flexcan: enable can2 remote wakeup for mx6q
Dong Aisheng [Wed, 16 May 2012 08:59:03 +0000 (16:59 +0800)]
ENGR00171114 flexcan: enable can2 remote wakeup for mx6q

The root cause is missed to set CAN2_STOP_REQ in iomuxc
group register which is used to support can wakeup feature.

Signed-off-by: Dong Aisheng <b29396@freescale.com>
11 years agoENGR00169375 IPU: Remove the warning message when doing 8:1 downsize
Wayne Zou [Wed, 16 May 2012 07:43:12 +0000 (15:43 +0800)]
ENGR00169375 IPU: Remove the warning message when doing 8:1 downsize

Remove Overflow message on resize coeff when resize from 1280*720 to 160*120
The IPU IC can not do exactly 8:1 downsize, but can be very close to 8:1
downsize.

Signed-off-by: Wayne Zou <b36644@freescale.com>
11 years agoENGR00209480-5 mx6sl_usb : gadget: change the OTG1_ID pad ctrl
Tony LIU [Mon, 14 May 2012 07:33:13 +0000 (15:33 +0800)]
ENGR00209480-5 mx6sl_usb : gadget: change the OTG1_ID pad ctrl

- add pull up ctrl to make the ID to be high by default

Signed-off-by: Tony LIU <junjie.liu@freescale.com>
11 years agoENGR00209480-4 mx6sl_usb remove the sw workaround to verify IC fix
Tony LIU [Thu, 3 May 2012 02:00:29 +0000 (10:00 +0800)]
ENGR00209480-4 mx6sl_usb remove the sw workaround to verify IC fix

- add a function to tell if sw walkaround is needed
  for the IC bug

Signed-off-by: Tony LIU <junjie.liu@freescale.com>
11 years agoENGR00209480-3 mx6sl_usb: fix too many wakeup interrupt issue
Tony LIU [Wed, 2 May 2012 06:58:42 +0000 (14:58 +0800)]
ENGR00209480-3 mx6sl_usb: fix too many wakeup interrupt issue

modify usb wakeup interrupt number for mx6sl

Signed-off-by: Tony LIU <junjie.liu@freescale.com>
11 years agoENGR00209480-2 mx6sl_usb:change usb irq number for mx6sl
Tony LIU [Sat, 28 Apr 2012 13:05:56 +0000 (21:05 +0800)]
ENGR00209480-2 mx6sl_usb:change usb irq number for mx6sl

- in mx6sl RM, the irq of usb h1(usb otg2) is 72, but
  in fact, it should be 74, we need change the irq special
  for mx6sl

Signed-off-by: Tony LIU <junjie.liu@freescale.com>
11 years agoENGR00209480-1 mx6sl_usb bring up
Tony LIU [Sat, 28 Apr 2012 02:47:21 +0000 (10:47 +0800)]
ENGR00209480-1 mx6sl_usb bring up

- add usb otg power gpio control
- change cpu_is_mx6x() to cpu_is_mx6
- enable usb hsic support

Signed-off-by: Tony LIU <junjie.liu@freescale.com>
11 years agoENGR00209483 [imx6sl]: add USDHC support
Ryan QIAN [Wed, 16 May 2012 07:01:47 +0000 (15:01 +0800)]
ENGR00209483 [imx6sl]: add USDHC support

- add SD1, SD2 and SD3 support to mx6sl.

Signed-off-by: Ryan QIAN <b32804@freescale.com>
11 years agoENGR00209462 Thermal: print tempreture for debug uasge
Lin Fuzhen [Wed, 16 May 2012 05:11:02 +0000 (13:11 +0800)]
ENGR00209462 Thermal: print tempreture for debug uasge

Add debugmask to control the cooling device tempreture being printed or not

To enable the thermal tempreture printing by below command
echo 0xf > /sys/module/thermal/parameters/debug_mask

Signed-off-by: Lin Fuzhen <fuzhen.lin@freescale.com>
11 years agoENGR00209454 imx6sl: fix build failure and clear warnning message.
Zhang Jiejing [Wed, 16 May 2012 03:20:00 +0000 (11:20 +0800)]
ENGR00209454 imx6sl: fix build failure and clear warnning message.

fix build failure invoke by reboot function patch,
and refine the code to clear the warnning message.

Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
11 years agoENGR00182786 mx6q sabresd: Add power/reset function for 3G modem
Xinyu Chen [Tue, 15 May 2012 09:16:33 +0000 (17:16 +0800)]
ENGR00182786 mx6q sabresd: Add power/reset function for 3G modem

Add PCIE 3V3 power up/down routing if we do not have
pcie driver selected. And power up 3V3 in board init.
As the reset function of the hw board cannot reset the
modem power. So on kernel boot up, we must make sure
the 3g modem is reset correctly by gpio reset.

Signed-off-by: guoyin.chen <guoyin.chen@freescale.com>
Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
11 years agoENGR00182324-7 - MX6SL MSL: Add imx6s_defconfig
Jason Liu [Mon, 14 May 2012 15:04:59 +0000 (23:04 +0800)]
ENGR00182324-7 - MX6SL MSL: Add imx6s_defconfig

Add the imx6s_deconfig support

Signed-off-by: Jason Liu <r64343@freescale.com>
Signed-off-by: Robby Cai <r63905@freescale.com>
11 years agoENGR00182324-6 - MX6SL MSL: Add basic board file support
Jason Liu [Mon, 14 May 2012 14:36:16 +0000 (22:36 +0800)]
ENGR00182324-6 - MX6SL MSL: Add basic board file support

Add basic board file support for the i.MX 6SoloLite ARM2-based
Validation board.

Signed-off-by: Jason Liu <r64343@freescale.com>
Signed-off-by: Robby Cai <r63905@freescale.com>
11 years agoENGR00182324-5 - MX6SL MSL: Add GPIO support
Jason Liu [Mon, 14 May 2012 13:45:38 +0000 (21:45 +0800)]
ENGR00182324-5 - MX6SL MSL: Add GPIO support

Add GPIO definitions for the i.MX 6SoloLite SoC.

Signed-off-by: Jason Liu <r64343@freescale.com>
11 years agoENGR00182324-4 - MX6SL MSL: Enable L2 cache as OCRAM functionality
Jason Liu [Mon, 14 May 2012 13:41:05 +0000 (21:41 +0800)]
ENGR00182324-4 - MX6SL MSL: Enable L2 cache as OCRAM functionality

L2 cache can be configured to serve as OCRAM.  This patch adds
code to check this configuration, and reset it to L2 cache function
before enabling the L2 cache.

Signed-off-by: Jason Liu <r64343@freescale.com>
11 years agoENGR00182324-3 - MX6SL MSL: Add clock support for i.MX 6SoloLite
Jason Liu [Mon, 14 May 2012 13:15:57 +0000 (21:15 +0800)]
ENGR00182324-3 - MX6SL MSL: Add clock support for i.MX 6SoloLite

Add clock support for i.MX 6SoloLite.  A new clock file has been created
to reflect the substantial set of changes in the clocks used between
6SoloLite and other 6 series SoCs.

Signed-off-by: Jason Liu <r64343@freescale.com>
Signed-off-by: Robby Cai <r63905@freescale.com>
11 years agoENGR00182324-2 - MX6SL MSL: Add Support for i.MX6SoloLite SoC revision
Jason Liu [Mon, 14 May 2012 13:11:40 +0000 (21:11 +0800)]
ENGR00182324-2 - MX6SL MSL: Add Support for i.MX6SoloLite SoC revision

Add i.MX 6SoloLite SoC revision support

Signed-off-by: Jason Liu <r64343@freescale.com>
11 years agoENGR00182324-1 - MX6SL MSL: Add Memory/IRQ/IOMUX support for i.MX 6SoloLite
Jason Liu [Mon, 14 May 2012 07:49:19 +0000 (15:49 +0800)]
ENGR00182324-1 - MX6SL MSL: Add Memory/IRQ/IOMUX support for i.MX 6SoloLite

Add support for the Memory map, IRQ, and IOMUX layout of the i.MX
6SoloLite SoC.

Signed-off-by: Robby Cai <R63905@freescale.com>
Signed-off-by: Jason Liu <r64343@freescale.com>
11 years agoENGR00178459 mxc_spdif: fix read access for debug info
Adrian Alonso [Mon, 14 May 2012 23:02:35 +0000 (18:02 -0500)]
ENGR00178459 mxc_spdif: fix read access for debug info

* Fix read register access for debug info
* Read from spdif registers with a disabled
  spdif core clock leads to kernel hang.
* Avoid it by enabling/diabling core clk.

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00178459 mxc_spdif: clk_enable return checks
Adrian Alonso [Fri, 11 May 2012 17:17:44 +0000 (12:17 -0500)]
ENGR00178459 mxc_spdif: clk_enable return checks

* Add clk_enable return checks, if clocks aren't enabled
  writting/reading from spdif register will cause
  system to become unresponsive.
* Remove spdif_audio_clk enable/disable calls
  this clock is not assigned and is reposible for making
  the system unresposive.

Signed-off-by: Adrian Alonso <aalonso@freescale.com>
11 years agoENGR00209059-2 mx6: config: add mfgtool reboot function in defconfig.
Zhang Jiejing [Mon, 14 May 2012 07:18:36 +0000 (15:18 +0800)]
ENGR00209059-2 mx6: config: add mfgtool reboot function in defconfig.

add reboot to mfgtool download mode by default.
usage:
'reboot download'

Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
11 years agoENGR00209059-1 MX6: reboot: add reboot to special function
Zhang Jiejing [Mon, 14 May 2012 06:22:11 +0000 (14:22 +0800)]
ENGR00209059-1 MX6: reboot: add reboot to special function

add reboot to special function like mfg download mode,
android fastboot, recovery mode.

It use ASRC register to enter mfgtool download mode and other function.
For android fastboot, recovery function it use ASRC_GPR10 bit 7-8 bit,
it will checked in uboot and clear after read.

Add this feature to improve recovery function, to avoid infinit looping
enter recovery mode if some thing goes wrong in fastboot mode.
Also add convient function for developer.

usage:

download mode: "reboot download"
fastboot     : "reboot fastboot"
recovery mode: "reboot recovery"

Signed-off-by: Zhang Jiejing <jiejing.zhang@freescale.com>
11 years agoENGR00176278 mx6: make local timer work with WAIT mode
Xinyu Chen [Wed, 7 Mar 2012 02:17:21 +0000 (10:17 +0800)]
ENGR00176278 mx6: make local timer work with WAIT mode

As mx6q soc use one clock to provide for cpu and local timer,
the local timers will be stopped when enter wait mode.
This causes system hang when enter wait mode with local timer
enabled. So we should switch the clock event to GPT
broadcast clock event before entering wait mode, and disable
local timers. Todo this, following changes made:
* In arch_idle(), we check if the GPT broadcast clock
  event is switched to one shot mode. If the kernel clocksource
  is switched from jiffies one to GPT, then we can use GPT
  as broadcast event. And switch from local timer to GPT broadcast
  event before entering mx6q_wait. Otherwise, kernel will hange
  if the SW jiffies clock source is used.
  We call clockevents_notify to switch clock source.
* Remove the enable_wait_mode check in local timer setup.
* Always return 0 in GPT v2 timer's set_next_event routing.
  All the GPTs are running in free run mode as what driver did.
  So we should allow the GPT CNT register roll over to 0 when it
  reaches 0xFFFFFFFF. And the next event written to compare register
  can less than the current value in CNT.
  If we refused to do roll over settings, the kernel will continues
  to set_next_event to GPT when the next event is far away and
  we return negative value. This is happend when one CPU is in idle
  and no timewheel is being expired in short time.

Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
11 years agoENGR00176154 mx6q sabresd: change the position angle of board and LVDS
Xinyu Chen [Thu, 15 Mar 2012 07:46:02 +0000 (15:46 +0800)]
ENGR00176154 mx6q sabresd: change the position angle of board and LVDS

The LVDS display direction should be aligned with camera sensor.
So we rotate it with 180 degree.

Signed-off-by: Xinyu Chen <xinyu.chen@freescale.com>
11 years agoENGR00178933-2 [MX6] USB DOC: Add USB auto remote wake up doc
make shi [Thu, 10 May 2012 01:45:12 +0000 (09:45 +0800)]
ENGR00178933-2 [MX6] USB DOC: Add USB auto remote wake up doc

Add USB auto remote wake up unit test method to udc doc.

Signed-off-by: make shi <b15407@freescale.com>
11 years agoENGR00178933-1 [MX6] USB zero gadget: support USB auto remote wake up test
make shi [Tue, 8 May 2012 06:11:07 +0000 (14:11 +0800)]
ENGR00178933-1 [MX6] USB zero gadget: support USB auto remote wake up test

- add some parameters in zero.c to support USB auto remote wake up test
- add zero_disconnect function to clear the test result

Signed-off-by: make shi <b15407@freescale.com>
11 years agoENGR00209022 Update gpu clock management code
Loren Huang [Fri, 11 May 2012 02:20:56 +0000 (10:20 +0800)]
ENGR00209022 Update gpu clock management code

-This patch from vivante.They need to bypass the
reference count in clock management code as they
may touch clock while they just want to change
power state.

Signed-off-by: Loren Huang <b02279@freescale.com>
Acked-by: Lily Zhang