platform/kernel/u-boot.git
4 years agoodroid xu3/xu4: add bootclone and ubootupgrade environment scripts
Przemyslaw Marczak [Fri, 4 Dec 2015 15:21:02 +0000 (16:21 +0100)]
odroid xu3/xu4: add bootclone and ubootupgrade environment scripts

Script ubootupgrade:
This script allows updating U-Boot from file u-boot-mmc.bin
existing on boot partition, e.g. with SD card reader.

This is useful for XU4, when U-Boot upgrade is needed,
then it can be delivered with 'boot.img' as regular file
and upgraded by running:
run ubootupgrade

Script bootclone:
This script allows cloning bootloader firmware including:
- bl1, bl2, U-Boot ,and TZSW
from bootable SD card to clean eMMC card using XU3/XU4 board.

This is useful, when user have SD card reader only and wants prepare
a bootable eMMC card.

The script expects that SD is bootable and can be run as follows:
run bootclone

Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agoexynos4-dt: update regulators opmode settings
Przemyslaw Marczak [Fri, 4 Dec 2015 13:21:00 +0000 (14:21 +0100)]
exynos4-dt: update regulators opmode settings

Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agopmic: max77686: adjust operation mode names to match documentation
Przemyslaw Marczak [Fri, 7 Aug 2015 10:01:07 +0000 (12:01 +0200)]
pmic: max77686: adjust operation mode names to match documentation

The MAX77686 PMIC's operation modes defined in the header were
quite misleading, because in the defined STANDBY mode, the output
were off, instead of staying in low power mode.

This commit correct this issue, and now the operation modes
are consistent with the PMIC's documentation.

Rename results:
- MAX77686_LDO_MODE_STANDBY     -> MAX77686_LDO_MODE_ON_AUTO_OFF
- MAX77686_LDO_MODE_STANDBY_LPM -> MAX77686_LDO_MODE_ON_AUTO_LPM
- MAX77686_BUCK_MODE_STANDBY    -> MAX77686_BUCK_MODE_ON_AUTO_OFF

For both modes, the output state is controlled by PMIC's PWRREQ
external signal used by SoC. In normal operation mode, when PWRREQ
signal is HIGH, the output is ON, amd for LOW signal, the output
is OFF or LPM (Low Power Mode).

As a result, this commit updates the Trats2 regulator settings.

Change-Id: Ibcb86e0c1ed50530930fbabab88bc374eedc4161
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agoTMP: odroid-xu3::add checkboard to use the same DTB for XU3/XU3L
Przemyslaw Marczak [Wed, 2 Dec 2015 12:42:12 +0000 (13:42 +0100)]
TMP: odroid-xu3::add checkboard to use the same DTB for XU3/XU3L

This U-Boot detects Odroid board's version (XU3/XU3L)
to load proper fdtfile based on this info.

But until tizen boot image doesn't include the FDT for XU3Lite,
the same file must be used for XU3 and XU3L.

This commit adds environment script 'checkboard', to set fdtfile name.

Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agobootstage: enable bootstage timing report to fdt
Przemyslaw Marczak [Wed, 2 Dec 2015 10:48:56 +0000 (11:48 +0100)]
bootstage: enable bootstage timing report to fdt

This commit enables boot stage time reporting for U-Boot
and appends it to device-tree, which can be seen in Linux.
The report is created as 'bootstage' fdt node with child
for each stage, like:
- main_loop (U-Boot prompt)
- start_kernel

fdt:
bootstage {
44 {
name = "start_kernel";
mark = <>;
};
...
};

This can be checked in linux with 'cat /proc/device-tree/bootstage/id/name'.

Note: The id's are not constant for each boot stage name. For safety
use in linux, it's better to find the proper one by it's name.

This feature is enabled for configs:
- odroid-xu3
- odroid-u3
- tizen

Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agoOdroid-xu3: set default bootcmd to autoboot
Przemyslaw Marczak [Thu, 19 Nov 2015 14:45:27 +0000 (15:45 +0100)]
Odroid-xu3: set default bootcmd to autoboot

Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agof_thor: allow to download 4GB images
Przemyslaw Marczak [Tue, 10 Nov 2015 11:29:18 +0000 (12:29 +0100)]
f_thor: allow to download 4GB images

This commit fixes 2GB file size limit for thor downloader.

The application on host side sends the downloaded file size as 32-bit
unsigned value. But the thor implementation on U-Boot side interpreted
this as signed value. This caused an error for files with size greater
than 2GB.

This commit fixes the data types in code, which allows to send file
of size 4GB.

Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agotools:mkimage_multidtb: Align less than PAD size
Inha Song [Wed, 5 Aug 2015 05:05:03 +0000 (14:05 +0900)]
tools:mkimage_multidtb: Align less than PAD size

This patch fix align error in mkimage_multidtb tools.
if DTB size is aigned to $PAD, $PAD_CNT should be zero not $PAD.

Change-Id: I2bf8343dae9b2bb71a70abf1df61bd215c2996f8
Signed-off-by: Inha Song <ideal.song@samsung.com>
4 years agopackaging: u-boot-xu3.spec: modify the source file prefix name
Jaehoon Chung [Tue, 26 May 2015 09:50:54 +0000 (18:50 +0900)]
packaging: u-boot-xu3.spec: modify the source file prefix name

Modify the source file prefix name from u-boot-xu3 to u-boot.
When built with u-boot.spec and u-boot-xu3.spec, it needs to take same source
file.

Change-Id: I0f0d8fd5973b4e9cfc6337d9b9431598bedaa891
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
4 years agopackaging: fix %setup top directory name to match repo name
Inha Song [Tue, 26 May 2015 10:34:28 +0000 (19:34 +0900)]
packaging: fix %setup top directory name to match repo name

This pach fix %setup top directory name to match repo name.

Change-Id: I12ad129f9092bf111f6deb900d1b5cdb9cf4ccdb
Signed-off-by: Inha Song <ideal.song@samsung.com>
4 years agopackaging: fix minifest and temp directory name for odroid xu3
Inha Song [Tue, 26 May 2015 05:26:03 +0000 (14:26 +0900)]
packaging: fix minifest and temp directory name for odroid xu3

This pach fix mainifest name to u_boot_xu3 from u_boot and also
fix temporary name for gbs to u-boot-xu3.

Change-Id: I307186ea75e1cb4ce4a588694aa081d318051158
Signed-off-by: Inha Song <ideal.song@samsung.com>
4 years agoAdd dtc to u-boot-tools
Maciej Wereski [Thu, 19 Mar 2015 10:39:59 +0000 (11:39 +0100)]
Add dtc to u-boot-tools

Without dtc mkimage fails.

Change-Id: If66e67881a616dddcda88004ffe073795e010433
Signed-off-by: Maciej Wereski <m.wereski@partner.samsung.com>
4 years agoOdroid-XU3: Change root partition name to rootfs
Inha Song [Thu, 21 May 2015 02:04:46 +0000 (11:04 +0900)]
Odroid-XU3: Change root partition name to rootfs

