26 Aug, 2020
2 commits
-
Fix Coverity issue 9006652. In sc_seco_secvio_dgo_config, the data pointer
is dereferenced earlier than NULL checking. Following the SCFW API, remove
the NULL checking, always assume the data pointer is valid, because it is
also a TX parameter.Signed-off-by: Ye Li
Reviewed-by: Peng Fan
(cherry picked from commit c3c78bb933c86900a74ae616ad1e7085244df8d2) -
Update SCFW API to add sc_seco_v2x_build_info API which can
get the version and commit of V2X firmware on 8DXLSigned-off-by: Ye Li
Reviewed-by: Peng Fan
(cherry picked from commit 655e05e6751ebbd94dd9ab1b77ed1020a661a115)
16 Jun, 2020
6 commits
-
Add SCFW API sc_misc_get_boot_container to get current boot container
set index:
1 - primary container set.
2 - secondary container set.Note:
This feature is added by ROM since iMX8QM B0, so it does not support
iMX8QXP B0.Signed-off-by: Ye Li
Reviewed-by: Peng Fan -
Remove the child device binding codes for clk and iomux nodes, because
the misc uclass has added such operation in post-bind. If we keep the
codes in scu bind, child devices will be created twices. Find the
problem by "dm uclass" command.uclass 24: clk
0 * clk @ fce22380, seq 0, (req -1)
1 clk @ fce23110uclass 67: pinctrl
0 * iomuxc @ fce22470, seq 0, (req -1)
1 iomuxc @ fce231c0After the fix:
uclass 24: clk
0 * clk @ fce22380, seq 0, (req -1)uclass 67: pinctrl
0 * iomuxc @ fce22470, seq 0, (req -1)Signed-off-by: Ye Li
Reviewed-by: Peng Fan -
Porting the scu api 'sc_misc_get_button_status()' to get the
ON-OFF button status.Test: Get the ON-OFF button status.
Change-Id: I8e06ef4dc170750fe2dfbeeba7850b5e0dcfc774
Signed-off-by: Ji Luo -
To avoid both A/B slots are marked as unbootable because
of some random failures, we will need to reset at spl stage
when current slot load/verify fail but already with flag
"successful_boot" set.imx8q can't be reset via the psci driver because the atf
is not avaiable at spl stage, porting the sc_pm_reboot()
scu api so we can do reset at spl stage for imx8qm/imx8qxp
mek boards.Test: reset on imx8qm_mek and imx8qxp_mek.
Change-Id: Ifa0bdea9393e413942a8a0188a4f937fa0aa9ab8
Signed-off-by: Ji Luo
(cherry picked from a5c5748101c383bc3afb424a3ef2689ab2664846) -
Currently it's not possible to use UUU to program ECC words. U-Boot is
asking for a second confirmation when programming ECC covered words.
Introduce a environment variable "force_prog_ecc", if the env is set
to "y" or "1", then the ecc fuse checking is skipped.In uuu usage, just set this variable in uuu script, then there is no
second confirmation needed.Signed-off-by: Ye Li
Reviewed-by: Peng Fan -
SCFW has fixed a overflow issue in sc_rm_is_pad_owned API. This
requires u-boot to update API implementation, since it will cause
compatible issue. Otherwise all pad checking will have problem and
cause pad setting not continue.Due to the compatible issue, the new u-boot only works with new
SCFW (API version: 1.21).old scfw + old u-boot: API overflow issue
old scfw + new u-boot, or new scfw + old u-boot: API compatible issue
new scfw + new u-boot: WorkingSigned-off-by: Ye Li
Reviewed-by : Jason Liu(cherry picked from commit e84fb02056fe50146856320b96de909dad4c0058)
06 May, 2020
7 commits
-
Add soc id in cpu codes and conditionals.
Also add support for v2x container on 8DXL.Signed-off-by: Ye Li
Signed-off-by: Teo Hall
(cherry picked from commit 35691a6b85c3240b0e3b9f9a8da9fc6328bf92d8) -
Add a module to configure the tamper and secure violation of
the SNVS using the SCU API.The module also adds some commands:
- snvs_cfg: Configure the SNVS HP and LP registers
- snvs_dgo_cfg: Configure the SNVS DGO bloc if present (8QXP)
- tamper_pin_cfg: Change the configuration of the tamper pins
- snvs_clear_status: Allow to write to LPSR and LPTDSR to clear status bitsSigned-off-by: Franck LENORMAND
(cherry picked from commit 75aa7f2254f0883aa14568ac32702b1ca15367e4)
Signed-off-by: Ye Li
(cherry picked from commit 2f3804bdfe29a3c134a1753d6fa92881ea3e2b30) -
SECO provides APIs to support CAAM manufacturing protection:
- sc_seco_get_mp_key()
- sc_seco_get_mp_sign()
- sc_seco_update_mpmr()Add SCFW APIs support.
Signed-off-by: Breno Lima
(cherry picked from commit 18def97fc07fec226f2e1342f2008bf449c453c2) -
Sync SCFW API to version 1.6, commit b3c575a62b0e2
Current codes have wrong definitions for SC_MISC_SECO_AUTH_SECO_FW,
SC_MISC_SECO_AUTH_HDMI_TX_FW and SC_MISC_SECO_AUTH_HDMI_RX_FW and
cause HDP firmware authentication failed.Signed-off-by: Ye Li
-
When power on some sources in Video system, current timeout 10ms is
too short and returns before SCU response. So increase the timeout
to 1s.Signed-off-by: Ye Li
(cherry picked from commit f9be201c9e20520a9362d5fcb2524c0cbfffb425) -
Add a common iMX MU driver in misc uclass to communicate with M4.
The MU message format is defined to use 4 words as below, the driver
will use all 4 TR/RR in MU to pass one message|WORD 0 | WORD 1 | WORD 2 | WORD 3 |
|SEQ | TYPE | PAYLOAD ADDRESS | PAYLOAD LENGTH |- SEQ:
A sequence id starts from 0 and increases for each request message- TYPE:
0x1: Request. Message sent from AP will set to this value.
0x2: Response. Message responded from M4 set to this value.
0x3: MU A side is ready.
0x4: MU B side is ready.- PAYLOAD ADDRESS:
A pointer to the memory address where the uplayer message is stored- PAYLOAD LENGTH:
The uplayer message lengthSigned-off-by: Ye Li
(cherry picked from commit aba0e51cc397e1d98be950f9c15619de06ebf782)
(cherry picked from commit 57c95d6476052a052f026f8e4d7c98bd05792a1f) -
Add the second ECC fuse area for 8QM which is different with 8QXP
Signed-off-by: Ye Li
26 Feb, 2020
1 commit
-
Its possible that k3_avs_priv is NULL because the driver may not have
been probed yet. Therefore check if pointer is valid before
dereferencing it.Signed-off-by: Vignesh Raghavendra
11 Feb, 2020
2 commits
-
sandbox conversion to SDL2
TPM TEE driver
Various minor sandbox video enhancements
New driver model core utility functions -
- Move P2SB from Apollo Lake to a more generic location
- Add a function to find a device by drvdata in DM core
- Enhancement of DM IRQ uclass driver
- Add a clock driver for Intel devices
- Add support for ACPI general-purpose events
- Add a TPM driver for H1/Cr50
- Enable TPM on Google Chromebook Coral
10 Feb, 2020
1 commit
-
Set the correct offset length and chip address offset mask for each
device to allow correct access to total capacity of the devices.Signed-off-by: Robert Beckett
07 Feb, 2020
2 commits
-
At present driver model supports the IRQ uclass but there is no way to
request a particular interrupt for a driver.Add a mechanism, similar to clock and reset, to read the interrupts
required by a device from the device tree and to request those interrupts.U-Boot itself does not have interrupt-driven handlers, so just provide a
means to read and clear an interrupt. This can be useful to handle
peripherals which must use an interrupt to determine when data is
available, for example.Bring over the basic binding file as well, from Linux v5.4. Note that the
older binding is not supported in U-Boot; the newer 'special form' must be
used.Add a simple test of the new functionality.
Signed-off-by: Simon Glass
Reviewed-by: Bin Meng -
There can be different types of interrupt controllers in a system and some
drivers may need to distinguish between these. In general this can be
handled using the device tree by adding the interrupt information to
device nodes.However on x86 devices we have interrupt controllers which are not tied
to any particular device and not really used in U-Boot. These still need
to be inited, so a convenient method is to give each controller a type
and allow a particular controller type to be probed.Add support for this in sandbox along with a test.
Signed-off-by: Simon Glass
Reviewed-by: Bin Meng
[bmeng: remove the new bland line at EOF of test/dm/irq.c]
Signed-off-by: Bin Meng
06 Feb, 2020
4 commits
-
Now that we can use direct access to the system malloc() in sandbox, drop
the remaining uses of os_malloc().The only one remaining now is for the RAM buffer, which we do want to be
at a known address, so this is intended.Signed-off-by: Simon Glass
-
At present dm/device.h includes the linux-compatible features. This
requires including linux/compat.h which in turn includes a lot of headers.
One of these is malloc.h which we thus end up including in every file in
U-Boot. Apart from the inefficiency of this, it is problematic for sandbox
which needs to use the system malloc() in some files.Move the compatibility features into a separate header file.
Signed-off-by: Simon Glass
-
At present devres.h is included in all files that include dm.h but few
make use of it. Also this pulls in linux/compat which adds several more
headers. Drop the automatic inclusion and require files to include devres
themselves. This provides a good indication of which files use devres.Signed-off-by: Simon Glass
Reviewed-by: Anatolij Gustschin -
At present this method uses a non-const udevice pointer, but the call
should not modify the device. Use a const pointer.Signed-off-by: Simon Glass
18 Jan, 2020
2 commits
-
At present panic() is in the vsprintf.h header file. That does not seem
like an obvious choice for hang(), even though it relates to panic(). So
let's put hang() in its own header.Signed-off-by: Simon Glass
[trini: Migrate a few more files]
Signed-off-by: Tom Rini -
This seems pretty old now. It has not been converted to driver model and
is not used by any boards.Drop it.
Signed-off-by: Simon Glass
09 Jan, 2020
1 commit
-
---------------------------------------------------------------------
Add i.MX8MP SoC and EVK board
Update README for i.MX8MN EVK and fix mmc env
Add pca9450 driver
--------------------------------------------------------------------Travis: https://travis-ci.org/sbabic/u-boot-imx/builds/634211885
08 Jan, 2020
1 commit
-
i.MX8MP use similar ocotp as i.MX8MN, but has changed fuse banks
and ctrl register bit definitions, so update to reflect that.Reviewed-by: Ye Li
Signed-off-by: Peng Fan
18 Dec, 2019
1 commit
-
- Various x86 common codes updated for TPL/SPL
- I2C designware driver updated for PCI
- ICH SPI driver updated to support Apollo Lake
- Add Intel FSP2 base support
- Intel Apollo Lake platform specific drivers support
- Add a new board Google Chromebook Coral
17 Dec, 2019
4 commits
-
Add ability to query size of eeprom device and partitions
Signed-off-by: Robert Beckett
Reviewed-by: Heiko Schocher -
Add ability to partition eeprom via devicetree bindings
Signed-off-by: Robert Beckett
Reviewed-by: Heiko Schocher -
Add support for setting the chip address offset mask to EEPROM sumulator
and add tests to test it.Signed-off-by: Robert Beckett
Reviewed-by: Heiko Schocher -
Improve i2c EEPROM simulator testing by providing access functions to
check the previous chip addr and offset.Given that we can now directly test the offsets, also simplified the
offset mapping and allow for wrapping acceses.Signed-off-by: Robert Beckett
Reviewed-by: Heiko Schocher
15 Dec, 2019
4 commits
-
Add a simple sandbox test for this uclass.
Signed-off-by: Simon Glass
Reviewed-by: Bin Meng -
Update this uclass to support the needs of the Apollo Lake ITSS. It
supports four operations.Move the uclass into a separate directory so that sandbox can use it too.
Add a new Kconfig to control it and enable this on x86.Signed-off-by: Simon Glass
Reviewed-by: Bin Meng -
Add a sandbox driver and PCI-device emulator for p2sb. Also add a test
which uses a simple 'adder' driver to test the p2sb functionality.Signed-off-by: Simon Glass
Reviewed-by: Bin Meng -
The Primary-to-Sideband bus (P2SB) is used to access various peripherals
through memory-mapped I/O in a large chunk of PCI space. The space is
segmented into different channels and peripherals are accessed by
device-specific means within those channels. Devices should be added in
the device tree as subnodes of the p2sb.This adds a uclass and enables it for sandbox.
Signed-off-by: Simon Glass
Reviewed-by: Bin Meng
11 Dec, 2019
1 commit
-
Chromium EC commands can be up to 16-bits, so using a uint8_t here can
cause truncation. Update to use a uint instead.It looks like this should likely have been done as a part of
9fea76f5d30264dc08ac591a7a89427b8441555b, but this function was skipped
for some reason.Signed-off-by: Michael Auchter
Cc: Simon Glass
Reviewed-by: Simon Glass
03 Dec, 2019
1 commit
-
These functions do not use driver model but are still used. Move them to a
new eeprom.h header file.Signed-off-by: Simon Glass
Reviewed-by: Tom Rini