Age | Commit message (Collapse) | Author |
|
Change to discharge both dp and dm
Signed-off-by: Peter Chen <peter.chen@freescale.com>
|
|
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>
|
|
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>
|
|
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>
(cherry picked from commit 5c2d296401e2ded0cd36f9e651871c6454049de1)
|
|
Change GPU2D core clock to 480M and use PLL3 as parent
Signed-off-by: Larry Li <b20787@freescale.com>
|
|
None of the workarounds implemented in SW provide a stable solution for
the WAIT mode issue.
For 4.1 release, WAIT mode is disabled by default.
Signed-off-by: Ranjani Vaidyanathan <ra5478@freescale.com>
|
|
- 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>
|
|
* Sabreauto platform only supports spdif in (Rx)
Remove unused Tx clock settings
Signed-off-by: Adrian Alonso <aalonso@freescale.com>
|
|
System would be halt, when the default value CTRL_2 is set to
high, change the default value to low.
root cause: System 3V3 would be dragged down to 1.5V for about 4ms.
Signed-off-by: Richard Zhu <r65037@freescale.com>
|
|
One type error on ov5640_mipi IOMUX configure, fix it.
Signed-off-by: Even Xu <b21019@freescale.com>
|
|
arch/arm/mach-mx6/clock.c:1749: warning: unused variable 'reg';
Signed-off-by: Anson Huang <b20788@freescale.com>
|
|
remove the workaround
For TO1.0: bit16 of GPR11 must be set to enable perfmon
For TO1.1 and later: bit0 of GPR11 is enable bit for perfmon.
set 1/0 to enable/disable perfmon
add workaround for mx6dl
Signed-off-by: Tony Lin <tony.lin@freescale.com>
|
|
- Add cfg80211, Atheros Wifi driver into default kernel config.
Signed-off-by: Ryan QIAN <b32804@freescale.com>
|
|
Add PCIE RC driver on MX6 platforms.
Based on iwl4965agn pcie wifi device, verified the following
features.
* Link up is stable
* map the CFG, IO and MEM spaces, and CFG/MEM spaces can be accessed
Signed-off-by: Richard Zhu <r65037@freescale.com>
|
|
This reverts commit 4f025d73de4a55077691096eacf60f90c3b9e7af.
Signed-off-by: Peter Chen <peter.chen@freescale.com>
|
|
Change CPU voltages (0.95V and 0.85V) to 1V
CPU voltage should be above 1.0V for all CPU frequency
since L1 Cache power is connected to VDDARM internally.
Signed-off-by: Nancy Chen <Nancy.Chen@freescale.com>
|
|
on i.mx6dl, DDR clock is sourcing from pll2_mfd_400M, so, we need
set DDR/periph_clk parent to pll2_mfd_400M during clock init, which
will setup the clock usecount of pll2_mfd_400M correctly, otherwise,
when all the child device with clock source from pll2_mfd_400M turn
off, the pll2_mfd_400M will turns off automaticly, which will cause
system hang due to DDR clock is off when code is runing on it.
Signed-off-by: Jason Liu <r64343@freescale.com>
|
|
- change the pad setting
Signed-off-by: Tony LIU <junjie.liu@freescale.com>
|
|
MSL part
- For HSIC, not connect nor disconnect, then WKCN,
WKDC must not be set during suspend
- For HSIC, must set bit 21 in host control registry
after device connected to host controller
- USB PHY 480M clock output must turn on to avoid about
10ms delay before sending out resume signal
- HW_ANA_MISC clkgate delay must be set to 2 or 3 to
avoid 24M OSCI not stable issue
Signed-off-by: Tony LIU <junjie.liu@freescale.com>
|
|
Add functionality to parse Audio Data Blocks from EDID data to
find out what modes of LPCM are suppored by the HDMI sink device.
The parsed settings are saved in the hdmi mfd. The HDMI audio driver
will check the settings when the audio stream is opened and will
then apply appropriate constraints.
If we are unable to read from the EDID, then we default to supporting
Basic Audio as defined by the HDMI specification (stereo, 16 bit,
32KHz, 44.1KHz, 48KHz PCM).
Signed-off-by: Alan Tull <r80115@freescale.com>
|
|
Enable CONFIG_COMPACTION on imx6_defconfig to reduce
the external memory fragementation
Signed-off-by: Jason Liu <r64343@freescale.com>
|
|
After upgrade kernel to 3.0.15, the defconfig also need
be updated to sync with the kernel version change
Signed-off-by: Jason Liu <r64343@freescale.com>
|
|
Add camera power down function and change default camera to ov5642
for parallel interface camera
Signed-off-by: Yuxi Sun <b36102@freescale.com>
|
|
enable the BBT support to ARM2 board.
Signed-off-by: Huang Shijie <b32955@freescale.com>
|
|
- Fix GPIO_16 IOMUX config.
- Config GPIO_16 pad to ENET_ANATOP_ETHERNET_REF_OUT.
- IEEE-1588 ts_clk, S/PDIF in and i2c3 are mutually exclusive,
because all of them use GPIO_16, so it only for one function
work at a moment.
- Test result:
Enet work fine at 100/1000Mbps in TO1.1.
IEEE 1588 timestamp is convergent.
Signed-off-by: Fugang Duan <B38611@freescale.com>
|
|
add __init to the gpmi_nand_platform_init() to make this
function store in the init.text section.
Signed-off-by: Huang Shijie <b32955@freescale.com>
|
|
i.mx6dl and i.mx6q share the same ARM2 board due to the pin-pin
compatible between them.
Signed-off-by: Jason Liu <r64343@freescale.com>
|
|
add i.mx6dl support for sdma
Signed-off-by: Jason Liu <r64343@freescale.com>
|
|
add the i.mx6dl support for gpio
Signed-off-by: Jason Liu <r64343@freescale.com>
|
|
MMDC clock is from pll2_pfd_400M, thus we can't turn it off
Signed-off-by: Jason Liu <r64343@freescale.com>
|
|
externally, i.mx6dl is pin-pin compatible with i.mx6dq
internally, i.mx6dl is totally different with iomux setting
Checkpatch will throw some warnings in iomux-mx6dl.h file as:
WARNING: line over 80 characters
But for the readable, I intend not to fix these warnings, and linux
upstream also has so many such kind of cases
Signed-off-by: Jason Liu <r64343@freescale.com>
|
|
In order to support one image for i.mx6q and i.mx6dl, we introduce
the below functions by diff the value reading from ANATOP ID register.
cpu_is_mx6q() and cpu_is_mx6dl()
The layout for the register defines:
Major Minor
i.MX6Q1.1: 6300 01
i.MX6Q1.0: 6300 00
i.MX6DL1.0: 6100 00
For the common bits shared across all i.mx6 ports, we can use:
cpu_is_mx6() for it.
Signed-off-by: Jason Liu <r64343@freescale.com>
|
|
i.mx6dl shares with almost the same memory layout with i.mx6d/q
except it adds some new fetures such as pxp/epdc etc.
Signed-off-by: Jason Liu <r64343@freescale.com>
|
|
This is the cosmetic patch for the i.mx6 and make
the prepartion for the coming i.mx6dl support.
Why cosmetic? It's due to the code is a little bit
mess and want to make it clean and clear.
Signed-off-by: Jason Liu <r64343@freescale.com>
|
|
rename the gpmi-nfc to gpmi-nand.
Signed-off-by: Huang Shijie <b32955@freescale.com>
|
|
add mxs_reset_block() for mx6q.
In order to keep the same code as the community, I reduce the
parameters to one.
Signed-off-by: Huang Shijie <b32955@freescale.com>
|
|
Move the header to a more common place.
The mxs dma engine is not only used in mx23/mx28, but also used
in mx50/mx6q. It will also be used in the future chips.
rename it to mxs-dma.h
Acked-by: Lily Zhang <r58066@freescale.com>
Signed-off-by: Huang Shijie <b32955@freescale.com>
|
|
fix build error on mx5 platforms
Signed-off-by: Tony Lin <tony.lin@freescale.com>
|
|
the common API is needed by drivers to distinguish TO version
Signed-off-by: Tony Lin <tony.lin@freescale.com>
|
|
Add touch support.
Signed-off-by: Frank Li <Frank.Li@freescale.com>
|
|
It is the fix for Design PDM TKT064178, IC has already verified it,
and no more power consumption for setting/clear this bit.
With this bit, the power of pll3 can be off even the power bit for pll3
is on. In order to support USB wakeup, the power bit for pll3 should
be always on, and the power of pll3 is controller by USB hardware and
this new added bit at runtime.
Signed-off-by: Peter Chen <peter.chen@freescale.com>
|
|
On MX6Q TO1.1, MX6DL/S and MX6Solo, GPT can be sourced
from a constant source (better for frequency scaling).
Currently we set the GPT clock to 3MHz (24MHz div by 8).
Signed-off-by: Ranjani Vaidyanathan <ra5478@freescale.com>
|
|
On MX6Q TO1.1, MX6DL/S and MX6Solo, GPT can be sourced
from a constant source (better for frequency scaling).
Currently we set the GPT clock to 3MHz (24MHz div by 8).
Signed-off-by: Ranjani Vaidyanathan <ra5478@freescale.com>
|
|
1. Need to follow right programming model for wb_per_at_lpm
,zeroed wb_count each time exit from DSM and set it before
entering DSM;
2. For TO1.1, need to set fet_odrive for better power gate.
Signed-off-by: Anson Huang <b20788@freescale.com>
|
|
For ARM2 and Sabreauto, change TTY0 to TTY3 (which is physical UART4)
For SabreSD, Change TTY3 to TTY0 (which is physical UART1)
Mapping Changed as the following
Physical Virtual
-------- --------
1 0
2 1
3 2
4 3
Signed-off-by: Eric Sun <jian.sun@freescale.com>
|
|
Enable AUX 5V when system bootup.
Enable PWM0 for LVDS backlight.
Signed-off-by: Sandor Yu <R01008@freescale.com>
|
|
On TO1.1, there is no such issue now, so remove the workaround,
as this is a very very low possibility to reproduce this issue, and the
workaround has very complicated logic, it is hard and non-necessary
to add SOC version check, so just remove it.
Signed-off-by: Anson Huang <b20788@freescale.com>
|
|
There is small window where an interrupt can occur when the SOC is
in the process of entering WAIT mode. The ARM core responds to this
interrupt and can access the internal memories when their clocks are
disabled.
To avoid crashes generated due to this, WFI code should be executed
from non-cacheable IRAM and enough delay should added after the
WFI so that accesses to memories are prevented.
This workaround assumes that all interrupts are routed to CPU0 only.
This workaround is applicable to iMX6DL/Solo also.
Signed-off-by: Ranjani Vaidyanathan <ra5478@freescale.com>
|
|
At former code, it uses portsc.fpr to indicate if the host sends
resume signal to device, but it has some limitations that if the code
can't be executed before the resume signal finishes, the portsc.fpr
will be cleared automatically.
Now, it uses usbsts.pci to judge host resume signal, this bit
will not be cleared before the non-wakeup interrupt handler is called,
and the wakeup code is executed before non-wakeup interrupt handler.
Signed-off-by: Peter Chen <peter.chen@freescale.com>
|
|
add sgtl5000 platform data.
VPC board is used to extend sgtl5000 hardware.
Signed-off-by: Gary Zhang <b13634@freescale.com>
|