This patch root partition name to rootfs from platform.
The root partition name is changed to rootfs from platform since Tizen 3.0.

Change-Id: I111fd510e097b9354a7d5214b551ceb809069e24
Signed-off-by: Inha Song <ideal.song@samsung.com>
4 years agopackaging: Add change spec for odroid-xu3 u-boot build
Inha Song [Tue, 17 Mar 2015 07:36:57 +0000 (16:36 +0900)]
packaging: Add change spec for odroid-xu3 u-boot build

This patch Add spec file for odroid-xu3 u-boot build by GBS.

Signed-off-by: Inha Song <ideal.song@samsung.com>
4 years agotool: mkimage_signed: Add odroid-xu3_defconfig support
Inha Song [Thu, 26 Feb 2015 01:08:21 +0000 (10:08 +0900)]
tool: mkimage_signed: Add odroid-xu3_defconfig support

This patch add odroid-xu3_defconfig for Odroid XU3 board.

Signed-off-by: Inha Song <ideal.song@samsung.com>
4 years agoexynos: common: increase malloc len to 128MiB
Przemyslaw Marczak [Tue, 17 Mar 2015 09:44:57 +0000 (10:44 +0100)]
exynos: common: increase malloc len to 128MiB

This change is required for thor command.
When malloc pool is increased, then thor doesn't
fail when allocates the data buffer few times.

Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agoexynos4: dtsi: add include of gpio bindings
Przemyslaw Marczak [Tue, 27 Jan 2015 15:12:53 +0000 (16:12 +0100)]
exynos4: dtsi: add include of gpio bindings

Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agoOdroid-XU3: adjust to support Tizen requirements
Joonyoung Shim [Fri, 16 Jan 2015 07:59:04 +0000 (16:59 +0900)]
Odroid-XU3: adjust to support Tizen requirements

This patch includes changes required to boot Tizen,
by varoius authors:

arm: exynos5420: Adding support for board_usb_{init|cleanup}() functions
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
samsung: common: board: call dwc3_uboot_exit() for boards with DWC3
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
config: Odroid-XU3: Support DFU download
Signed-off-by: Inha Song <ideal.song@samsung.com>
smdk5420: Add dfu_alt_info settings interface for support DFU download
Signed-off-by: Inha Song <ideal.song@samsung.com>
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
config: Odroid-XU3: Enable dwc3 usb gadget
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
config: Odroid-XU3: Add default dfu device environment
Signed-off-by: Inha Song <ideal.song@samsung.com>
usb: config: odroid XU3: Enable UMS (Mass Storage) gadget
Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Odroid-XU3: Enable check board signature when download bootloader
Signed-off-by: Inha Song <ideal.song@samsung.com>
odroid-xu3: config: add platform autoboot command
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
Odroid-XU3: Set rootfs device number to 0
Signed-off-by: Inha Song <ideal.song@samsung.com>
4 years agosamsung: board: dram_init: return error if no mem
Przemyslaw Marczak [Fri, 28 Nov 2014 13:34:59 +0000 (14:34 +0100)]
samsung: board: dram_init: return error if no mem

Change-Id: Ic1bcce5bc90a38b751f32bef23cae79e24d5a443
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agopackaging: u-boot.spec: add tizen_defconfig support
Przemyslaw Marczak [Thu, 31 Jul 2014 14:31:55 +0000 (16:31 +0200)]
packaging: u-boot.spec: add tizen_defconfig support

Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
4 years agotool:mkimage_signed: add tizen_defconfig support
Przemyslaw Marczak [Thu, 31 Jul 2014 14:26:45 +0000 (16:26 +0200)]
tool:mkimage_signed: add tizen_defconfig support

Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agotools:mkimage_multidtb: cat multi-plat bin with multiple dtbs
Przemyslaw Marczak [Thu, 31 Jul 2014 14:28:17 +0000 (16:28 +0200)]
tools:mkimage_multidtb: cat multi-plat bin with multiple dtbs

This script concatenates proper dtb files into
one multi.dtb with 4B padding after the u-boot-multi.bin.

Output: u-boot-mmc.bin:
| u-boot-multi.bin  | dtb 1 (4B padding) | dtb 2 (4b padding) | dtb x ...

Change-Id: I9b308fc58707917b89c3f59e65b414d02f5e8efb
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agotizen: add tizen_defconfig
Przemyslaw Marczak [Tue, 8 Jul 2014 11:48:16 +0000 (13:48 +0200)]
tizen: add tizen_defconfig

Changes for v2015.10-rc5
- tizen.h: remove CONFIG_SYS_PROMPT
- tizen_defconfig: enable missing configs

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Inha Song <ideal.song@samsung.com>
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agotizen: add Exynos4 common file
Przemyslaw Marczak [Tue, 8 Jul 2014 11:51:14 +0000 (13:51 +0200)]
tizen: add Exynos4 common file

Changes for v2015.10-rc5:
- exynos4-dt.c: add missing control of MAX77693 regulators
  for Trats2 in function s5pc210_phy_control()

Changed for v2016.03:
- Replaced from s3c_udc to dwc2_udc

Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
Signed-off-by: Inha Song <ideal.song@samsung.com>
Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
4 years agothor:cmd: get the default command arguments from environment
Przemyslaw Marczak [Thu, 12 Jun 2014 08:20:59 +0000 (10:20 +0200)]
thor:cmd: get the default command arguments from environment

This change adds support to getting the default DFU cmd line
arguments from the environment.

DFU and THOR uses the same command line arguments,
so the DFU command environment setup can be used also with THOR.

Change-Id: I2e0984c909147c13191f6d6646d094c9f02c392a
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agosamsung: misc_init_r: insert call to platform_setup()
Przemyslaw Marczak [Thu, 13 Nov 2014 10:40:02 +0000 (11:40 +0100)]
samsung: misc_init_r: insert call to platform_setup()

This change adds call of platform_setup() to check or set active
platform configuration.

Another change is setup environment variable: ${platname},
from board name in set_board_info().

Change-Id: I355736bf40f8fa3697ce0b4546f7702d2e54a0f9
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agosamsung: misc: add new feature for configure partitions layout at boot.
Przemyslaw Marczak [Wed, 5 Nov 2014 20:09:07 +0000 (21:09 +0100)]
samsung: misc: add new feature for configure partitions layout at boot.

This feature requires some platform configuration data
in the environment, which is:
-${platname}_setup_N_name       - name of this setup
-${platname}_setup_N_partitions - GPT partitions or NULL if MBR
-${platname}_setup_N_alt_system - dfu_alt_info with system entities
-${platname}_setup_N_bootpart   - boot partition number for this setup
-${platname}_setup_N_rootpart   - root partition number for this setup

And for at least one setup it requires:
-${platname}_setup_cnt    - number of ${platname} configs
-${platname}_setup_chosen - chosen plaform config
-${platname}_setup_active - active platform config (autoset)

Two environment variables are used to switch/check active setup:
-${platname}_setup_chosen - can be changed manually
-${platname}_setup_active - should be the same as chosen

