- Mar 31, 2016
-
-
Masahiro Yamada authored
Since no clock driver is implemented for peripherals in U-Boot yet, this property is needed for the serial driver to set up the divisor register. Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com>
-
Masahiro Yamada authored
The pinmux of PH1-LD11 is almost a subset of that of PH1-LD20 (as far as used in boot-loader), so this commit makes the driver shared between the two SoCs. Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com>
-
Masahiro Yamada authored
Add pin configuration and pinmux support for UniPhier PH1-LD20 SoC. Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com>
-
Masahiro Yamada authored
Upcoming new pinctrl drivers for PH1-LD11 and PH-LD20 support input signal gating for each pin. (While, existing ones only support it per pin-group.) This commit prepares the core part for that. Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com>
-
Masahiro Yamada authored
The core part of the UniPhier pinctrl driver needs to support a new capability for upcoming UniPhier ARMv8 SoCs. This sometimes happens because pinctrl drivers include really SoC-specific stuff. This commit intends to tidy up SoC-specific parameters of the existing drivers before adding new ones. Having flags would be better than adding new members every time a new SoC-specific capability comes up. At this time, there is one flag, UNIPHIER_PINCTRL_CAPS_DBGMUX_SEPARATE. This capability (I'd say rather quirk) was added for PH1-Pro4 and PH1-Pro5 as requirement from our customer. For those SoCs, one pin-mux setting is controlled by the combination of two separate registers; the LSB bits at register offset (8 * N) and the MSB bits at (8 * N + 4). Because it is impossible to update two separate registers atomically, the LOAD_PINCTRL register should be set in order to make the pin-mux settings really effective. Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com>
-
Masahiro Yamada authored
Currently, fdtdec_get_addr_size() does not support the address translation, so it cannot handle device trees with non-straight "ranges" properties. (This would be a problem with DTS for UniPhier ARMv8 SoCs.) Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com>
-
Masahiro Yamada authored
Currently, fdtdec_get_addr_size() does not support the address translation, so it cannot handle device trees with non-straight "ranges" properties. (This would be a problem with DTS for UniPhier ARMv8 SoCs.) Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com>
-
Masahiro Yamada authored
Currently, fdtdec_get_addr_size() does not support the address translation, so it cannot handle device trees with non-straight "ranges" properties. (This would be a problem with DTS for UniPhier ARMv8 SoCs.) Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com>
-
Masahiro Yamada authored
Currently, fdtdec_get_addr_size() does not support the address translation, so it cannot handle device trees with non-straight "ranges" properties. (This would be a problem with DTS for UniPhier ARMv8 SoCs.) Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com>
-
Masahiro Yamada authored
Currently, fdtdec_get_addr_size() does not support the address translation, so it cannot handle device trees with non-straight "ranges" properties. (This would be a problem with DTS for UniPhier ARMv8 SoCs.) Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com>
-
Masahiro Yamada authored
Currently, fdtdec_get_addr_size() does not support the address translation, so it cannot handle device trees with non-straight "ranges" properties. (This would be a problem with DTS for UniPhier ARMv8 SoCs.) Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com>
-
Masahiro Yamada authored
This command would be useful to update U-Boot images in SRAM. Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com>
-
Masahiro Yamada authored
Commit d085ecd6 ("ARM: uniphier: switch to raw U-Boot image") claimed that u-boot-with-spl.bin would be useful in its commit log, but it was not available because the commit missed to define CONFIG_SPL_MAX_SIZE. Without it, CONFIG_SPL_PAD_TO is not defined either (see include/config_fallbacks.h). So, the SPL image is not padded correctly. Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com>
-
Read Denali hardware revision number and use it to calculate max_banks, The encoding of max_banks changed in Denali revision 5.1. [ Linux commit : 271707b1d817f5104e02b2bd1bab43f0c8759418 ] Signed-off-by:
Graham Moore <grmoore@opensource.altera.com> [Brian: parentheses around macro arg] Signed-off-by:
Brian Norris <computersforpeace@gmail.com> [Masahiro: import from Linux and adjust ioread32() to readl() ] Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com>
-
- Mar 29, 2016
-
-
git://git.denx.de/u-boot-tegraTom Rini authored
-
This bit needs to be set for system suspend/resume to work. This setting will be documented in an updated TRM at some time in the future. Signed-off-by:
Stephen Warren <swarren@nvidia.com> Signed-off-by:
Tom Warren <twarren@nvidia.com>
-
Rai Harninder authored
This patch enable VID support for ls2080ardb platform. It uses the common VID driver. Signed-off-by:
Rai Harninder <harninder.rai@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Qianyu Gong authored
Clock phase and polarity for DSPI flash need to be set. Signed-off-by:
Gong Qianyu <Qianyu.Gong@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Mingkai Hu authored
Signed-off-by:
Mingkai Hu <mingkai.hu@nxp.com> Signed-off-by:
Gong Qianyu <Qianyu.Gong@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Mingkai Hu authored
Signed-off-by:
Mingkai Hu <mingkai.hu@nxp.com> Signed-off-by:
Gong Qianyu <Qianyu.Gong@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Saksham Jain authored
Use a pointer to pass image address to fsl_secboot_validate(), instead of using environmental variable "img_addr". Signed-off-by:
Aneesh Bansal <aneesh.bansal@nxp.com> Signed-off-by:
Saksham Jain <saksham.jain@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Saksham Jain authored
In case of fatal failure during secure boot execution (e.g. header not found), reset is asserted to stop execution. If the RESET_REQ is not tied to HRESET, this allows the execution to continue. Add esbh_halt() after the reset to make sure execution stops. Signed-off-by:
Aneesh Bansal <aneesh.bansal@nxp.com> Signed-off-by:
Saksham Jain <saksham.jain@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Saksham Jain authored
For secure boot, currently we were using fixed bootargs for all SoCs. This is not needed and we can use the bootargs which are used in non-secure boot. Signed-off-by:
Aneesh Bansal <aneesh.bansal@nxp.com> Signed-off-by:
Saksham Jain <saksham.jain@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Saksham Jain authored
This commit solves CAAM coherency issue on ls2080. When caches are enabled and CAAM's DMA's AXI transcations are not made cacheable, Core reads/writes data from/to caches and CAAM does from main memory. This forces data flushes to synchronize various data structures. But even if any data in proximity of these structures is read by core, these structures again are fetched in caches. To avoid this problem, either all the data that CAAM accesses can be made cache line aligned or CAAM transcations can be made cacheable. So, this commit makes CAAM transcations as write back with write and read allocate. Signed-off-by:
Saksham Jain <saksham.jain@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Saksham Jain authored
When MMU is disabled, 64-bit write must be aligned at 64-bit boundary. Becaue the memory location is not guaranteed to be 64-bit aligned, the 64-bit write needs to be split into two 32-bit writes to avoid the alignment exception. Signed-off-by:
Aneesh Bansal <aneesh.bansal@nxp.com> Signed-off-by:
Saksham Jain <saksham.jain@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Saksham Jain authored
During secure boot, SMMU is enabled on POR by SP bootrom. SMMU needs to be put in bypass mode in uboot to enable CAAM transcations to pass through. For non-secure boot, SP BootROM doesn't enable SMMU, which is in bypass mode out of reset. Signed-off-by:
Aneesh Bansal <aneesh.bansal@nxp.com> Signed-off-by:
Saksham Jain <saksham.jain@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Saksham Jain authored
The GUR (DCFG) registers in CCSR space are in little endian format. Define a config CONFIG_SYS_FSL_CCSR_GUR_LE in arch/arm/include/asm/arch-fsl-layerscape/config.h Signed-off-by:
Aneesh Bansal <aneesh.bansal@nxp.com> Signed-off-by:
Saksham Jain <saksham.jain@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Saksham Jain authored
"fdt_high" env variable was set to 0xcfffffff for secure boot. Change it to 0xa0000000 for LS2080 to be consistent with non-secure boot targets. Signed-off-by:
Aneesh Bansal <aneesh.bansal@nxp.com> Signed-off-by:
Saksham Jain <saksham.jain@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Saksham Jain authored
To unify steps for secure boot for xip (eg. NOR) and non-xip memories (eg. NAND, SD), bootscipts and its header are copied to main memory. Validation and execution are performed from there. For other ARM Platforms (ls1043 and ls1020), to avoid disruption of existing users, this copy step is not used for NOR boot. Signed-off-by:
Aneesh Bansal <aneesh.bansal@nxp.com> Signed-off-by:
Saksham Jain <saksham.jain@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Saksham Jain authored
During secure boot, Linux image along with other images are validated using bootscript. This bootscript also needs to be validated before it executes. This requires a header for bootscript. When secure boot is enabled, default bootcmd is changed to first validate bootscript using the header and then execute the script. For ls2080, NOR memory map is different from other ARM SoCs. So a new address on NOR is used for this bootscript header (0x583920000). The Bootscript address is mentioned in this header along with addresses of other images. Signed-off-by:
Aneesh Bansal <aneesh.bansal@nxp.com> Signed-off-by:
Saksham Jain <saksham.jain@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Saksham Jain authored
Sec_init has been called at the beginning to initialize SEC Block (CAAM) which is used by secure boot validation later for both ls2080a qds and rdb. 64-bit address in ESBC Header has been enabled. Secure boot defconfigs are created for boards (NOR boot). Signed-off-by:
Saksham Jain <saksham.jain@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Saksham Jain authored
For secure boot, a header is used to identify key table, signature and image address. A new header structure is added for lsch3. Currently key extension (IE) feature is not supported. Single key feature is not supported. Keys must be in table format. Hence, SRK (key table) must be present. Max key number has increase from 4 to 8. The 8th key is irrevocable. A new barker Code is used. Signed-off-by:
Aneesh Bansal <aneesh.bansal@nxp.com> Signed-off-by:
Saksham Jain <saksham.jain@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Saksham Jain authored
Add configs for various IPs used during secure boot. Add address and endianness for SEC and Security Monitor. SRK are fuses in SFP (fuses for public key's hash). These are stored in little endian format. Signed-off-by:
Aneesh Bansal <aneesh.bansal@nxp.com> Signed-off-by:
Saksham Jain <saksham.jain@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Saksham Jain authored
In LS2080, SFP has version 3.4. It is in little endian. The base address is 0x01e80200. SFP is used in Secure Boot to read fuses. Signed-off-by:
Aneesh Bansal <aneesh.bansal@nxp.com> Signed-off-by:
Saksham Jain <saksham.jain@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Prabhakar Kushwaha authored
NULL pointer should be checked before any dereference. This patch move memest after the NULL pointer check. Signed-off-by:
Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com> Reported-by:
Jose Rivera <german.rivera@nxp.com> Acked-by:
Joe Hershberger <joe.hershberger@ni.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Prabhakar Kushwaha authored
Free dflt_dpio pointer after its usage during error handling Signed-off-by:
Prabhakar Kushwaha <prabhakar.kushwaha@nxp.com> Reported-by:
Jose Rivera <german.rivera@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
Qianyu Gong authored
The qspi_cfg register is set by PBI when booting from QSPI. No need to changing it again. Signed-off-by:
Gong Qianyu <Qianyu.Gong@nxp.com> Reviewed-by:
York Sun <york.sun@nxp.com>
-
- Mar 28, 2016
-
-
Signed-off-by:
Guy Thouret <guy.thouret@wems.co.uk> Cc: Heiko Schocher <hs@denx.de>
-
Implement i2c_idle_bus in driver, then setup_i2c can be dropped for boards which enable DM_I2C/DM_GPIO/PINCTRL. The i2c_idle_bus force bus idle flow follows setup_i2c in arch/arm/imx-common/i2c-mxv7.c This patch is an implementation following linux kernel patch: " commit 1c4b6c3bcf30d0804db0d0647d8ebeb862c6f7e5 Author: Gao Pan <b54642@freescale.com> Date: Fri Oct 23 20:28:54 2015 +0800 i2c: imx: implement bus recovery Implement bus recovery methods for i2c-imx so we can recover from situations where SCL/SDA are stuck low. Once i2c bus SCL/SDA are stuck low during transfer, config the i2c pinctrl to gpio mode by calling pinctrl sleep set function, and then use GPIO to emulate the i2c protocol to send nine dummy clock to recover i2c device. After recovery, set i2c pinctrl to default group setting. " See Documentation/devicetree/bindings/i2c/i2c-imx.txt for detailed description. 1. Introuduce scl_gpio/sda_gpio/bus in mxc_i2c_bus. 2. Discard the __weak attribute for i2c_idle_bus and implement it, since we have pinctrl driver/driver model gpio driver. We can use device tree, but not let board code to do this. 3. gpio state for mxc_i2c is not a must, but it is recommended. If there is no gpio state, driver will give tips, but not fail. 4. The i2c controller was first probed, default pinctrl state will be used, so when need to use gpio function, need to do "pinctrl_select_state(dev, "gpio")" and after force bus idle, need to switch back "pinctrl_select_state(dev, "default")". This is example about how to use the gpio force bus idle function: " &i2c1 { clock-frequency = <100000>; pinctrl-names = "default", "gpio"; pinctrl-0 = <&pinctrl_i2c1>; pinctrl-1 = <&pinctrl_i2c1_gpio>; scl-gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>; sda-gpios = <&gpio1 29 GPIO_ACTIVE_HIGH>; status = "okay"; [....] }; [.....] pinctrl_i2c1_gpio: i2c1grp_gpio { fsl,pins = < MX6UL_PAD_UART4_TX_DATA__GPIO1_IO28 0x1b8b0 MX6UL_PAD_UART4_RX_DATA__GPIO1_IO29 0x1b8b0 >; }; " Signed-off-by:
Peng Fan <van.freenix@gmail.com> Cc: Albert Aribaud <albert.u.boot@aribaud.net> Cc: Stefano Babic <sbabic@denx.de> Cc: Heiko Schocher <hs@denx.de> Cc: Simon Glass <sjg@chromium.org> Cc: York Sun <york.sun@nxp.com>
-