| Commit message (Collapse) | Author | Age | Lines |
|
|
|
|
|
|
|
|
|
|
| |
1. There is conflict when building secure boot, because some common
codes for MPC are included by using same configuration. So modify the
makefile to get rid of them.
2. The 6UL arch config is missed in hab.h. Fix this issue by using
the CONFIG_ROM_UNIFIED_SECTIONS.
Signed-off-by: Ye.Li <B37916@freescale.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There is a hole in shadow registers address map of size 0x100
between bank 5 and bank 6 on iMX6QP, iMX6DQ, iMX6SDL, iMX6SX and iMX6UL.
Bank 5 ends at 0x6F0 and Bank 6 starts at 0x800. When reading the fuses,
we should account for this hole in address space.
Similar hole exists between bank 14 and bank 15 of size
0x80 on iMX6QP, iMX6DQ, iMX6SDL and iMX6SX.
Note: iMX6SL has only 0-7 banks and there is no hole.
Note: iMX6UL doesn't have this one.
When reading, we use register offset, so need to account for holes
to get the correct address.
When writing, we use bank/word index, there is no need to account
for holes, always use bank/word index from fuse map.
Signed-off-by: Nitin Garg <nitin.garg@freescale.com>
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
| |
Add SION bit for all i2c pin mux settings.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch is to support Bus Encryption Engine(BEE) for i.MX 6UL.
Supported feature:
1. SNVS key and soft key
2. CTR and ECB mode
3. Specify address region to bee.
Two commands are included:
bee init [key] [mode] [start] [end] - BEE block initial
"Example: bee init 1 1 0x80000000 0x80010000\n"
bee test [region]
"Example: bee test 1\n"
Mapping:
[0x10000000 - (0x10000000 + size - 1)] : [start - (start + size - 1)]
[0x30000000 - (0x30000000 + IRAM_SIZE - 1)] : [IRAM_BASE_ADDR -
(IRAM_BASE_ADDR + IRAM_SIZE - 1)]
Whatever start is, start - (start + size -1) will be fixed mapping to
0x10000000 - (0x10000000 + size - 1)
Since default AES region's protected size is SZ_512M, so
on mx6ul evk board, you can not simply run 'bee init', it will
overlap with uboot execution environment, you can use
'bee init 0 0 0x80000000 0x81000000'.
If want to use bee, Need to define CONFIG_CMD_BEE in board configuration
header file, since CONFIG_CMD_BEE default is not enabled.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On MX7D, boot rom can provide some boot information such as boot device,
arm freq, axi freq, etc. (see the structure below)
Offset Byte4 | Byte3 | Byte2 | Byte1
0x0 Reserved | Boot Device Type | Boot Device Instance | Reserved
0x4 ARM core frequency(in Hz)
0x8 AXI bus frequency(in Hz)
0x0C DDR frequency(in Hz)
0x10 GPT1 input clock frequency(in Hz)
0x14 Reserved
0x18
0x1C
The boot information can be accessed by get the pointer at 0x1E8. This patch
changes the u-boot to use the new approach. When manufacture boot, the info
recorded is the actual SD port, not the failed device.
Signed-off-by: Ye.Li <B37916@freescale.com>
|
|
|
|
|
|
|
|
| |
Change MXC_CCM_CCGR6_I2C4_xx to MXC_CCM_CCGR6_I2C4_SERIAL_xx
Remove duplicated mxs_set_vadcclk
Correct enable_pll_video usage
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
| |
PAD_CTL_SPEED_LOW for mx6ul same with mx6sx.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
add i.MX6UL clock related settings/macros/apis
When using TFT43AB, its pixel size is 480x272 which needs a
slow pix clock. Without apply the test_div in PLL video, we can't
get the pix clock in the rate.
So change the LCDIF clock calculation to use the test_div.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Signed-off-by: Ye.Li <B37916@freescale.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since the system counter driver will also be used by mx6ul, move
this timer driver to imx-common and rename it as syscounter.c
For mx6ul and mx7, configurations are used for choose the GPT timer
or system counter timer (default).
GPT timer: CONFIG_GPT_TIMER
System counter timer: CONFIG_SYSCOUNTER_TIMER
Signed-off-by: Ye.Li <B37916@freescale.com>
|
|
|
|
|
|
| |
Update imx registers base address for i.MX6UL
Signed-off-by: Ye.Li <B37916@freescale.com>
|
|
|
|
|
|
|
| |
Add i.MX6UL pins IOMUX file which defines the IOMUX settings for
choose.
Signed-off-by: Ye.Li <B37916@freescale.com>
|
|
|
|
|
|
|
|
|
| |
Add MXC_CPU_MX6UL for i.MX6UL CPU type which is got at runtime.
The 0x64 is defined as i.MX6Ul CPU type value in RM, but the value
has been occupied by i.MX6D as a dummy CPU type.
So we also need change i.MX6D to a invalid value 0x67.
Signed-off-by: Ye.Li <B37916@freescale.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
We should align MXS_DMA_ALIGNMENT with ARCH_DMA_MINALIGN, otherwise
we may encounter errors,
"
NAND: ERROR: v7_dcache_inval_range - start address is not aligned - 0xbdf1d1a0
ERROR: v7_dcache_inval_range - stop address is not aligned - 0xbdf1f4a0
ERROR: v7_dcache_inval_range - start address is not aligned - 0xbdf1d1a0
"
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
| |
Merge hab_caam_clock_enable and hab_caam_clock_disable into
one function
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
| |
Add SION for i2c pin mux, otherwise will cause error.
Found this problem on mx6sxsabreauto board.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
| |
is_soc_rev should be casted to signed int, otherwise
may incur errors when detecting cpu types.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
|
| |
* Extend IOMUXC-LPSR IO pads configuration options
* Add alternative configuration modes for IO pads from
IOMUXC-LPSR
Signed-off-by: Adrian Alonso <aalonso@freescale.com>
(cherry picked from commit ca20aa7ca0c21b9766e0c34cfec275aaab0f11e7)
|
|
|
|
|
|
|
|
|
|
|
| |
* Add IMX7D iomuxc-lpsr I2C1 and I2C2 pad configuration settings
* Input select offset input_sel_ofs = 0x05xx + IOMUX_LPSR_SEL_INPUT_OFS
allows to access register in iomuxc controller for imx_iomux_v3_setup_pad
I2C daisy chaing configuration.
Signed-off-by: Adrian Alonso <aalonso@freescale.com>
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit bca65c5ee1099f99b880be325c9fa0a568ab88de)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* For IOMUXC LPSR pads when daisy chain register needs to be set the
result offsets for sel_input register is incorrect as base address is
0x302C0000 and the passed offset does not resolve to the intended input
sel pad register; input sel base offset should start in 0x30330000.
* Add an addiotional fixed offset of 0x70000 to address the
input sel offset:
INPUT_SEL = 0x302C0000 + 0x70000 + sel_input_ofs.
Signed-off-by: Adrian Alonso <aalonso@freescale.com>
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit 5d4612613eb2e85f1929d8cf5cb6aac6ba9e5fd7)
|
|
|
|
|
|
|
|
| |
Incorrect hab_rvt addresses were used for getting HAB functions.
Need to change to addresses in unified section.
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit 5ae1cb9d8e7cd7babd1d7ef7f2303664a4e15c26)
|
|
|
|
|
|
|
|
|
|
|
|
| |
Apply errata based on PL310 version instead of compile
time. Also set Prefetch offset to 15, since it improves
memcpy performance by 35%. Don't enable Incr double
Linefill enable since it adversely affects memcpy
performance by about 32MB/s and reads by 90MB/s. Tested
with 4K to 16MB sized src and dst aligned buffer.
Signed-off-by: Nitin Garg <nitin.garg@freescale.com>
(cherry picked from commit 31751fa9cf29ef4056f49fe06a54700a89c9bdc5)
|
|
|
|
|
|
|
| |
Ungate the EPDC clock at system up if the EPDC is enabled
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit f215632cb25d1076ab5c5465efdfad2212010d8d)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since i.MX6QP changes some CCM registers, so modify the clocks settings to
follow the hardware changes.
A new CONFIG_MX6QP is introduced here and is used for the CCM difference.
At default CONFIG_MX6Q is enabled along with the CONFIG_MX6QP.
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit 5e4d1537ce9a476c8404126350f05d8976c5aa35)
Conflicts:
arch/arm/cpu/armv7/mx6/clock.c
arch/arm/include/asm/arch-mx6/crm_regs.h
include/configs/mx6_common.h
|
|
|
|
|
|
|
|
|
| |
Add new cpu type for i.MX6DQP and providing a dynamical
detecting function.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit ccf3b130d71cf3dd9a97d3bb424931bf6bd7e8c0)
|
|
|
|
|
|
|
|
| |
Update GPMI NAND driver and BCH head file with definitions for CONFIG_MX7
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit 9c50677dac30085742ef216b9f2e19308e123d2b)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
| |
Update APBH-DMA driver and head files with definitions for CONFIG_MX7
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit 07299056426f1f25aab51ab5531c4846d4c7560f)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add udc and fastboot support
We did not use the upstream way.
Currently use CI_UDC and USB_GAGDET of upstream can make fastboot work,
but lack of flash operation, so we still use our way.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Signed-off-by: Nitin Garg <nitin.garg@freescale.com>
Signed-off-by: Ye.Li <B37916@freescale.com>
|
|
|
|
|
|
| |
Add thermal driver for mx7
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
EPDC board contain a elan touch screen, this screen is a i2c
slave. If this EPDC board connect to i.MX6SL-EVK board, after
uboot boot up, if we do i2c operation, like i2c probe, then
the i2c bus block. This is due to the elan touch screen i2c slave.
This device needs to do some initialization opearation before its
i2c operation, otherwise this i2c device pull down the i2c clk line,
and make the i2c bus hang. This means elan needs a special flow on
i2c before its address is acked, otherwise the i2c bus will be hang.
This patch is a workaround, it add a void function which is defined
as a weak symbol in i2c driver, and it is called before every i2c
operation. In mx6slevk, this function was overwrite to execute elan
initialization. So that, for mx6slevk board, it will initialize
elan before every i2c operation, but for other boards, it just work
as before.
Signed-off-by: Haibo Chen <haibo.chen@freescale.com>
(cherry picked from commit 4c587b29c423ce61b2471ed20f31ff533d9d8a39)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Conflicts:
arch/arm/include/asm/arch-mx6/mx6sl_pins.h
board/freescale/mx6slevk/mx6slevk.c
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The default u-boot reset is a internal WDOG reset (warm reset on i.MX6) which
does not have power and DDR reset. So the peripherals and DDR may meet problem.
When using the internal WDOG reset on i.MX7D ARM2 boards,
we meets two DDR issues:
1. On 12x12 ARM2, sometimes the system may hang in DCD because the DDRC Operating Mode
does not become to normal.
2. On 19x19 ARM2, the reset always brings system to USB download because the
DDR3 turns to unstable.
On the i.MX7D ARM2 board, the WDOG_B signal connects to POR_B or PMIC_PWRON. This gives
a chance to use a stronger reset. So in this patch, we set the IOMUX for WDOG_B pin and
enable WDOG_B signal output in WDOG WCR register.
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit 1192501c1fcf3b266eb22639a6bc93ac7c03b367)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
| |
Implement the auxiliary core booting for Cortex M4 on i.MX7
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit c1c8ba37d87493c16ec1a12bc36d47f909e0e733)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix the warning below by adding function declare:
drivers/video/mxsfb.c: In function 'mxs_lcd_init':
drivers/video/mxsfb.c:92:2: warning: implicit declaration of
function 'mxs_set_lcdclk' [-Wimplicit-function-declaration]
mxs_set_lcdclk(panel->isaBase, PS2KHZ(mode->pixclock));
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit 615af07d960d9ec17708fb1712b2362dbaeab121)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
| |
Add mx7_plugin.S to support building plugin boot image.
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit 8d15f44ca0c2d694b87eb6ab6db5f27496924b4a)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
| |
Add HAB files for secure boot and image athentication.
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit 2447bbcdd4ffcbdbd4ebed1b25e67ea753332d9d)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
|
|
| |
Generic timer is added to mx7d, so add support for this.
In uboot, only system counter is needed, the timer events are not needed.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit 514a79581c6a46df445d69f1fcb2b3bff9584162)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Introduce a new cpu type MXC_CPU_MX7D and relevant functions for mx7d.
Implement the soc.c for various system level functions like:
temperature check, arch init, get mac fuse, boot mode get/apply, etc.
Additional, enable building imx common platform files for mx7d.
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit 47d65aa6bdd109fd9141b5a5d64ab9deeb9dd2b3)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Conflicts:
Makefile
arch/arm/cpu/armv7/Makefile
arch/arm/imx-common/cpu.c
arch/arm/include/asm/arch-imx/cpu.h
arch/arm/include/asm/imx-common/boot_mode.h
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since a new CCM with clock root slice is introduced in mx7. Provide
several APIs for configuring root slice in clock_slice.c
Implement clock/PLL relevant functions for modules in mx7d to
enable/disable/set/get clocks or PLLs.
From mx7d, the clocks are initialized in function "void clock_init(void)",
such as UART, USDHC, ECSPI, USB, WDOG, WEIM. These module don't have clock
setting functions in driver and BSP, and assume the clock is setup before
entering into u-boot. Because default root clock is 24Mhz OSC, we have
to setup these default clocks.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit 73b511503aef9675e58baadc0639d59c8395bcb4)
|
|
|
|
|
|
|
|
| |
Add mx7d pins for various IOMUX settins.
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit 25f508ff6891d8861e1fe49c4e2f840cff0040e0)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
|
| |
Add mx7 registers base address and relevant structure and definitions.
Signed-off-by: Ye.Li <B37916@freescale.com>
Acked-by: Jason Liu <r64343@freescale.com>
(cherry picked from commit 05ad2b076ca7ba8c38cf34cab217de58f9a6a375)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
| |
Add plugin support
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
| |
Fix PAD_CTL_SPEED_LOW pad settings.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
| |
Update header files in arch/arm/include/asm/arch-mx6/
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
|
| |
Add the definitions for the RDC mappings on iMX6SX and include this
file to "imx-rdc.h"
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit f4d42906c0db4d156e197781784d0ae010a364a5)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
| |
Update hab with imx_v2014.04
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Enable pcie support in uboot on imx6sx sd boards
- enable_pcie_clock should be call before ssp_en is set,
since that ssp_en control the phy_ref clk gate, turn on
it after the source of the pcie clks are stable.
- add debug info
- add rx_eq of gpr12 on imx6sx
- there are random link down issue on imx6sx. It's
pcie ep reset issue.
solution:reset ep, then retry link can fix it.
Signed-off-by: Richard Zhu <r65037@freescale.com>
(cherry picked from commit ec78595a24b5ff1020baa97b6d6e79a3a3326307)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Conflicts:
arch/arm/cpu/armv7/mx6/clock.c
arch/arm/include/asm/arch-mx6/iomux.h
drivers/pci/pcie_imx.c
include/configs/mx6sxsabresd.h
Note:
There is an upstream patch 1b8ad74a6f8cea55a727dc4b399baac46d0daef1
to add support for mx6solox.
This patch is to add more stuff from our vendor imx_v2014.04 branch.
|
|
|
|
|
|
|
|
|
|
|
| |
If boot from usb, reset environment to default value.
Auto apply mfgtools setting and boot mfgtools kernel.
Signed-off-by: Frank Li <Frank.li@freescale.com>
Signed-off-by: Nitin Garg <nitin.garg@freescale.com>
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update the u-boot code to support NAND chips with oob size up to 744
byte.
For the NAND flash MT29F32G08CBADA, which consists of 2 planes x 1064
blocks per plane. Obviously the block number is not power-of-2. But all
MTD driver assumes the page per block and block per plane must be a
power of 2 number. So the last 40 blocks in each plane must be
truncated.
Signed-off-by: Allen Xu <b45815@freescale.com>
(cherry picked from commit 9045626dbc7798cc340f64699bc9bd35c537498a)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Conflicts:
include/linux/mtd/nand.h
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch is from commit b79371410aa44972dea53d5c19d256170928dcbd
"ENGR00315499-9: ARM:iMX6SL EVK: Add keyboard support"
Since board file already added related bsp and pin settings,
this patch only add driver.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Signed-off-by: Nitin Garg <nitin.garg@freescale.com>
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add EPDC splash screen feature for MX6SL EVK, and MX6DL SABRESD board.
- Currently, splash screen consists of a simple black border
around a white screen. Done this way to save in memory footprint.
- EPDC splash screen is disabled by default in the config file for MX6DL_SABRESD
and MX6SL_EVK. If left enabled, the U-Boot image will not boot correctly
(hang), since some additional content on the boot device (waveform file) is
required for EPDC splash to work correctly.
Please refer to Linux Reference Manual for how to flash WAVEFORM file.
Signed-off-by: Robby Cai <R63905@freescale.com>
Signed-off-by: Nitin Garg <nitin.garg@freescale.com>
(cherry picked from commit b8ab9b3eabb94bbbc1eea63e7c0e2a87d2d645f4)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Conflicts:
arch/arm/include/asm/arch-mx6/mx6sl_pins.h
board/freescale/mx6sabresd/mx6sabresd.c
board/freescale/mx6slevk/mx6slevk.c
drivers/video/Makefile
include/configs/mx6sabresd.h
include/configs/mx6slevk.h
include/lcd.h
drivers/video/Makefile
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a new interface "mxs_lcd_panel_setup" to setup fb parameters and
specifies the LCDIF controller for multiple controllers of iMX6SX.
Pass fb parameters via "videomode" env remains work if the new interface
is not called before video initialization.
Modify LCDIF clock interface "mxs_set_lcdclk" to support multiple
LCDIF controllers on iMX6SX.
Signed-off-by: Ye.Li <B37916@freescale.com>
(cherry picked from commit 054fed6bab5b05a054c7e3cb5362635a40e6ee18)
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
|