If chosen setup is not set, then will be automatically set on boot
by setting proper env:
- $partitions                 := ${platname}_setup_N_partitions
- $dfu_alt_system_${platname} := ${platname}_setup_N_alt_system
- $mmcbootpart                := ${platname}_setup_N_bootpart
- $mmcrootpart                := ${platname}_setup_N_rootpart
- ${platname}_setup_active    := ${platname}_setup_chosen

If ${partitions} are:
- set, then gpt write is called
- unset, e.g. when using MBR - then partition table is unchanged

Config:
- CONFIG_PLATFORM_SETUP

Changed for v2016.03:
- Replaced from vsnprintf to vsprintf

Change-Id: Ib9f90415b92ec1d67a9bf6b84e7ab5d5deea8a7d
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agotizen: add new gpt version and add gpt version headers
Inha Song [Thu, 6 Nov 2014 02:37:36 +0000 (11:37 +0900)]
tizen: add new gpt version and add gpt version headers

This patch adds new gpt version and moves gpt data into
separated headers.
In order to be able to gpt version switch, make gpt_vxx.h
files that has the partition information.

- include/samsung/gpt_v08.h
- include/samsung/gpt_v13.h

Change-Id: I33870a54703a07468f17b0f0d7cf43e563409e65
Signed-off-by: Inha Song <ideal.song@samsung.com>
tizen: config: enable platform command and platform setup

This patch enables "platform" command and adds multiple
platform setups to tizen environment.
At this stage - there are available three setups:
- trats2 pit v8
- trats2 pit v13 - chosen
- odroidu3 Tizen v2.x - chosen
- odroidu3 Tizen v3.0 - chosen

The chosen setup - is the default for each platform,
and is set as an active after first boot.
This should be changed manually if another setup is required.

Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
samsung: gpt: fix CSA partition name
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
4 years agosamsung: define autoboot command in external header
Przemyslaw Marczak [Fri, 15 May 2015 14:26:15 +0000 (16:26 +0200)]
samsung: define autoboot command in external header

Change-Id: Ifb3f73392246b0585b486ffd9fd4ef43870d6d01
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agosamsung:board: don't call set_board_type() for CONFIG_OF_MULTI
Przemyslaw Marczak [Thu, 18 Sep 2014 11:02:19 +0000 (13:02 +0200)]
samsung:board: don't call set_board_type() for CONFIG_OF_MULTI

For this config the set_board_type() is called much more earlier
- in the function setup_fdt(), so the second call in the board file
is unneeded.

Change-Id: I71037c593d00f7bde95a0880787e64d0d09ff173
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agothor: check board type before display for CONFIG_OF_MULTI.
Przemyslaw Marczak [Thu, 18 Sep 2014 13:27:59 +0000 (15:27 +0200)]
thor: check board type before display for CONFIG_OF_MULTI.

For multi platform binary, it is required to check
the board type because not every board supports display.

Change-Id: Ia4153d58f48846a0bec6e9dc90ea17d87d5da096
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agosamsung:board: run lcd menu only on trats2 for CONFIG_OF_MULTI
Przemyslaw Marczak [Tue, 29 Jul 2014 12:32:03 +0000 (14:32 +0200)]
samsung:board: run lcd menu only on trats2 for CONFIG_OF_MULTI

Change-Id: I02baeb60125f695e30c138b7311910731f5d9f40
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agosamsung:board: dram_init(): alloc memory to store fdt dram info
Przemyslaw Marczak [Thu, 18 Sep 2014 14:20:29 +0000 (16:20 +0200)]
samsung:board: dram_init(): alloc memory to store fdt dram info

For CONFIG_OF_MULTI the dram_init() function gets memory information
from the device tree blob by the call to fdtdec_decode_memory().
The same is done second time in dram_init_banksize() - this was the
simplest because board info structure is not initialized at dram_init()
stage.

This change uses malloc and gd->priv pointer to store the memory banks
parameters and next uses it in dram_init_banksize().

Thanks to this change, the boot time decreases, because, the function
fdtdec_decode_memory() is called only once.

Change-Id: I8f357c6a641d4440f32d2fe24d7e1e2dc5bc4a3d
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agosamsung:board: init dram info based on memory node in fdt
Przemyslaw Marczak [Mon, 28 Jul 2014 15:43:23 +0000 (17:43 +0200)]
samsung:board: init dram info based on memory node in fdt

Change-Id: I3677f0ab0b4aed264de8af37e87b081f66a36b97
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agofdtdec: add function: fdtdec_decode_memory()
Przemyslaw Marczak [Mon, 28 Jul 2014 09:16:47 +0000 (11:16 +0200)]
fdtdec: add function: fdtdec_decode_memory()

This function can be used for decode memory node from device tree file.
Currently supports decoding of a single memory node with a multiple ranges
specified by the reg property with size of address and size cells specified
in a root node.

Function parameters:
- blob: ptr to device tree
- start: ptr to banks start address array
- size: ptr to banks size array
- max_banks: max number of banks to fill

Two of args: start or size can be NULL e.g. if only each bank size is needed.

Sample use case:
memory {
device_type = "memory";
reg = <0x40000000 ... 0x10000000 ...
       0x50000000 ... 0x10000000 ...
       ...        ... ...        ...>;
      };

Change-Id: I2f3defb89cf62d81377fb7882dbbae79b4472af2
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agofdt_support: remove type static in fdt_read_prop()
Przemyslaw Marczak [Mon, 28 Jul 2014 09:00:34 +0000 (11:00 +0200)]
fdt_support: remove type static in fdt_read_prop()

Change-Id: Iaff9eff27dba6fc6f13d031a96f310361648acfd
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agoarch:arm:dts: odroid/trats2: add memory device type
Przemyslaw Marczak [Wed, 23 Jul 2014 09:41:41 +0000 (11:41 +0200)]
arch:arm:dts: odroid/trats2: add memory device type

Change-Id: I80c42c8c390ccba1e748671b7f85d5b71371bbe9
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agosamsung: misc: menu: new option: battery charge level
Przemyslaw Marczak [Mon, 7 Apr 2014 15:21:13 +0000 (17:21 +0200)]
samsung: misc: menu: new option: battery charge level

This change adds new option to lcd menu which allows
check battery state. In case if battery level is greater
than boot level threshold (20%), battery screen is not
displayed. So this menu option is useful in such situations.

Change-Id: I13e7e57516766fea787855b914d2884343cc33a5
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agotrats2: enable command battery of interactive charger
Przemyslaw Marczak [Tue, 25 Mar 2014 11:32:22 +0000 (12:32 +0100)]
trats2: enable command battery of interactive charger

This change adds two features on trats2 device:
- show battery charge level by displaying battery screen
- manually start interactive charger if needed

Usage:
command: "battery"
options: "state" or "charge"

Change-Id: Ie000edfc2fb6f2938ddf1e17611fdc5045169830
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agotrats2: add support to interactive charger
Przemyslaw Marczak [Mon, 24 Mar 2014 09:40:12 +0000 (10:40 +0100)]
trats2: add support to interactive charger

This commit adds support to interactive charger api which means an
implementation of listed functions:
- charger_enable()  - enable the charger.Charger can be enabled
      automatically if the device power on state
      is triggered by USB cable connection.

- charger_type()    - this function returns device type connected
      to usb port of device. For charger api matters
      only positive value.

- battery_present() - check if battery is connected (DETBAT pin)

- battery_state()   - check battery charge level. Returns percent value.

- low_power_mode()  - switch SOC into low power mode which covers:
      - disable cores: 1, 2, 3,
      - disable SOC unused power domains,
      - decrease CPU clock to 200 MHz

After low_power_mode() function call, device should be restarted,
which is implemented in interactive charger.

Change-Id: I7e664fab29c45c2d29dc57a2faa887d88530d8f3
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agosamsung: misc: new command: battery and config CONFIG_CMD_BATTERY
Przemyslaw Marczak [Tue, 25 Mar 2014 11:27:05 +0000 (12:27 +0100)]
samsung: misc: new command: battery and config CONFIG_CMD_BATTERY

This feature allows to enable interactive charger by command line
or use interactive charger for display battery charge level.

Usage:
- battery [<state>] [<charge>]

Option "state" will display battery screen for 2 seconds.
Option "charge" will start interactive charger mode.

Interactive charger mode can be stopped by:
- pressing CTRL+C keys combination,
or device reset by:
- pressing PWR key for 5 seconds (only if SOC > 20% - one grey bar),
- pressing PWR key for 10 seconds, which is PMIC reset.

Change-Id: I622830198f6cba4f0fa30798b02aa003c55332bb
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agosamsung: misc: new feature: common interactive charger
Przemyslaw Marczak [Fri, 21 Mar 2014 15:15:50 +0000 (16:15 +0100)]
samsung: misc: new feature: common interactive charger

This change adds common interactive charger feature with
display support.

New config: CONFIG_INTERACTIVE_CHARGER

New functions:
- battery() - which takes one of commands parameter:
    BOOT_CHECK: check battery present, low power mode;
check battery charge level, draw battery screen
    STATE:      display battery screen with current state of charge
this is for command line use
    CHARGE:     start interactive charger for every battery charge level
this is also for command line use

- interactive_charger() - loop function for charge the battery and do:
  - update of battery screen,
  - update charge animation,
  - check for exit condition (if charge level >= 20%)
  - clear screen after 10 seconds animation
  - draw battery on clean screen if any key pressed

There are few constants defined for this feature:
- CHARGE_TRESHOLD_BOOT:         20 (20 percent of charge)
- CHARGE_DISPLAY_TIMEOUT_SEC:   10 (time for animation display)
- CONNECT_CHARGER_TIMEOUT_SEC:  5 (time for connect charger animation)
- CHARGE_PWR_KEY_RESET_TIMEOUT: 3 (time for PWR key press to reset device)

Battery charge level cases:
 - 0-20 % - don't allow to boot and then:
    - enable charger if connected and start charge animation
      or if no charger:
    - display 5 sec charger animation and turn off the device

- > 20 %  - don't display battery screen and boot device

Charge mode can be break by keys VOLUP + VOLDOWN. If charge level > 20%
then device can be enabled by pressing PWR key for a time defined in
CHARGE_PWR_KEY_RESET_TIMEOUT.

Change-Id: I15066a4b86c89f1f0124b072a0aeb7246b29b279
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agolib: tizen: add battery interactive charger screens
Przemyslaw Marczak [Mon, 24 Mar 2014 14:26:10 +0000 (15:26 +0100)]
lib: tizen: add battery interactive charger screens

New images:
- battery frame: 200x380px, 16bpp,
  batery level area in frame: 170x300px
- battery bar: 160x50px, 16bpp, grey and red,
  (for 5 bars in battery frame with 8px interelement gap)
- charge screen; charge screen clean images: 128x120px, 16bpp
- charge screen indicator; vertical and horizontal
  indicator clean images: 8x8px, 16bpp

Library functions:

For battery screen:
- draw_battery_screen()   - draw empty battery frame
- draw_battery_state()    - fill battery frame with charge bars
                            to a given percent
For charge animation:
- draw_charge_screen()    - draw a small phone connected to a cable
                            (under the battery)
- clean_charge_screen()   - cleans above screen
- draw_charge_animation() - display an animation with
                            a point running on a cable
                            (on a charge screen)

For low battery state and no charger connected:
- draw_connect_charger_animation() - draw and clean charge
                                     screen respectively

Library is ready to use gzipped images
but this commit adds only bmp images.

Changes for v2015.10-rc5:
- correct usage of removed typedef 'bmp_image_t'

Change-Id: I25a527b07b809b9105b6d4d8c29aa01e47224134
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agotrats2: add implementation of board_poweroff() and CONFIG_CMD_POWEROFF
Przemyslaw Marczak [Fri, 21 Mar 2014 10:48:54 +0000 (11:48 +0100)]
trats2: add implementation of board_poweroff() and CONFIG_CMD_POWEROFF

This change adds implementation of function board_poweroff() which
turns off the device off by setting PSHOLD gpio to low state which
is a power off signal for main PMIC.

Change-Id: Iae97fb81d7e7e243079ac18d03f4fd917c50b62e
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agoarch:arch:exynos: add exynos ps hold control output setting
Przemyslaw Marczak [Wed, 23 Apr 2014 12:57:19 +0000 (14:57 +0200)]
arch:arch:exynos: add exynos ps hold control output setting

Change-Id: I4ee074278c55198030aa5092f36e61e3c6efc487
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agoarch:arm:exynos: power.h define exynos4x12 power subsystem structure
Przemyslaw Marczak [Wed, 26 Mar 2014 15:00:54 +0000 (16:00 +0100)]
arch:arm:exynos: power.h define exynos4x12 power subsystem structure

Change-Id: Icf6cb80529f3fb5511e440f572e0870359e6e37c
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agocommon: add command power off - to switch off the device by command
Przemyslaw Marczak [Mon, 9 Jun 2014 06:25:09 +0000 (08:25 +0200)]
common: add command power off - to switch off the device by command

This change introduces new config:
- CONFIG_CMD_POWEROFF - which enables cmd/poweroff.c

This requires implementation of function board_poweroff() which
is yet declared in include/common.h

Implementation of board_poweroff() should:
1.a. turn off the device
     or
1.b. print info to user about turn off ability
2.   never back to caller

Usage is simple: "power off"

Changed for v2016.03:
- Relocated from common directory to cmd directory
- Renamed from cmd_poweroff to poweroff

Change-Id: Ia5fe73250e2ac29d0868b80bcd867bae2aa8d5be
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agopackaging: Adding .spec file for u-boot project
Chanho Park [Fri, 10 Jan 2014 01:48:52 +0000 (10:48 +0900)]
packaging: Adding .spec file for u-boot project

Change-Id: I5dd90f728a9f0f951afda5634f2509cbb3eccc95
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
Signed-off-by: Jacek Pielaszkiewicz <j.pielaszkie@samsung.com>
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
Signed-off-by: Maciej Wereski <m.wereski@partner.samsung.com>
4 years agotools: dtc: Add source to build the dtc compiler
Lukasz Majewski [Tue, 25 Mar 2014 16:33:34 +0000 (17:33 +0100)]
tools: dtc: Add source to build the dtc compiler

Newest u-boot (v2014.04) requires device tree compiler (DTC) version
at least 1.4.

Change-Id: Ie62778e3391cbf3b586221839cf53362c5f8cdff
Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
4 years agotrats/trats2: enable bootloader signature
Inha Song [Fri, 21 Feb 2014 17:55:15 +0000 (18:55 +0100)]
trats/trats2: enable bootloader signature

Enable of this config will now require making binary signature.
From now, manually build sequence should looks like this:
 CROSS_COMPILE=...
 make mrproper
 make trats2_config
 make
 ./tools/mkimage_signed.sh u-boot-dtb.bin trats2_config

The output signed binary is: u-boot-mmc.bin

Change-Id: I9a2c86d2f24a050ff3738adb9dbd7d5914ff16d8
Signed-off-by: Inha Song <ideal.song@samsung.com>
4 years agogadged: thor: add board signature check when download 'u-boot-mmc.bin'
Inha Song [Mon, 28 Oct 2013 06:52:53 +0000 (15:52 +0900)]
gadged: thor: add board signature check when download 'u-boot-mmc.bin'

This patch adds checking the special signature of downloaded U-Boot binary.
The new function check_board_signature() is called before do dfu_write()
in thor gadged code.

The board signature is checked for:
- the running U-Boot
- downloaded 'u-boot-mmc.bin'
at offset of binary start defined by:
- (CONFIG_SIGN_IMAGE_SIZE - HDR_SIZE)

The download can succeed when signatures are equal.

The default U-Boot image size defined by CONFIG_SIGN_IMAGE_SIZE is 1MB.

Other changes:
- print info about running/downloading U-Boot signature
- print info about wrong image signature/size
- don't allow downloading unsigned or signed wrong U-Boot image
- allow download any image if no signature found at running U-Boot

The first version added by:
Signed-off-by: Inha Song <ideal.song@samsung.com>
Upgrade:
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agotools: add script: mkimage_signed.sh for sign u-boot binary
Przemyslaw Marczak [Thu, 10 Apr 2014 13:03:40 +0000 (15:03 +0200)]
tools: add script: mkimage_signed.sh for sign u-boot binary

This script appends given binary image by signature header.
Script takes two arguments:
- @arg1: binary name
- @arg2: config name

Script usage:
./mkimage_signed.sh binary.img config_name
e.g.:
./mkimage_signed.sh u-boot-dtb.bin trats2_config

Sign header is stored on last 512 bytes of input binary.
Maximum imput binary size is 1MB - 512 Bytes = 1048064 Bytes.

The maximum size is limited by first bootloader (s-boot).
Now it is configured to load exactly 2048 blocks (1MB).
Current u-boot-dtb.bin size for trats2 is less than 600 KBytes,
so the size limit should not be an issue.

Change-Id: Ia7472be693df8d4135312971d963d27f2ea20f0f
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agolib: tizen: thor screen update
Przemyslaw Marczak [Wed, 2 Apr 2014 14:13:59 +0000 (16:13 +0200)]
lib: tizen: thor screen update

Now cable connection message is displayed on thor screen.
When cable is connected then only unneeded lcd console lines are overwritten.

Main changes:
- add new function: draw_thor_connected()
- update function draw_thor_screen()
- usb: gadget: thor:
  - move call to draw_thor_screen(),
  - add call to draw_thor_connected()

other change:
- remove draw_thor_init_screen() function

Changes for v2015.04-rc1:
- Replace <lcd.h> to <lcd_console.h>

Changes for v2015.10-rc5
- correct usage of removed typedef 'bmp_image_t'

Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agousb: thor: add screen support
Inha Song [Fri, 11 Oct 2013 08:50:24 +0000 (17:50 +0900)]
usb: thor: add screen support

cmd_thordown.c:
- add libtizen header
- change error handling for thor init
- add call to draw_thor_fail_screen() on error

f_thor.c:
- thor_init(): return -EINTR on ctrl+c or if power key was pressed 3 times
- thor_rx_data(): return -EINTR when pressed ctrl+c on data receiving
- add display simple info screen before cable is not connected
- add display download screen when connection is established
- update download progress bar if data receiving

Change-Id: Ia89ef48c6c2faa5eda5dda5c5b3951e675eec03b
Signed-off-by: Inha Song <ideal.song@samsung.com>
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agosamsung: misc: check_keys(), key_pressed() - remove type static.
Przemyslaw Marczak [Mon, 10 Feb 2014 15:28:30 +0000 (16:28 +0100)]
samsung: misc: check_keys(), key_pressed() - remove type static.

This patch removes type "static" from those functions declaration.

Change-Id: I2244ca3568b73251401e5102f26cc113ea69c1a4
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agolibtizen: add download logo and download progress bar
Przemyslaw Marczak [Fri, 7 Feb 2014 14:03:41 +0000 (15:03 +0100)]
libtizen: add download logo and download progress bar

Added features:
- add screen with exit info if no cable is connected
- download logo with progress bar after after THOR init
- downlaod failure screen on error
- PIT version, U-boot version on download screen
- function for update progess bar when downloading is going on

Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com>
Signed-off-by: Inha Song <ideal.song@samsung.com>
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agocommon: lcd: extend lcd api by function lcd_get_position_cursor()
Lukasz Majewski [Mon, 16 Feb 2015 16:40:25 +0000 (17:40 +0100)]
common: lcd: extend lcd api by function lcd_get_position_cursor()

Changes for v2015.04-rc1:
- Moving lcd console related code to lcd_console.c

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
4 years agoTrats: Setup: CLK_GATE_BLOCK - enable all clocks
Przemyslaw Marczak [Wed, 26 Feb 2014 08:17:45 +0000 (09:17 +0100)]
Trats: Setup: CLK_GATE_BLOCK - enable all clocks

This change allows boot kernel 3.10 on trats

Change-Id: Ic7f1672d9300a32fed9fa6d8f6fc30f118326a83
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
4 years agovideo:lcd:s6e8ax0: increase screen gamma.
Hyungwon Hwang [Fri, 15 Nov 2013 07:10:42 +0000 (16:10 +0900)]
video:lcd:s6e8ax0: increase screen gamma.

Change gamma table to increase the brightness of s6e8ax0 panel.

Change-Id: I6b21022fb90bbb14160c0426a776d73c9590345b
Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com>
4 years agoPrepare v2020.10 v2020.10
Tom Rini [Mon, 5 Oct 2020 15:15:32 +0000 (11:15 -0400)]
Prepare v2020.10

Signed-off-by: Tom Rini <trini@konsulko.com>
4 years agoboard: tbs2910: Use recommended distroboot addresses
Soeren Moch [Thu, 27 Aug 2020 19:52:46 +0000 (21:52 +0200)]
board: tbs2910: Use recommended distroboot addresses

According to doc/README.distro fdt_addr must not be set when DTB is not
available from hardware. So remove this entry.

Use address 32MB above the start of DRAM for kernel_addr_r. This way
we likely can avoid the self-relocation of the compressed kernel image
before it decompresses to offset 0x8000 from start of DRAM.

Use address 128MB above the start of DRAM for fdt_addr_r, since this is
the maximum location for the end of the kernel. So we avoid overwriting
the DTB.

Use 512k above that for ramdisk_addr_r. This should be enough for the
DTB, rest of DRAM can be used for initrd.

Place boot script / extlinux.conf at offset 0 / 1MB from start of DRAM.
This space is available for processing in U-Boot.

Signed-off-by: Soeren Moch <smoch@web.de>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
4 years agoMerge tag 'u-boot-stm32-20201002' of https://gitlab.denx.de/u-boot/custodians/u-boot-stm
Tom Rini [Fri, 2 Oct 2020 12:42:26 +0000 (08:42 -0400)]
Merge tag 'u-boot-stm32-20201002' of https://gitlab.denx.de/u-boot/custodians/u-boot-stm

- Fixup SPI-NOR boot on AV96 board

4 years agoARM: dts: stm32: Add missing dm-spl props for SPI NOR on AV96
Marek Vasut [Thu, 1 Oct 2020 10:25:55 +0000 (12:25 +0200)]
ARM: dts: stm32: Add missing dm-spl props for SPI NOR on AV96

The u-boot,dm-spl DT props are missing on AV96, hence the pinmux and
flash0 nodes are not included in the reduced SPL DT. This prevents
SPI NOR boot from working at all. Fix this by filling them in.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Patrick Delaunay <patrick.delaunay@st.com>
Cc: Patrice Chotard <patrice.chotard@st.com>
Reviewed-by: Patrice Chotard <patrice.chotard@st.com>
Reviewed-by: Patrick Delaunay <patrick.delaunay@st.com>
4 years agoMerge https://gitlab.denx.de/u-boot/custodians/u-boot-marvell
Tom Rini [Thu, 1 Oct 2020 12:55:20 +0000 (08:55 -0400)]
Merge https://gitlab.denx.de/u-boot/custodians/u-boot-marvell

- Espressobin: Fix compatible string check
- Espressobin: Extend README for more MAC addresses

4 years agoMerge tag 'late-bugfix-for-2020.10' of https://gitlab.denx.de/u-boot/custodians/u...
Tom Rini [Thu, 1 Oct 2020 12:36:29 +0000 (08:36 -0400)]
Merge tag 'late-bugfix-for-2020.10' of https://gitlab.denx.de/u-boot/custodians/u-boot-i2c

i2c late bugfix for v2020.10
- rcar_i2c: Fix i2c read/write errors
  fixes commit 7c8f821e ("i2c: rcar_i2c: Set the slave address from rcar_i2c_xfer")

4 years agoMerge branch 'master' of git://git.denx.de/u-boot-sh
Tom Rini [Thu, 1 Oct 2020 12:36:09 +0000 (08:36 -0400)]
Merge branch 'master' of git://git.denx.de/u-boot-sh

4 years agoarm: mvebu: Espressobin: Fix checks against machine compatible strings
Andre Heider [Tue, 29 Sep 2020 12:34:26 +0000 (14:34 +0200)]
arm: mvebu: Espressobin: Fix checks against machine compatible strings

The patches changing the compatible strings to the ones used by Linux have
not been merged yet, so fix the checks to use the current in-tree ones.

Reported-by: Pali Rohár <pali@kernel.org>
Signed-off-by: Andre Heider <a.heider@gmail.com>
Reviewed-by: Pali Rohár <pali@kernel.org>
4 years agoarm: mvebu: Espressobin: Instructions for more MAC addresses in README.marvell
Pali Rohár [Fri, 25 Sep 2020 07:54:16 +0000 (09:54 +0200)]
arm: mvebu: Espressobin: Instructions for more MAC addresses in README.marvell

Some Espressobin boards got assigned more than one MAC address. Update
instructions how to correctly store and preserve all MAC addresses.

Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Andre Heider <a.heider@gmail.com>
4 years agoi2c: rcar_i2c: Fix i2c read/write errors
Lad Prabhakar [Wed, 30 Sep 2020 12:24:12 +0000 (13:24 +0100)]
i2c: rcar_i2c: Fix i2c read/write errors

commit 7c8f821e5dde ("i2c: rcar_i2c: Set the slave address from
rcar_i2c_xfer") blindly called rcar_i2c_set_addr() with read argument
always set to 1 during xfer which introduced read/write errors, whereas
earlier rcar_i2c_read_common() called rcar_i2c_set_addr() with read set to
1 and rcar_i2c_write_common() called rcar_i2c_set_addr() with read set 0.

Fixes: 7c8f821e5dde ("i2c: rcar_i2c: Set the slave address from rcar_i2c_xfer")
Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
4 years agooptee: copy FDT OP-TEE related nodes before generic FDT changes
Etienne Carriere [Fri, 5 Jun 2020 07:22:54 +0000 (09:22 +0200)]
optee: copy FDT OP-TEE related nodes before generic FDT changes

Move call to optee_copy_fdt_nodes() introduced by commit 6ccb05eae01b
before generic changes in kernel FDT so that platform specific changes
are not overridden by the changes made by this function.

Fixes: 6ccb05eae01b ("image: fdt: copy possible optee nodes to a loaded devicetree")
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
4 years agoMerge branch '2020-09-29-assorted-fixes'
Tom Rini [Tue, 29 Sep 2020 17:24:50 +0000 (13:24 -0400)]
Merge branch '2020-09-29-assorted-fixes'

- Assorted typo fixes
- Correctly migrate some CONFIG_PREBOOT cases to defconfig
- Coverity issues in squashfs

4 years agovideo: typo Normlly
Heinrich Schuchardt [Tue, 29 Sep 2020 00:27:41 +0000 (02:27 +0200)]
video: typo Normlly

%s/Normlly/Normally/

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
4 years agoREADME: Fix typo in Board Initialisation Flow
Naoki Hayama [Thu, 24 Sep 2020 06:57:19 +0000 (15:57 +0900)]
README: Fix typo in Board Initialisation Flow

I suppose 'these' might be 'there'.

Signed-off-by: Naoki Hayama <naoki.hayama@lineo.co.jp>
4 years agofs/squashfs: parameter check sqfs_read_metablock()
Heinrich Schuchardt [Wed, 23 Sep 2020 19:13:51 +0000 (21:13 +0200)]
fs/squashfs: parameter check sqfs_read_metablock()

We should check if the incoming parameter file_mapping is not NULL instead
of checking after adding an offset.

Reported-by: Coverity CID 307210
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
4 years agomtd: fix typos in drivers/mtd/Kconfig, drivers/mtd/renesas_rpc_hf.c
Heinrich Schuchardt [Thu, 17 Sep 2020 16:07:44 +0000 (18:07 +0200)]
mtd: fix typos in drivers/mtd/Kconfig, drivers/mtd/renesas_rpc_hf.c

Fix a typo

%s/interract/interact/

Use Samsung's capitalization of their trademarks

%s/onenand/OneNAND/
%s/Hyperflash/HyperFlash/

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Stefan Roese <sr@denx.de>
[trini: Add other Hyperflash cases as noted by Stefan]
Signed-off-by: Tom Rini <trini@konsulko.com>
4 years agoDefine default CONFIG_PREBOOT with right config option
Peter Robinson [Tue, 29 Sep 2020 09:48:14 +0000 (10:48 +0100)]
Define default CONFIG_PREBOOT with right config option

The 44758771ee commit removes CONFIG_PREBOOT but actually sets the USE_PREBOOT
Kconfig option which isn't CONFIG_PREBOOT and is also a bool option which means
we regress because 'usb start' isn't run when expected, it should also be run
for devices that have USB storage because keyboards aren't the only thing we
might need the USB bus for.

Fixes: 44758771ee ("arm: move CONFIG_PREBOOT="usb start" to KConfig")
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
Cc: Jonas Smedegaard <dr@jones.dk>
Cc: Neil Armstrong <narmstrong@baylibre.com>
4 years agoMerge tag 'efi-2020-10-rc6' of https://gitlab.denx.de/u-boot/custodians/u-boot-efi
Tom Rini [Mon, 28 Sep 2020 12:26:49 +0000 (08:26 -0400)]
Merge tag 'efi-2020-10-rc6' of https://gitlab.denx.de/u-boot/custodians/u-boot-efi

Pull request for UEFI sub-system for efi-2020-10-rc6

The following UEFI related issues are fixed:

* restore the global data pointer in the RISC-V trap handler
* install EFI_RNG_PROTOCOL only if we have a random number generator
* display human readable string for EFI_RNG_PROTOCOL in efidebug command

4 years agoMerge tag 'u-boot-amlogic-20200928' of https://gitlab.denx.de/u-boot/custodians/u...
Tom Rini [Mon, 28 Sep 2020 12:26:34 +0000 (08:26 -0400)]
Merge tag 'u-boot-amlogic-20200928' of https://gitlab.denx.de/u-boot/custodians/u-boot-amlogic

- fix RNG driver probe & linux EFI KASLR boot on GXL, GXM, G12A, G12B & SM1 based boards

4 years agoriscv: restore global data pointer in trap handler
Heinrich Schuchardt [Sat, 26 Sep 2020 05:50:36 +0000 (07:50 +0200)]
riscv: restore global data pointer in trap handler

The gp register is used to store U-Boot's global data pointer. We should
not assume that an UEFI application leaves the gp register unchanged as
the UEFI specifications does not define who is the owner of the gp and tp
registers.

So the following sequence should be followed in the trap handler:

* save the caller's gp register
* restore the global data pointer
* serve interrupts or print crash dump and reset
* restore the caller's gp register

Cc: Abner Chang <abner.chang@hpe.com>
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Bin Meng <bin.meng@windriver.com>
Reviewed-by: Rick Chen <rick@andestech.com>
4 years agorng: meson: make core clock optional
Neil Armstrong [Fri, 25 Sep 2020 07:19:20 +0000 (09:19 +0200)]
rng: meson: make core clock optional

This fixes HWRNG support on Amlogic GXL, GXM, G12A, G12B & SM1
based boards dues to the lack of the core clock in the device tree.

It was reported breaking EFI boot in the Linux EFI stub, because the
EFI_RNG_PROTOCOL didn't check for the RNG device presence before
installing itself.

The Linux amlogic,meson-rng.yaml doesn't mandate the core clock,
this the clock should be ignores if not present.

Nevertheless, the clock should be present and this should be fixed
on the Linux meson-gxl.dtsi & meson-g12-common.dtsi then synced
with U-Boot.

The change has been tested on a Khadas VIM3, which uses the common
meson-g12-common.dtsi like the Odroid-C4 & Odroid-N2 in Scott's
report, along with the RNG cmd.

Cc: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reported-by: Scott K Logan <logans@cottsay.net>
Fixes: bc40eb278b ("drivers/rng: add Amlogic hardware RNG driver")
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Tested-by: Scott K Logan <logans@cottsay.net>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
4 years agoefi_loader: installation of EFI_RNG_PROTOCOL
Heinrich Schuchardt [Fri, 25 Sep 2020 10:50:19 +0000 (12:50 +0200)]
efi_loader: installation of EFI_RNG_PROTOCOL

Having an EFI_RNG_PROTOCOL without a backing RNG device leads to failure
to boot Linux 5.8.

Only install the EFI_RNG_PROTOCOL if we have a RNG device.

Reported-by: Scott K Logan <logans@cottsay.net>
Cc: Neil Armstrong <narmstrong@baylibre.com>
Cc: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
4 years agoefi_loader: efidebug display RNG protocol
Heinrich Schuchardt [Sun, 27 Sep 2020 12:50:25 +0000 (14:50 +0200)]
efi_loader: efidebug display RNG protocol

Add the Random Number Generator (RNG) protocol to the GUIDs that the
'efidebug dh' protocol can replace by a text.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
4 years agoboard: renesas: ebisu: Drop CA57 check in reset_cpu()
Lad Prabhakar [Thu, 17 Sep 2020 14:28:22 +0000 (15:28 +0100)]
board: renesas: ebisu: Drop CA57 check in reset_cpu()

Renesas Ebisu board is based on R-Car E3 SoC which has dual CA53 and
a CR7.

This patch drops check for cputype from reset_cpu() and also drops the
corresponding CA57 macros. While at it also dropped RST_RSTOUTCR macro
which is unused.

Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Biju Das <biju.das.jz@bp.renesas.com>
4 years agoMerge https://gitlab.denx.de/u-boot/custodians/u-boot-fsl-qoriq
Tom Rini [Fri, 25 Sep 2020 16:55:06 +0000 (12:55 -0400)]
Merge https://gitlab.denx.de/u-boot/custodians/u-boot-fsl-qoriq

- Bug fixes related to PCIe, pfe, xfi, gpio, reset, vid, env, and usb on
  layerscape products

4 years agopci: layerscape: Fixup PCIe EP mode DT nodes for LX2160A rev2
Hou Zhiqiang [Sun, 13 Sep 2020 15:12:50 +0000 (23:12 +0800)]
pci: layerscape: Fixup PCIe EP mode DT nodes for LX2160A rev2

LX2160A rev2 uses different PCIe controller, so EP mode DT
nodes also need to be fixed up.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agonet: pfe_eth: Remove non-DM code check from pfe_spi_flash_init
Kuldeep Singh [Fri, 11 Sep 2020 11:06:49 +0000 (16:36 +0530)]
net: pfe_eth: Remove non-DM code check from pfe_spi_flash_init

CONFIG_DM_SPI_FLASH is only supported now with passing of driver
conversion deadline from non-DM to DM model. Hence, it's safe to remove
non-DM code check from pfe_spi_flash_init.

Also use CONFIG_ENV_SPI_MODE and CONFIG_ENV_SPI_MAX_HZ instead of
reading reading values from DT.

Signed-off-by: Kuldeep Singh <kuldeep.singh@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agonet: pfe_eth: Fix resoure leak in pfe_spi_flash_init
Kuldeep Singh [Fri, 11 Sep 2020 11:06:48 +0000 (16:36 +0530)]
net: pfe_eth: Fix resoure leak in pfe_spi_flash_init

Fix Coverity issue: RESOURCE_LEAK.
leaked_storage: Variable addr going out of scope leaks the storage it
points to.

Fixes: e0152dbed683 ("net: pfe_eth: Use spi_flash_read API to access
flash memory")
Signed-off-by: Kuldeep Singh <kuldeep.singh@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agoarm: dts: lx2160a: Add IO range
Wasim Khan [Wed, 23 Sep 2020 14:04:45 +0000 (19:34 +0530)]
arm: dts: lx2160a: Add IO range

Add IO range property to fix below error on uboot
PCI: Failed autoconfig bar 18

Signed-off-by: Wasim Khan <wasim.khan@nxp.com>
[Rebased]
Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agodriver: net: fm: add support for XFI
Madalin Bucur [Fri, 11 Sep 2020 07:24:09 +0000 (10:24 +0300)]
driver: net: fm: add support for XFI

All the 10G ports that were working in XFI mode were described as
using XGMII (as PHY_INTERFACE_MODE_XFI was not added at the time).
Add the minimal changes required for the FMan code to support XFI.

Signed-off-by: Madalin Bucur <madalin.bucur@oss.nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agols1012a, pfe_eth: Update probe to avoid resource leak
Chaitanya Sakinam [Thu, 10 Sep 2020 11:20:54 +0000 (16:50 +0530)]
ls1012a, pfe_eth: Update probe to avoid resource leak

PFE DDR addresses are now stored on to a stack varaiable rather
dynamic allocation.

Signed-off-by: Chaitanya Sakinam <chaitanya.sakinam@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agols1012a, pfe_eth: correction in delay implementation
Chaitanya Sakinam [Thu, 10 Sep 2020 11:20:53 +0000 (16:50 +0530)]
ls1012a, pfe_eth: correction in delay implementation

correction in delay implementation before we exit out of tx timeout.

Signed-off-by: Chaitanya Sakinam <chaitanya.sakinam@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agodrivers: net: phy: Use Aquantia driver for AQR113C
Madalin Bucur [Thu, 10 Sep 2020 10:23:39 +0000 (13:23 +0300)]
drivers: net: phy: Use Aquantia driver for AQR113C

Add support for AQR113C PHY

Signed-off-by: Madalin Bucur <madalin.bucur@oss.nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agodrivers: net: ldpaa_eth: lx2160a: fix bug in checking if a DPMAC is enabled
Grigore Popescu [Thu, 10 Sep 2020 09:59:03 +0000 (12:59 +0300)]
drivers: net: ldpaa_eth: lx2160a: fix bug in checking if a DPMAC is enabled

The next DPMAC was always verified if it is enabled.  In case of
DPMAC@6, the DPMAC@7 is verified.  As DPMAC@7 is disabled, DPMAC@6 will
be considered disabled and not detected by uboot.

Signed-off-by: Grigore Popescu <grigore.popescu@nxp.com>
Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agoarmv8: dts: fsl-lx2160a: add gpio0 gpio1 gpio3 DT nodes
hui.song [Thu, 10 Sep 2020 09:28:30 +0000 (17:28 +0800)]
armv8: dts: fsl-lx2160a: add gpio0 gpio1 gpio3 DT nodes

add gpio0 gpio1 gpio3 DT nodes to fsl-lx21600.dtsi

Signed-off-by: hui.song <hui.song_1@nxp.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agoarmv8: lx2160a: fix reset sequence
Meenakshi Aggarwal [Wed, 9 Sep 2020 08:36:05 +0000 (14:06 +0530)]
armv8: lx2160a: fix reset sequence

Make sure that SW_RST_REQ and RST_REQ_MSK are cleared
before triggering hardware reset request.

Signed-off-by: Thirupathaiah Annapureddy <thiruan@linux.microsoft.com>
Signed-off-by: Meenakshi Aggarwal <meenakshi.aggarwal@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agolx2160: Correct sd_boot environment variable
Meenakshi Aggarwal [Tue, 1 Sep 2020 07:26:28 +0000 (12:56 +0530)]
lx2160: Correct sd_boot environment variable

Signed-off-by: Meenakshi Aggarwal <meenakshi.aggarwal@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agoboard: freescale: emc2305: Pass chip_addr to set_fan_speed
Wasim Khan [Thu, 27 Aug 2020 13:43:34 +0000 (19:13 +0530)]
board: freescale: emc2305: Pass chip_addr to set_fan_speed

emc2305 is a common driver. It should not use platform specific
i2c address for slave device.
Pass chip_addr as agrument to emc2305_init() and set_fan_speed()
so that emc2305 driver can be used with different platforms.

Signed-off-by: Wasim Khan <wasim.khan@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agoboard/freescale/lsch3: Correct entry for 0.9v
Martin Kaistra [Fri, 21 Aug 2020 11:44:13 +0000 (13:44 +0200)]
board/freescale/lsch3: Correct entry for 0.9v

According to the reference manual of LS2088A, for a VDD voltage of
0.9V, the entry should be at 01000b.

Fixes: 4911948ec73 ("board/freescale,lsch3: Add entry for 0.9v")
Signed-off-by: Martin Kaistra <martin.kaistra@linutronix.de>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agoarm64: Layerscape: Survive LPI one-way reset workaround
Hou Zhiqiang [Thu, 6 Aug 2020 06:38:19 +0000 (14:38 +0800)]
arm64: Layerscape: Survive LPI one-way reset workaround

The workaround of LPI one-way reset issue is broken by the series:
https://patchwork.ozlabs.org/project/uboot/list/?series=192398

This patch is to add DT node for GIC RD tables and create corresponding
reserved-memory node in kernel DT to fix it.

Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
4 years agofsl-layerscape: enable dwc3 snooping feature
Ran Wang [Wed, 5 Aug 2020 07:07:27 +0000 (15:07 +0800)]
fsl-layerscape: enable dwc3 snooping feature

Configure DWC3’s cache type to ‘cacheable’ for better
performance. Actually related register definition and values are SoC
specific, which means this setting is only applicable to Layerscape SoC,
not generic for all platforms which have integrated DWC3 IP.

Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>