]> Git Repo - J-u-boot.git/log
J-u-boot.git
3 days agoMerge patch series "Add fdt-fixups for AM62P variants" master
Tom Rini [Tue, 14 Jan 2025 21:51:47 +0000 (15:51 -0600)]
Merge patch series "Add fdt-fixups for AM62P variants"

Aparna Patra <[email protected]> says:

This series implements fdt fixups, by reading hardware
information from registers and accordingly delete/modify
the DT nodes, at run-time.

Logs for AM62P boot:
https://gist.github.com/itsme-aparna/b889fe59882c1acf0ef25a644bd325c4

Link: https://lore.kernel.org/r/[email protected]
3 days agoarm: mach-k3: am62p: Set a53 cpu freq based on speed-grade
Aparna Patra [Wed, 8 Jan 2025 04:49:39 +0000 (10:19 +0530)]
arm: mach-k3: am62p: Set a53 cpu freq based on speed-grade

The maximum frequency of the A53 CPU on the AM62P depends on the speed
grade of the SoC. This value is hardcoded in the DT for all AM62P
variants, potentially causing specifications to be exceeded. Moreover,
setting a common lower frequency for all variants increases boot time.
To prevent these issues, modify the DT at runtime from the R5 core to
adjust the A53 CPU frequency.

Signed-off-by: Aparna Patra <[email protected]>
Reviewed-by: Bryan Brattlof <[email protected]>
3 days agoarm: mach-k3: am62p: Fixup a53 max cpu frequency by speed-grade
Aparna Patra [Wed, 8 Jan 2025 04:49:38 +0000 (10:19 +0530)]
arm: mach-k3: am62p: Fixup a53 max cpu frequency by speed-grade

AM62P SoC has multiple speed grades. Add function to delete
non-relevant CPU frequency nodes, based on the information
retrieved from hardware registers. Fastest grade's maximum
frequency also depends on PMIC voltage, hence to simplify
implementation use the smaller value.

Signed-off-by: Aparna Patra <[email protected]>
Reviewed-by: Bryan Brattlof <[email protected]>
3 days agoarm: mach-k3: am62p: Fixup thermal zone critical points
Aparna Patra [Wed, 8 Jan 2025 04:49:37 +0000 (10:19 +0530)]
arm: mach-k3: am62p: Fixup thermal zone critical points

Read the max temperature for the SoC temperature grade from the hardware
and modify the critical trip nodes on each thermal zone of FDT at
runtime so they are correct with the hardware value for its grade.

Signed-off-by: Aparna Patra <[email protected]>
Reviewed-by: Bryan Brattlof <[email protected]>
3 days agoarm: mach-k3: am62p: Fixup CPU core, CAN-FD and Video-codec nodes in fdt
Aparna Patra [Wed, 8 Jan 2025 04:49:36 +0000 (10:19 +0530)]
arm: mach-k3: am62p: Fixup CPU core, CAN-FD and Video-codec nodes in fdt

AM62P SOC is available in multiple variants:
-CPU cores (Cortex-A) AM62Px1 (1 core),
 AM62Px2 (2 cores), AM62Px4 (4 cores)
-With and without CAN-FD & Video-codec support

Remove the relevant FDT nodes by reading the actual configuration
from the SoC registers, with that change it is possible to have a single
dts/dtb file handling the different variant at runtime.

Signed-off-by: Aparna Patra <[email protected]>
Reviewed-by: Bryan Brattlof <[email protected]>
3 days agoMerge patch series "Inline ECC Series"
Tom Rini [Tue, 14 Jan 2025 21:49:41 +0000 (15:49 -0600)]
Merge patch series "Inline ECC Series"

Santhosh Kumar K <[email protected]> says:

Hello,

This series adds support for Inline ECC in DDR for AM64X, AM62X,
AM62AX, AM62PX, J721E, J721S2, J722S and J784S4 devices.

Test Results: https://gist.github.com/santhosh21/88de920771ed2efa0463a5a367cb8d7b

Link: https://lore.kernel.org/r/[email protected]
3 days agoboard: ti: Pull redundant DDR functions to a common location and Fixup DDR size when...
Santhosh Kumar K [Mon, 6 Jan 2025 09:07:08 +0000 (14:37 +0530)]
board: ti: Pull redundant DDR functions to a common location and Fixup DDR size when ECC is enabled

As there are few redundant functions in board/ti/*/evm.c files, pull
them to a common location of access to reuse and include the common file
to access the functions.

Call k3-ddrss driver through fixup_ddr_driver_for_ecc() to fixup the
device tree and resize the available amount of DDR, if ECC is enabled.
Otherwise, fixup the device tree using the regular
fdt_fixup_memory_banks().

Also call dram_init_banksize() after every call to
fixup_ddr_driver_for_ecc() is made so that gd->bd is populated
correctly.

Ensure that fixup_ddr_driver_for_ecc() is agnostic to the number of DDR
controllers present.

Signed-off-by: Santhosh Kumar K <[email protected]>
Signed-off-by: Neha Malcom Francis <[email protected]>
Reviewed-by: Wadim Egorov <[email protected]>
3 days agoarm: mach-k3: Set NR_DRAM_BANKS to 2
Neha Malcom Francis [Mon, 6 Jan 2025 09:07:07 +0000 (14:37 +0530)]
arm: mach-k3: Set NR_DRAM_BANKS to 2

Set CONFIG_NR_DRAM_BANKS to 2 as we have two banks described in the
memory/ node for lower and higher addressible DDR regions.

This allows use of FDT functions from fdt_support.c to set up and fix up
the memory/ node correctly.

Signed-off-by: Neha Malcom Francis <[email protected]>
Signed-off-by: Santhosh Kumar K <[email protected]>
3 days agoram: k3-ddrss: Remove 'ti,ecc-enable' support
Santhosh Kumar K [Mon, 6 Jan 2025 09:07:06 +0000 (14:37 +0530)]
ram: k3-ddrss: Remove 'ti,ecc-enable' support

The functionality of enabling Inline ECC is now controlled by
CONFIG_K3_INLINE_ECC. So, remove the support for 'ti,ecc-enable'
property to avoid redundancy and to ensure the Inline ECC feature is
mananged through build-time config.

Signed-off-by: Santhosh Kumar K <[email protected]>
Reviewed-by: Wadim Egorov <[email protected]>
3 days agodrivers: ram: Kconfig: Add CONFIG_K3_INLINE_ECC
Neha Malcom Francis [Mon, 6 Jan 2025 09:07:05 +0000 (14:37 +0530)]
drivers: ram: Kconfig: Add CONFIG_K3_INLINE_ECC

Add CONFIG_K3_INLINE_ECC so that ECC functions can be compiled into R5 SPL
only when the config has been enabled.

Signed-off-by: Neha Malcom Francis <[email protected]>
Signed-off-by: Santhosh Kumar K <[email protected]>
Reviewed-by: Wadim Egorov <[email protected]>
3 days agoram: k3-ddrss: Enable ECC interrupts
Santhosh Kumar K [Mon, 6 Jan 2025 09:07:04 +0000 (14:37 +0530)]
ram: k3-ddrss: Enable ECC interrupts

Enable ECC 1-bit error, 2-bit error, multiple 1-bit error interrupts
by setting the respective bits in the DDRSS_V2A_INT_SET_REG register.

Signed-off-by: Santhosh Kumar K <[email protected]>
3 days agoram: k3-ddrss: Setup ECC region start and range
Santhosh Kumar K [Mon, 6 Jan 2025 09:07:03 +0000 (14:37 +0530)]
ram: k3-ddrss: Setup ECC region start and range

Setup the ECC region's start and range using the device private data,
ddrss->ddr_bank_base[0] and ddrss->ddr_ram_size. Also, move start and
range of ECC regions from 32 bits to 64 bits to accommodate for
DDR greater than or equal to 4GB.

Signed-off-by: Santhosh Kumar K <[email protected]>
3 days agoram: k3-ddrss: Add k3_ddrss_ddr_bank_base_size_calc() to solve 'calculations restrict...
Santhosh Kumar K [Mon, 6 Jan 2025 09:07:02 +0000 (14:37 +0530)]
ram: k3-ddrss: Add k3_ddrss_ddr_bank_base_size_calc() to solve 'calculations restricted to 32 bits' issue

As R5 is a 32 bit processor, the RAM banks' base and size calculation
is restricted to 32 bits, which results in wrong values if bank's base
is greater than 32 bits or bank's size is greater than or equal to 4GB.

So, add k3_ddrss_ddr_bank_base_size_calc() to get the base address and
size of RAM's banks from the device tree memory node, and store in a
64 bit device private data which can be used for ECC reserved memory
calculation, Setting ECC range and Fixing up bank size in device tree
when ECC is enabled.

Signed-off-by: Santhosh Kumar K <[email protected]>
Reviewed-by: Wadim Egorov <[email protected]>
3 days agoram: k3-ddrss: Use the DDR controller BIST engine for ECC priming
Georgi Vlaev [Mon, 6 Jan 2025 09:07:01 +0000 (14:37 +0530)]
ram: k3-ddrss: Use the DDR controller BIST engine for ECC priming

The 1-bit inline ECC support in TI's DDRSS bridge requires
the configured memory regions to be preloaded with a pattern
before use. This is done by the k3-ddrss driver from the
R5 SPL in a 'for' loop. It takes around 10 seconds to fill
2GB of memory, for example. Memset can cut the time in half
and using DMA currently yields a similar result.

The BIST engine of DDR controller provides support for
initializing any memory region with a pattern. This
bypasses the DDRSS bridge, so the required inline ECC
data is not computed and populated in the memory. For
some values like zero, the computed ECC syndrome is also
zero and we can use these values to preload the memory
from the DDR controller, without the assistance of the
bridge.

The registers involved in the process are described in the
'DDR controller registers' topic in [1] AM62 and [2] J721E
reference manuals.

The patch replaces the 'for' loop memory fill function with
the BIST memory initialization procedure. This cuts the time
to preload the 2GB memory from 10 seconds down to 1 second.
The bist preload function uses the lpddr4 APIs in the k3-ddrss,
so this is compatible with devices with both 16-bit LPDDR4 and
32-bit LPDDR4 interfaces (e.g J721E).

[1] AM62x: https://www.ti.com/lit/pdf/spruiv7
[2] DRA829/TDA4VM: https://www.ti.com/lit/zip/spruil1

Signed-off-by: Georgi Vlaev <[email protected]>
Signed-off-by: Santhosh Kumar K <[email protected]>
3 days agoarm: dts: k3-*-ddr: Add ss_cfg reg entry
Santhosh Kumar K [Mon, 6 Jan 2025 09:07:00 +0000 (14:37 +0530)]
arm: dts: k3-*-ddr: Add ss_cfg reg entry

Add ss_cfg memory region which maps the DDRSS configuration region
for the memory controller node.

Signed-off-by: Santhosh Kumar K <[email protected]>
Signed-off-by: Neha Malcom Francis <[email protected]>
Tested-by: Neha Malcom Francis <[email protected]>
3 days agoMerge patch series "fdt_support: improve board_fdt_chosen_bootargs() for flexibility"
Tom Rini [Tue, 14 Jan 2025 21:43:07 +0000 (15:43 -0600)]
Merge patch series "fdt_support: improve board_fdt_chosen_bootargs() for flexibility"

Dmitry Rokosov <[email protected]> says:

This series consists of three patches.

The first patch modifies the function documentation style in the
include/fdt_support.h file to comply with kernel-doc requirements.

The second patch modifies the board_fdt_chosen_bootargs() function to
return a const char* type. This change clarifies to the caller that the
returned string should neither be freed nor modified. It aligns with the
existing fdt_setprop() function, which already utilizes a const char*
parameter. This promotes consistency within the codebase and enhances
code safety by preventing unintended modifications to the returned
string.

The third patch addresses the need for flexibility in providing kernel
command line arguments (bootargs) for different kernel images within the
same U-Boot environment. It introduces a read-only (RO) fdt_property
argument to the board_fdt_chosen_bootargs() function, allowing access to
the original chosen/bootargs data. This is crucial for scenarios where
different kernel versions require distinct console setups (e.g., ttyS0
for vendor kernels and ttyAML0 for upstream kernels). By enabling board
developers to either merge or replace the original bootargs, this
patch enhances the configurability of U-Boot for various kernel
images without relying on outdated configurations like CMDLINE_EXTEND.

CI/CD results: https://github.com/u-boot/u-boot/pull/716/checks

Link: https://lore.kernel.org/r/20241220-board_fdt_chosen_bootargs_improvements-v1-0-f6a7181787c5@salutedevices.com
3 days agocommon: fdt: hand over original fdt bootargs into board chosen handler
Dmitry Rokosov [Thu, 19 Dec 2024 21:42:10 +0000 (00:42 +0300)]
common: fdt: hand over original fdt bootargs into board chosen handler

Sometimes, it is necessary to provide an additional bootargs string to
the kernel command line.

We have a real scenario where one U-Boot blob needs to boot several
kernel images: the vendor-patched kernel image and the latest upstream
kernel image. The Amlogic (Meson architecture) tty driver has different
tty suffixes in these kernels: the vendor uses 'ttySx', while the
upstream implementation uses 'ttyAMLx'. The initial console setup is
provided to the kernel using the kernel command line (bootargs). For the
vendor kernel, we should use 'console=ttyS0,115200', while for the
upstream kernel, it must be 'console=ttyAML0,115200'. This means we have
to use different command line strings depending on the kernel version.

To resolve this issue, we cannot use the CMDLINE_EXTEND kernel
configuration because it is considered legacy and is not supported for
the arm64 architecture. CMDLINE_EXTEND is outdated primarily because we
can provide additional command line strings through the
'chosen/bootargs' FDT node. However, U-Boot uses this node to inject the
U-Boot bootargs environment variable content, which results in U-Boot
silently overriding all data in the 'chosen/bootargs' node. While we do
have the board_fdt_chosen_bootargs() board hook to address such issues,
this function lacks any FDT context, such as the original value of the
'chosen/bootargs' node.

This patch introduces a read-only (RO) fdt_property argument to
board_fdt_chosen_bootargs() to share the original 'chosen/bootargs' data
with the board code. Consequently, the board developer can decide how to
handle this information for their board setup: whether to drop it or
merge it with the bootargs environment.

Signed-off-by: Dmitry Rokosov <[email protected]>
Reviewed-by: Quentin Schulz <[email protected]>
3 days agofdt_support: board_fdt_chosen_bootargs() should return const char*
Dmitry Rokosov [Thu, 19 Dec 2024 21:42:09 +0000 (00:42 +0300)]
fdt_support: board_fdt_chosen_bootargs() should return const char*

It should be structured this way to demonstrate to the caller that
freeing the return value is unnecessary and that the caller cannot
modify it.
The function fdt_setprop() includes a parameter with a const char*
prototype, so it is better to use the const qualifier.

Signed-off-by: Dmitry Rokosov <[email protected]>
Reviewed-by: Heinrich Schuchardt <[email protected]>
3 days agoinclude/fdt_support: fix docstyle to comply with kernel-doc requirements
Dmitry Rokosov [Thu, 19 Dec 2024 21:42:08 +0000 (00:42 +0300)]
include/fdt_support: fix docstyle to comply with kernel-doc requirements

No errors from kernel-doc with this patch applied:
$ ./scripts/kernel-doc -v -none include/fdt_support.h
    include/fdt_support.h:17: info: Scanning doc for arch_fixup_fdt
    include/fdt_support.h:37: info: Scanning doc for fdt_root
    include/fdt_support.h:48: info: Scanning doc for fdt_chosen
    include/fdt_support.h:59: info: Scanning doc for fdt_initrd
    include/fdt_support.h:100: info: Scanning doc for fdt_fixup_memory
    include/fdt_support.h:115: info: Scanning doc for fdt_fixup_memory_banks
    include/fdt_support.h:148: info: Scanning doc for fdt_fixup_display
    include/fdt_support.h:176: info: Scanning doc for fdt_record_loadable
    include/fdt_support.h:205: info: Scanning doc for ft_board_setup
    include/fdt_support.h:218: info: Scanning doc for board_rng_seed
    include/fdt_support.h:231: info: Scanning doc for board_fdt_chosen_bootargs
    include/fdt_support.h:251: info: Scanning doc for ft_system_setup
    include/fdt_support.h:266: info: Scanning doc for fdt_shrink_to_minimum
    include/fdt_support.h:301: info: Scanning doc for fdt_copy_fixed_partitions
    include/fdt_support.h:314: info: Scanning doc for fdt_translate_address
    include/fdt_support.h:327: info: Scanning doc for fdt_translate_dma_address
    include/fdt_support.h:342: info: Scanning doc for fdt_get_dma_range
    include/fdt_support.h:464: info: Scanning doc for fdt_get_cells_len
    include/fdt_support.h:480: info: Scanning doc for fdtdec_get_child_count
    include/fdt_support.h:500: info: Scanning doc for fdt_kaslrseed

Signed-off-by: Dmitry Rokosov <[email protected]>
Acked-by: Heinrich Schuchardt <[email protected]>
3 days agochromebook_coral: Move CONFIG_BLOBLIST_ADDR to CAR
Tom Rini [Tue, 17 Dec 2024 16:22:15 +0000 (10:22 -0600)]
chromebook_coral: Move CONFIG_BLOBLIST_ADDR to CAR

Reading doc/board/google/chromebook_coral.rst we can see that at some
point it was intended to put the bloblist in CAR, rather than DRAM, at
some point during development. This is fine for TPL/SPL stages where we
have very minimal information stored in the bloblist and so we can set
the limit there to 4KiB and then expand it to 196KiB in U-Boot proper so
there's room for ACPI tables and so forth. We also update the
documentation to use the same location for CONFIG_BLOBLIST_ADDR in both
references.

Signed-off-by: Tom Rini <[email protected]>
3 days agoMerge patch series "SMBIOS improvements"
Tom Rini [Tue, 14 Jan 2025 20:29:49 +0000 (14:29 -0600)]
Merge patch series "SMBIOS improvements"

Raymond Mao <[email protected]> says:

Motivations for changes:
Current SMBIOS library and command-line tool is not fully matching with
the requirements:
1. Missing support for other mandatory types (#7, #9, #16, #17, #19).
2. Only a few platforms support SMBIOS node from the device tree.
3. Values of some fields are hardcoded in the library other than fetching
   from the device hardware.
4. Embedded data with dynamic length is not supported (E.g. Contained
   Object Handles in Type #2 and Contained Elements in Type #3)

Changes:
1. Refactor the SMBIOS library and command-line tool to better align with
   the SMBIOS spec.
2. Create an arch-specific driver for all aarch64-based platforms to fetch
   SMBIOS private data from the device hardware (processor and cache).
3. Create a sysinfo driver to poppulate platform SMBIOS private data.
4. Add generic SMBIOS DTS file for arm64 platforms for those common strings
   and values which cannot be retrieved from the system registers.
   Vendors can create their own SMBIOS node using this as an example.
   For those boards without SMBIOS nodes, this DTS file can be included to
   have a generic SMBIOS information of the system.
5. Add support for Type #7 (Cache Information) and link its handles to
   Type #4.
6. To minimize size-growth for those platforms which have not sufficient
   ROM spaces or the platforms which don't need detailed SMBIOS
   information, new added fields are only being built when kconfig
   GENERATE_SMBIOS_TABLE_VERBOSE is selected.

Once this patch is acceptted, subsequent patch sets will add other missing
types (#9, #16, #17, #19).

Tests:
To test this with QEMU arm64, please follow the guide on dt_qemu.rst to
get a merged DT to run with.
```
qemu-system-aarch64 -machine virt -machine dumpdtb=qemu.dtb
cat  <(dtc -I dtb qemu.dtb) <(dtc -I dtb ./dts/dt.dtb | grep -v /dts-v1/) \
  | dtc - -o merged.dtb
qemu-system-aarch64 -machine virt -nographic -bios u-boot.bin \
  -dtb merged.dtb
```

Link: https://lore.kernel.org/r/[email protected]
3 days agoconfigs: Enable sysinfo for QEMU Arm64
Raymond Mao [Fri, 6 Dec 2024 22:54:27 +0000 (14:54 -0800)]
configs: Enable sysinfo for QEMU Arm64

Enable sysinfo smbios by default for arm64.
When SYSINFO_SMBIOS is enabled, disable QFW_SMBIOS.

Signed-off-by: Raymond Mao <[email protected]>
Reviewed-by: Simon Glass <[email protected]>
3 days agocmd: update smbios cmd
Raymond Mao [Fri, 6 Dec 2024 22:54:26 +0000 (14:54 -0800)]
cmd: update smbios cmd

Update the cmd according to the changes of the smbios library:
1. Refactor smbios cmd print functions to match the content defined
   by the specification.
2. Add new print functions for Type 3, 4 and 7.
3. Remove the fallback string "Not specified" from smbios_get_string,
   as the spec requires a NULL output for those undefined strings.
4. Update the test_cmd_smbios_sandbox pytest expected result to
   align with the smbios library changes and add new pytest
   test_cmd_smbios_sysinfo_verbose to test the verbose smbios
   output.

Signed-off-by: Raymond Mao <[email protected]>
3 days agoarmv8: Add generic smbios information into the device tree
Raymond Mao [Fri, 6 Dec 2024 22:54:25 +0000 (14:54 -0800)]
armv8: Add generic smbios information into the device tree

Add common smbios information that can be used by all armv8
platforms and set it as default for qemu-arm64.
>From now smbios library can load values from here for those fields
doesn't exist in the sysinfo driver.

To run this with QEMU arm64, we need to dump the generated DTB
from QEMU first, merge it with the one we build and then re-run
QEMU with the merged DTB.
```
qemu-system-aarch64 -machine virt -machine dumpdtb=qemu.dtb
cat  <(dtc -I dtb qemu.dtb) <(dtc -I dtb ./dts/dt.dtb | \
  grep -v /dts-v1/) | dtc - -o merged.dtb
qemu-system-aarch64 -machine virt -nographic -bios u-boot.bin \
  -dtb merged.dtb
```
For details please take reference on dt_qemu.rst

Signed-off-by: Raymond Mao <[email protected]>
3 days agoarmv8: Add arch-specific sysinfo platform driver
Raymond Mao [Fri, 6 Dec 2024 22:54:24 +0000 (14:54 -0800)]
armv8: Add arch-specific sysinfo platform driver

Add sysinfo platform driver for all armv8 platforms to retrieve
hardware information on processor and cache.

Signed-off-by: Raymond Mao <[email protected]>
Reviewed-by: Simon Glass <[email protected]>
3 days agosmbios: add detailed smbios information
Raymond Mao [Fri, 6 Dec 2024 22:54:23 +0000 (14:54 -0800)]
smbios: add detailed smbios information

Add detailed SMBIOS information as following:
1. Missing fields in Type #3 and #4
2. Type #7

Add support to dynamic length of contained object handles and
elements.

As SMBIOS is a fundamental feature which is enabled for all
boards, in order to avoid increasing rom size, all detailed SMBIOS
information is under kconfig GENERATE_SMBIOS_TABLE_VERBOSE.
Board maintainers can determine whether to select this feature.

Signed-off-by: Raymond Mao <[email protected]>
3 days agosmbios: Refactor smbios library
Raymond Mao [Fri, 6 Dec 2024 22:54:22 +0000 (14:54 -0800)]
smbios: Refactor smbios library

Current smbios library does not fully match to the specification.
It hardcodes values instead of exposing values from the device.
It does not reserve the space to support dynamic length for
contained object handles or elements and misses the handling of
a few of fields.

The refactoring of this patch includes:
1. Expose values from device via sysinfo interface.
2. Replace smbios_add_prop with smbios_add_prop_si to allow getting
   string values from sysinfo.
3. Add smbios_get_val_si to get values from sysinfo or device tree.
4. Use sysinfo_get_data to get data area.
5. Reserve the space of contained object handles and elements.
6. Miscellaneous fixes in smbios.

Signed-off-by: Raymond Mao <[email protected]>
3 days agosysinfo: Add sysinfo driver and data structure for smbios
Raymond Mao [Fri, 6 Dec 2024 22:54:21 +0000 (14:54 -0800)]
sysinfo: Add sysinfo driver and data structure for smbios

Add sysinfo driver to retrieve smbios information (Type 4 and 7).
So that the smbios library can use it for getting values from the
hardware platform instead of device tree.

Signed-off-by: Raymond Mao <[email protected]>
3 days agotest/dm: add sandbox test for sysinfo_get_data
Raymond Mao [Fri, 6 Dec 2024 22:54:20 +0000 (14:54 -0800)]
test/dm: add sandbox test for sysinfo_get_data

Adding sysinfo_get_data into sandbox ut test dm_test_sysinfo.

Signed-off-by: Raymond Mao <[email protected]>
3 days agosysinfo: Add sysinfo API for accessing data area
Raymond Mao [Fri, 6 Dec 2024 22:54:19 +0000 (14:54 -0800)]
sysinfo: Add sysinfo API for accessing data area

Add interface for sysinfo to access a data area from the platform.
This is useful to save/read a memory region of platform-specific
data.

Signed-off-by: Raymond Mao <[email protected]>
3 days agosmbios: Refactor the smbios headfile
Raymond Mao [Fri, 6 Dec 2024 22:54:18 +0000 (14:54 -0800)]
smbios: Refactor the smbios headfile

Move the smbios field definitions to a separated simple headfile,
which is a prerequisite to be included by dts files.
Add new definitions for cache information.
This patch also includes a few of code optimizations in smbios.

Signed-off-by: Raymond Mao <[email protected]>
Acked-by: Heinrich Schuchardt <[email protected]>
3 days agoMerge patch series "Adjust how autoprobe is implemented"
Tom Rini [Tue, 14 Jan 2025 17:43:01 +0000 (11:43 -0600)]
Merge patch series "Adjust how autoprobe is implemented"

Simon Glass <[email protected]> says:

This little series makes a minor change to how autoprobe is
implemented, as discussed on the list.

Link: https://lore.kernel.org/r/[email protected]
Link: https://lore.kernel.org/r/[email protected]
3 days agocommon: Move autoprobe out to board init
Simon Glass [Wed, 20 Nov 2024 15:36:41 +0000 (08:36 -0700)]
common: Move autoprobe out to board init

Rather than doing autoprobe within the driver model code, move it out to
the board-init code. This makes it clear that it is a separate step from
binding devices.

For now this is always done twice, before and after relocation, but we
should discuss whether it might be possible to drop the post-relocation
probe.

For boards with SPL, the autoprobe is still done there as well.

Note that with this change, autoprobe happens after the
EVT_DM_POST_INIT_R/F events are sent, rather than before.

Link: https://lore.kernel.org/u-boot/[email protected]/
Signed-off-by: Simon Glass <[email protected]>
3 days agodm: core: Simplify dm_probe_devices()
Simon Glass [Wed, 20 Nov 2024 15:36:40 +0000 (08:36 -0700)]
dm: core: Simplify dm_probe_devices()

There is no point in checking the pre_reloc flag, since devices not
marked as pre-reloc will not have been bound, so won't exist yet.

There doesn't seem to be any point in checking if the device has a
valid devicetree node either, so drop that too.

Signed-off-by: Simon Glass <[email protected]>
3 days agocommon: Drop check for DM in initf_dm()
Simon Glass [Wed, 20 Nov 2024 15:36:39 +0000 (08:36 -0700)]
common: Drop check for DM in initf_dm()

This is enabled by all boards, so drop the condition.

Signed-off-by: Simon Glass <[email protected]>
Reviewed-by: Tom Rini <[email protected]>
3 days agoMerge tag 'xilinx-for-v2025.04-rc1-v2' of https://source.denx.de/u-boot/custodians...
Tom Rini [Tue, 14 Jan 2025 15:36:06 +0000 (09:36 -0600)]
Merge tag 'xilinx-for-v2025.04-rc1-v2' of https://source.denx.de/u-boot/custodians/u-boot-microblaze

AMD/Xilinx changes for v2025.04-rc1 v2

Versal:
- Enable dfu support for SPI with multiboot

ZynqMP:
- Align multiboot reg description
- DT syncups
- Wire missing DTs in defconfig
- Kria: Remove usb hub initialization via commands
- Kria: Update DP reset in psu_init

AMD/Xilinx:
- Enable SPI_STACKED_PARALLEL configs

SPI/ZYNQMP_GQSPI:
- Update debug message to use log_debug()

RTC:
- Enable ZYNQMP_RTC for Versal SOCs

3 days agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-pmic
Tom Rini [Tue, 14 Jan 2025 15:35:43 +0000 (09:35 -0600)]
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-pmic

3 days agortc: zynqmp: allow on Versal architectures
Vincent Fazio [Tue, 14 Jan 2025 13:58:12 +0000 (07:58 -0600)]
rtc: zynqmp: allow on Versal architectures

Allow the ZyncMP RTC driver to be enabled on Versal architectures.

Also, require DM_RTC since the driver uses the RTC driver model.

Signed-off-by: Vincent Fazio <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Michal Simek <[email protected]>
3 days agozynqmp_gqspi: update to log_debug
Ibai Erkiaga [Tue, 7 Jan 2025 14:51:08 +0000 (14:51 +0000)]
zynqmp_gqspi: update to log_debug

Update recent parallel memory support code to move to log_debug instead
of debug as per logging in U-Boot documentation

Signed-off-by: Ibai Erkiaga <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Michal Simek <[email protected]>
3 days agoboard: xilinx: Add missing prototype for set_dfu_alt_info
Venkatesh Yadav Abbarapu [Mon, 6 Jan 2025 09:06:30 +0000 (14:36 +0530)]
board: xilinx: Add missing prototype for set_dfu_alt_info

Add missing prototype to fix the sparse warning,
warning: no previous prototype for 'set_dfu_alt_info'
[-Wmissing-prototypes].

Signed-off-by: Venkatesh Yadav Abbarapu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Michal Simek <[email protected]>
3 days agoarm64: zynqmp: Add eeprom labels for System Controller dts
Jonathan Stroud [Mon, 6 Jan 2025 08:42:48 +0000 (09:42 +0100)]
arm64: zynqmp: Add eeprom labels for System Controller dts

Label all eeproms so we can open by label rather than a fixed i2c address.

Signed-off-by: Jonathan Stroud <[email protected]>
Signed-off-by: Michal Simek <[email protected]>
Link: https://lore.kernel.org/r/878558c3c859599d29bc4ae2278baebf84b368e0.1736152966.git.michal.simek@amd.com
3 days agoarm64: zynqmp: Enable iio-hwmon description only for SOM
Michal Simek [Mon, 6 Jan 2025 08:42:21 +0000 (09:42 +0100)]
arm64: zynqmp: Enable iio-hwmon description only for SOM

Description is coming from SOM only that's why enable it only on SOM.

Signed-off-by: Michal Simek <[email protected]>
Link: https://lore.kernel.org/r/08ee4ce2fe242905dd99cea2b87373b57d8fea91.1736152939.git.michal.simek@amd.com
3 days agoconfig: xilinx: Enable the SPI_STACKED_PARALLEL config option
Venkatesh Yadav Abbarapu [Fri, 3 Jan 2025 04:48:12 +0000 (10:18 +0530)]
config: xilinx: Enable the SPI_STACKED_PARALLEL config option

Enable the SPI_STACKED_PARALLEL config option for
all AMD/xilinx platforms, as this is required for parallel and
stacked memories.

Signed-off-by: Venkatesh Yadav Abbarapu <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Michal Simek <[email protected]>
3 days agoboard: zynqmp: zynqmp-sm-k26-revA: release DP from reset
Neal Frager [Wed, 18 Dec 2024 13:01:29 +0000 (13:01 +0000)]
board: zynqmp: zynqmp-sm-k26-revA: release DP from reset

This releases the DP configuration from reset early on during the boot process
for K26 SOM.  It will also avoid the boot hang situation should any attempt be
made to configure the DP registers while it is still in reset.

Fixes the same issue as described by the commit 8b81010a2fe3 ("video:
zynqmp: Add support for reset").

Signed-off-by: Neal Frager <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Michal Simek <[email protected]>
3 days agoxilinx: Sort OF_LIST and add missing vpk120 and zcu670 platforms
Michal Simek [Mon, 16 Dec 2024 07:52:34 +0000 (08:52 +0100)]
xilinx: Sort OF_LIST and add missing vpk120 and zcu670 platforms

Sort OF_LIST entries and also add missing vpk120 and zcu670 platforms.
Compilation is failing when these DTs are exported via DEVICE_TREE because
binman is not able to create a link for default configuration.

Signed-off-by: Michal Simek <[email protected]>
Link: https://lore.kernel.org/r/505996b6ef969b1b677ab921462c75c798c366e7.1734335553.git.michal.simek@amd.com
3 days agozynqmp: Remove usb init initialization for Kria
Michal Simek [Wed, 18 Dec 2024 11:40:44 +0000 (12:40 +0100)]
zynqmp: Remove usb init initialization for Kria

USB hub initialization is done by driver introduced by commit 09f557e106ef
("usb: onboard-hub: Add i2c initialization for usb5744 hub") that's why
there is no need to do initialization via variables.

Reported-by: Love Kumar <[email protected]>
Acked-by: Ilias Apalodimas <[email protected]>
Signed-off-by: Michal Simek <[email protected]>
Link: https://lore.kernel.org/r/96e9c80aeeed4e9664858bf236476997d17a9914.1734522042.git.michal.simek@amd.com
3 days agoarm64: zynqmp: Sync DTs with Linux v6.13-rc1
Michal Simek [Thu, 12 Dec 2024 09:41:44 +0000 (10:41 +0100)]
arm64: zynqmp: Sync DTs with Linux v6.13-rc1

Sync zynqmp* DTS files with v6.13-rc1 Linux kernel including three patches
from Sean:
arm64: zynqmp: Enable AMS for all boards
arm64: zynqmp: Expose AMS to userspace as HWMON
arm64: zynqmp: Add thermal zones

Signed-off-by: Michal Simek <[email protected]>
Link: https://lore.kernel.org/r/06e466d64c9d8e718e2f06a76cc65d6da2a37a7b.1733996500.git.michal.simek@amd.com
3 days agoarm64: zynqmp: add clock-output-names property in clock nodes
Naman Trivedi [Thu, 12 Dec 2024 08:12:41 +0000 (09:12 +0100)]
arm64: zynqmp: add clock-output-names property in clock nodes

Replace underscores with hyphens in the clock node names as per
dt-schema rule.

Also, add clock-output-names property to all clock nodes, so that the
resulting clock name do not change when clock node name is changed.

Signed-off-by: Naman Trivedi <[email protected]>
Acked-by: Senthil Nathan Thangaraj <[email protected]>
Signed-off-by: Michal Simek <[email protected]>
Link: https://lore.kernel.org/r/1080e31393c3e1b49735b77e7ddc14d570b83222.1733991159.git.michal.simek@amd.com
3 days agoarm64: zynqmp: Do not use hardcoded address in do_zynqmp_reboot()
Michal Simek [Mon, 9 Dec 2024 09:10:56 +0000 (10:10 +0100)]
arm64: zynqmp: Do not use hardcoded address in do_zynqmp_reboot()

multi_boot is already the part of csu_base structure that's why use it
directly instead of using register offset value.

Fixes: fc001432e5b0 ("arm64: zynqmp: Add u-boot command to boot into recovery image")
Signed-off-by: Michal Simek <[email protected]>
Link: https://lore.kernel.org/r/3e5c6ea426b81cc73b90e6425764e41a98deb2a6.1733735454.git.michal.simek@amd.com
3 days agoarm64: versal: RO multi_boot register in non JTAG bootmode
Michal Simek [Mon, 6 Jan 2025 09:20:40 +0000 (10:20 +0100)]
arm64: versal: RO multi_boot register in non JTAG bootmode

The main reason for this change is that upstream QEMU has no multiboot
register implemented that's why access to it fails which ends up in CI
failure for our target.
That's why in JTAG bootmode returns 0 which is correct behaviour because
multiboot register is not used in this mode and value should be ignored and
as a side effect it is also fixing CI/Qemu issue.

Also move versal_get_bootmode() to avoid function declaration.

Signed-off-by: Michal Simek <[email protected]>
Link: https://lore.kernel.org/r/484b9cafc45e72308a1a29a3ab772020f96784cc.1736155238.git.michal.simek@amd.com
3 days agoarm64: versal: Support operations around multiboot register
Michal Simek [Thu, 5 Dec 2024 10:38:16 +0000 (11:38 +0100)]
arm64: versal: Support operations around multiboot register

Read multiboot register and show it's value by default.
Also extend logic in dfu_alt_info string generation to support capsule
update for different offsets.

Signed-off-by: Michal Simek <[email protected]>
Link: https://lore.kernel.org/r/72ba2efd0fb7b66a86b409a1521fe288a4dd3453.1733395093.git.michal.simek@amd.com
3 days agoarm64: versal: Wire SPIs for dfu_alt_info variable generation
Michal Simek [Thu, 5 Dec 2024 10:38:15 +0000 (11:38 +0100)]
arm64: versal: Wire SPIs for dfu_alt_info variable generation

Enable automatic dfu_alt_info variable generation based on MTD partition.

Signed-off-by: Michal Simek <[email protected]>
Link: https://lore.kernel.org/r/67ff88c8c7186138353c0b74ed37a318fb4b199e.1733395093.git.michal.simek@amd.com
4 days agopower: pmic: tps65941: Fix TI TPS65224 PMIC compatiable
Udit Kumar [Fri, 27 Dec 2024 17:30:24 +0000 (23:00 +0530)]
power: pmic: tps65941: Fix TI TPS65224 PMIC compatiable

Fix compatiable name for TPS65224 PMIC as defined in
dts/upstream/Bindings/mfd/ti,tps6594.yaml bindings.

Fixes: 1468fbba6d55("power: pmic: tps65941: Add TI TPS65224 PMIC")
Signed-off-by: Udit Kumar <[email protected]>
Reviewed-by: Tom Rini <[email protected]>
Reviewed-by: Jaehoon Chung <[email protected]>
4 days agopower: replace magic numbers with macros
Shree Ramamoorthy [Wed, 18 Dec 2024 17:12:36 +0000 (11:12 -0600)]
power: replace magic numbers with macros

Replace magic numbers in buckval2votl() & buckvolt2val() with macros to
help with clarity and correlate what the numbers correspond to in the
TPS65219 datasheet.

Signed-off-by: Shree Ramamoorthy <[email protected]>
Reviewed-by: Jaehoon Chung <[email protected]>
4 days agopower: regulator: replace printf() with pr_err()
Shree Ramamoorthy [Wed, 18 Dec 2024 17:12:35 +0000 (11:12 -0600)]
power: regulator: replace printf() with pr_err()

Replace printf() with pr_err() because pr_err() has a uniform print format
and takes into consideration the log levels supported.

Signed-off-by: Shree Ramamoorthy <[email protected]>
Reviewed-by: Jaehoon Chung <[email protected]>
4 days agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-usb
Tom Rini [Mon, 13 Jan 2025 14:25:00 +0000 (08:25 -0600)]
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-usb

- ehci-mx5/ehci-mx6 driver improvements

4 days agousb: ehci-mx6: Add i.MX95 support
Marek Vasut [Tue, 7 Jan 2025 22:59:07 +0000 (23:59 +0100)]
usb: ehci-mx6: Add i.MX95 support

i.MX95 uses the same USB IP as i.MX8MM. It can then reuse the ehci-mx6
driver.

Signed-off-by: Marek Vasut <[email protected]>
Reviewed-by: Fabio Estevam <[email protected]>
5 days agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh
Tom Rini [Mon, 13 Jan 2025 01:28:54 +0000 (19:28 -0600)]
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh

5 days agoarm64: renesas: Convert boards over to is_cortex_a() functions
Marek Vasut [Wed, 1 Jan 2025 19:19:06 +0000 (20:19 +0100)]
arm64: renesas: Convert boards over to is_cortex_a() functions

Use generic is_cortex_a() functions instead of open-coded midr_el1 read.
No functional change.

Reviewed-by: Paul Barker <[email protected]>
Signed-off-by: Marek Vasut <[email protected]>
5 days agoarm64: Add MIDR entries for Cortex-A57 and Cortex-A76
Marek Vasut [Wed, 1 Jan 2025 19:19:05 +0000 (20:19 +0100)]
arm64: Add MIDR entries for Cortex-A57 and Cortex-A76

Add MIDR entries for Cortex-A57 and Cortex-A76 cores.
Those are used on R-Car Gen3 and Gen4 SoCs respectively.

Reviewed-by: Paul Barker <[email protected]>
Reviewed-by: Peter Robinson <[email protected]>
Signed-off-by: Marek Vasut <[email protected]>
5 days agoarm64: Convert core type check macros into inline functions
Marek Vasut [Wed, 1 Jan 2025 19:19:04 +0000 (20:19 +0100)]
arm64: Convert core type check macros into inline functions

Turn the core type check macros into inline functions to perform
better type checking on them. The inline functions get optimized
out in case they are not used. Indent the MIDR_PARTNUM_CORTEX_An
macros in preparation for addition of future three-digit cores
and use MIDR_PARTNUM_SHIFT in MIDR_PARTNUM_MASK to be consistent.

Reviewed-by: Paul Barker <[email protected]>
Reviewed-by: Peter Robinson <[email protected]>
Signed-off-by: Marek Vasut <[email protected]>
7 days agoMerge tag 'u-boot-rockchip-20250110' of https://source.denx.de/u-boot/custodians...
Tom Rini [Fri, 10 Jan 2025 22:46:32 +0000 (16:46 -0600)]
Merge tag 'u-boot-rockchip-20250110' of https://source.denx.de/u-boot/custodians/u-boot-rockchip

CI: https://source.denx.de/u-boot/custodians/u-boot-rockchip/-/pipelines/24129

- Add boards:
rk3566: FriendlyARM NanoPi R3S
rk3588s: Radxa ROCK 5C,
rk3588: Khadas Edge2
- Migrate to OF_UPSTREAM:
rk3066a/rk3188;
rk3288: tinker, miqi, firefly;
- Migrate to TPL: rk3399 kevin and bob;

7 days agorockchip: rk3308: Implement checkboard() to print SoC variant
Jonas Karlman [Sun, 10 Nov 2024 00:56:17 +0000 (00:56 +0000)]
rockchip: rk3308: Implement checkboard() to print SoC variant

Implement checkboard() to print current SoC variant used by a board,
e.g. one of:

  SoC:   RK3308
  SoC:   RK3308B
  SoC:   RK3308B-S

when U-Boot proper is running.

  U-Boot 2025.01-rc1 (Nov 02 2024 - 20:26:25 +0000)

  Model: Radxa ROCK Pi S
  SoC:   RK3308B
  DRAM:  512 MiB (effective 510 MiB)

Information about the SoC variant is read from GRF.

Signed-off-by: Jonas Karlman <[email protected]>
7 days agorockchip: rk3588: Implement checkboard() to print SoC variant
Jonas Karlman [Sun, 10 Nov 2024 00:56:16 +0000 (00:56 +0000)]
rockchip: rk3588: Implement checkboard() to print SoC variant

Implement checkboard() to print current SoC model used by a board,
e.g. one of:

  SoC:   RK3582
  SoC:   RK3588
  SoC:   RK3588J
  SoC:   RK3588S
  SoC:   RK3588S2

when U-Boot proper is running.

  U-Boot 2025.01-rc1 (Nov 10 2024 - 00:31:29 +0000)

  Model: Generic RK3588S/RK3588
  SoC:   RK3588S2
  DRAM:  8 GiB

Information about the SoC model and variant is read from OTP.

Also update rk3588s-u-boot.dtsi to include OTP in U-Boot pre-reloc phase,
where checkboard() is called.

Signed-off-by: Jonas Karlman <[email protected]>
Tested-by: FUKAUMI Naoki <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk356x: Implement checkboard() to print SoC variant
Jonas Karlman [Sun, 10 Nov 2024 00:56:15 +0000 (00:56 +0000)]
rockchip: rk356x: Implement checkboard() to print SoC variant

Implement checkboard() to print current SoC model used by a board,
e.g. one of:

  SoC:   RK3566
  SoC:   RK3566T
  SoC:   RK3568
  SoC:   RK3568B2
  SoC:   RK3568J

when U-Boot proper is running.

  U-Boot 2025.01-rc1 (Nov 10 2024 - 00:39:37 +0000)

  Model: Generic RK3566/RK3568
  SoC:   RK3568J
  DRAM:  8 GiB (effective 7.7 GiB)

Information about the SoC model and variant is read from OTP.

Also update rk356x-u-boot.dtsi to include OTP in U-Boot pre-reloc phase,
where checkboard() is called.

Signed-off-by: Jonas Karlman <[email protected]>
Tested-by: FUKAUMI Naoki <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3399-rock-pi-4: Fix Synchronous Abort
Jonas Karlman [Tue, 19 Nov 2024 00:12:19 +0000 (00:12 +0000)]
rockchip: rk3399-rock-pi-4: Fix Synchronous Abort

After the commit 788cf33315c7 ("efi: add a helper to generate dynamic
UUIDs") update_info.num_images must match number of valid update images.

On Rock Pi 4 following Synchronous Abort can be observed due to fw_name
being NULL:

  Scanning global bootmeth 'efi_mgr':
  "Synchronous Abort" handler, esr 0x96000010, far 0x0
  elr: 0000000000200e28 lr : 000000000028adb8 (reloc)
  elr: 00000000f3efbe28 lr : 00000000f3f85db8
  x0 : 0000000000000000 x1 : ffffffffffffffff
  x2 : 0000000000000000 x3 : 000000000000000e
  x4 : 0000000000000000 x5 : 00000000f1ef0d78
  x6 : 00000000f3fb3b90 x7 : 0000000000000044
  x8 : 0000000000000010 x9 : 0000000000000031
  x10: 00000000f0ea3fff x11: 00000000f1f29e00
  x12: 0000000000000002 x13: fffffffffffff000
  x14: 00000000f1f29e00 x15: 0000000000000018
  x16: 00000000f3f44f7c x17: 0000000000000000
  x18: 00000000f1ef2de0 x19: 00000000f0ea3040
  x20: 00000000f3ff53d8 x21: 00000000f3fd0498
  x22: 0000000000000000 x23: 00000000f1edb960
  x24: 00000000f1edb95f x25: 00000000f1edb990
  x26: 00000000f1edb964 x27: 00000000f1edb998
  x28: 00000000f1edc1ec x29: 00000000f1edb820

  Code: aa0003e2 d2800000 eb01001f 54000060 (78607843)
  Resetting CPU ...

  resetting ...

Fix this by setting update_info.num_images to 0 when no valid update
images is added to update_info.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
Tested-by: FUKAUMI Naoki <[email protected]>
7 days agoclk: rockchip: rk3588: fix mask define for aclk_vop_root
Heiko Stuebner [Wed, 20 Nov 2024 10:19:11 +0000 (11:19 +0100)]
clk: rockchip: rk3588: fix mask define for aclk_vop_root

The mask for aclk_vop_root is 3-bit wide, not 2-bit wide according
to the TRM, so set the mask accordingly.

Signed-off-by: Heiko Stuebner <[email protected]>
Reviewed-by: Quentin Schulz <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3588-nanopc-t6-lts: Add missing board -u-boot.dtsi
Jonas Karlman [Mon, 6 Jan 2025 18:22:29 +0000 (18:22 +0000)]
rockchip: rk3588-nanopc-t6-lts: Add missing board -u-boot.dtsi

The commit 7cec3e701940 ("rockchip: rk3588-nanopc-t6: Add support for
NanoPC-T6 LTS") added support for the LTS variant of NanoPC T6. However,
a board specific -u-boot.dtsi file was never added.

Due to the missing -u-boot.dtsi file the LTS fdt included in the FIT is
never tagged with bootph props.

When ENV_IS_IN_SPI_FLASH is enabled, not enabled in defconfig, the env
can successfully load from SPI flash on the non-LTS variant, something
that does not work on the LTS variant due to missing bootph-some-ram
props in the LTS fdt.

Fix this by adding a LTS -u-boot.dtsi file that just include the non-LTS
-u-boot.dtsi file.

Reported-by: Ricardo Pardini <[email protected]>
Fixes: 7cec3e701940 ("rockchip: rk3588-nanopc-t6: Add support for NanoPC-T6 LTS")
Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3399: Drop unneeded bob and kevin board specific code
Jonas Karlman [Thu, 12 Dec 2024 23:57:19 +0000 (23:57 +0000)]
rockchip: rk3399: Drop unneeded bob and kevin board specific code

The IO-domain driver will configure io_vsel and always-on/boot-on
regulators will be enabled based on the board device tree now that
required nodes and Kconfig options is enabled for SPL.

Remove the bob and kevin board specific code from the common rk3399.c,
the IO-domain and regulator driver provide similar functionality.

Signed-off-by: Jonas Karlman <[email protected]>
7 days agorockchip: rk3399-gru: Include pinctrl and regulators in SPL
Jonas Karlman [Thu, 12 Dec 2024 23:57:18 +0000 (23:57 +0000)]
rockchip: rk3399-gru: Include pinctrl and regulators in SPL

Add bootph props and enable related Kconfig options to include vital
regulators in SPL.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3399-gru: Use SDMA mode to read from eMMC
Jonas Karlman [Thu, 12 Dec 2024 23:57:17 +0000 (23:57 +0000)]
rockchip: rk3399-gru: Use SDMA mode to read from eMMC

Enable use of SDMA mode when reading from eMMC to speed up boot.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3399-gru: Enable dcache and signature validation in SPL
Jonas Karlman [Thu, 12 Dec 2024 23:57:16 +0000 (23:57 +0000)]
rockchip: rk3399-gru: Enable dcache and signature validation in SPL

With TPL being used to init DRAM, SPL being used to load FIT and the
adjusted FIT payload offset it is now possible to increase the size
limit of SPL to 256 KB and enable uses of dcache and FIT signature
validation.

Drop SPL_SYS_DCACHE_OFF=y to enable use of dcache in SPL.

Drop SPL_FIT_SIGNATURE=n to enable signature validation of FIT in SPL.

Change SPL_MAX_SIZE to 256 KB now that payload offset has moved in SPI
and TF-A may be loaded to 0x40000 in DRAM.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3399-gru: Remove unused nodes from xPL control FDT
Jonas Karlman [Thu, 12 Dec 2024 23:57:15 +0000 (23:57 +0000)]
rockchip: rk3399-gru: Remove unused nodes from xPL control FDT

The eMMC PHY and SPI flash is not used in all xPL phases.

Change to no longer include emmc_phy and spi_flash in all xPL phases.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3399: Drop common Kconfig options already implied
Jonas Karlman [Thu, 12 Dec 2024 23:57:14 +0000 (23:57 +0000)]
rockchip: rk3399: Drop common Kconfig options already implied

The last two RK3399 boards, chromebook bob and kevin, have now migraded
to use common bss and stack addresses.

Cleanup and remove Kconfig options no longer needed in rk3399/Kconfig
when all boards now use common bss and stack addresses.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3399-gru: Include binman generated FIT in u-boot.rom image
Jonas Karlman [Thu, 12 Dec 2024 23:57:13 +0000 (23:57 +0000)]
rockchip: rk3399-gru: Include binman generated FIT in u-boot.rom image

The u-boot.rom image contain u-boot.img FIT instead of the FIT generated
by binman for the u-boot-rockchip.bin image.

Change to include the binman generated FIT for the u-boot.rom image.

This change result in TF-A being included and the use sha256 instead of
crc32 checksum in the u-boot.rom FIT.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3399-gru: Use TPL with common bss and stack addresses
Jonas Karlman [Thu, 12 Dec 2024 23:57:12 +0000 (23:57 +0000)]
rockchip: rk3399-gru: Use TPL with common bss and stack addresses

Migrate to use TPL, common bss, stack and malloc heap size and addresses
to unify memory use in TPL, SPL and pre-reloc with other RK3399 boards.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
(Disable TPL_BLOBLIST)
Signed-off-by: Kever Yang <[email protected]>
7 days agorockchip: rk3399-gru: Fix include of TPL in u-boot.rom image
Jonas Karlman [Thu, 12 Dec 2024 23:57:11 +0000 (23:57 +0000)]
rockchip: rk3399-gru: Fix include of TPL in u-boot.rom image

The chromebook specific u-boot.rom image does not include TPL when
building with TPL=y or ROCKCHIP_EXTERNAL_TPL=y.

Fix this by adding rockchip-tpl and u-boot-tpl nodes to the mkimage node
for the u-boot.rom binman image.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3399-gru: Move SPI flash payload offset for bob and kevin
Jonas Karlman [Thu, 12 Dec 2024 23:57:10 +0000 (23:57 +0000)]
rockchip: rk3399-gru: Move SPI flash payload offset for bob and kevin

The BootROM on RK3399 only read the first 2 KB of each 4 KB page from
SPI flash. With current FIT payload offset of 0x40000 this limits the
supported TPL+SPL size to only 128 KB.

Change to use 0xE0000 as FIT payload offset, similar to other RK3399
boards, to allow a maximum size for TPL of 192 KB and SPL of 256 KB.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3399-gru: Use SYS_SPI_U_BOOT_OFFS value in offset prop
Jonas Karlman [Thu, 12 Dec 2024 23:57:09 +0000 (23:57 +0000)]
rockchip: rk3399-gru: Use SYS_SPI_U_BOOT_OFFS value in offset prop

Use the offset configured with SYS_SPI_U_BOOT_OFFS Kconfig option
instead of a hardcoded 0x40000 for the FIT payload offset.

This has no intended impact as SYS_SPI_U_BOOT_OFFS=0x40000.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3399: Fix TPL build of bob and kevin
Jonas Karlman [Thu, 12 Dec 2024 23:57:08 +0000 (23:57 +0000)]
rockchip: rk3399: Fix TPL build of bob and kevin

Building chromebook_bob/kevin with TPL=y ends with a linking error:

  arch/arm/mach-rockchip/rk3399/rk3399.o: in function `board_debug_uart_init':
  arch/arm/mach-rockchip/rk3399/rk3399.c:148:(.text.board_debug_uart_init+0x34):
    undefined reference to `spl_gpio_output'
  arch/arm/mach-rockchip/rk3399/rk3399.c:148:(.text.board_debug_uart_init+0x34):
    relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `spl_gpio_output'

  make[2]: *** [scripts/Makefile.xpl:542: tpl/u-boot-tpl] Error 1
  make[1]: *** [Makefile:2134: tpl/u-boot-tpl] Error 2
  make: *** [Makefile:568: __build_one_by_one] Error 2

Change to only use spl_gpio functions in SPL to fix this.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3399: expand space for decompressed kernel
FUKAUMI Naoki [Mon, 2 Dec 2024 23:40:18 +0000 (23:40 +0000)]
rockchip: rk3399: expand space for decompressed kernel

fix following error by using same ENV_MEM_LAYOUT_SETTINGS with rk35xx:

U-Boot 2025.01-rc3-00001-g1527c7dcdb01 (Dec 02 2024 - 22:57:18 +0000)
  :
Retrieving file: /boot/extlinux/../nixos/dhqjsnprmzjxncil3m0g9l09a479crn3-linux-6.12.1-Image
Retrieving file: /boot/extlinux/../nixos/6fq8fmmab31yxdwcs7zw44p78fq9fy1s-initrd-linux-6.12.1-initrd
append: init=/nix/store/yjbxgzf1vkwbw6ab738bf4kxazhyypa1-nixos-system-rock-5b-25.05.20241201.ac35b10/init console=ttyS2,1500000n8 console=ttyAMA0,115200n8 console=tty0 loglevel=7
Retrieving file: /boot/extlinux/../nixos/dhqjsnprmzjxncil3m0g9l09a479crn3-linux-6.12.1-dtbs/rockchip/rk3399-rock-4se.dtb
Moving Image from 0x2080000 to 0x2200000, end=0x60d0000
ERROR: RD image overlaps OS image (OS=2200000..60d0000)
Boot failed (err=-14)

$ ls -lh boot/nixos/
total 84M
-r--r--r--  1 root root  24M Jan  1  1970 6fq8fmmab31yxdwcs7zw44p78fq9fy1s-initrd-linux-6.12.1-initrd
-r--r--r--  1 root root  62M Jan  1  1970 dhqjsnprmzjxncil3m0g9l09a479crn3-linux-6.12.1-Image
dr-xr-xr-x 36 root root 4.0K Jan  1  1970 dhqjsnprmzjxncil3m0g9l09a479crn3-linux-6.12.1-dtbs

similar problem was fixed for rk35xx by:

commit 69b73877f02c ("rockchip: rk35xx: expand space for decompressed kernel")

Signed-off-by: FUKAUMI Naoki <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agoboard: theobroma-systems: Update TF-A setup steps for RK3588 boards
Daniel Semkowicz [Tue, 26 Nov 2024 08:27:15 +0000 (09:27 +0100)]
board: theobroma-systems: Update TF-A setup steps for RK3588 boards

ddrbin_tool interface has been changed. Additional chip_name argument
is now required to modify ddr binary file. Update documentation
to be consistent with the new interface.

Update BL31 and ROCKCHIP_TPL file paths to match current version
of binaries available in the rkbin repository.

Signed-off-by: Daniel Semkowicz <[email protected]>
Acked-by: Quentin Schulz <[email protected]>
Reviewed-by: Quentin Schulz <[email protected]>
7 days agorockchip: rk3066a/rk3188: use includes from dts/upstream
Johan Jonker [Sun, 8 Dec 2024 17:46:31 +0000 (18:46 +0100)]
rockchip: rk3066a/rk3188: use includes from dts/upstream

The clock and power DT includes for rk3066a and rk3188 are now
available in the dts/upstream directory, so remove the ones that
are now redundant.

Signed-off-by: Johan Jonker <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: use OF_UPSTREAM for rk3066a/rk3188
Johan Jonker [Mon, 16 Dec 2024 12:44:32 +0000 (13:44 +0100)]
rockchip: use OF_UPSTREAM for rk3066a/rk3188

The device tree for rk3066a/rk3188 combined is now
available in the /dts/upstream directory.
Use imply OF_UPSTREAM to migrate all rk3066a/rk3188 boards.

Signed-off-by: Johan Jonker <[email protected]>
Reviewed-by: Sumit Garg <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: Add support for Radxa ROCK 5C
FUKAUMI Naoki [Sat, 4 Jan 2025 01:57:04 +0000 (01:57 +0000)]
rockchip: Add support for Radxa ROCK 5C

Radxa ROCK 5C[1] is a Rockchip RK3588S2 based single board computer.

[1] https://radxa.com/products/rock5/5c

Signed-off-by: FUKAUMI Naoki <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agoarm64: dts: rockchip: add Radxa ROCK 5C
FUKAUMI Naoki [Sat, 4 Jan 2025 01:57:03 +0000 (01:57 +0000)]
arm64: dts: rockchip: add Radxa ROCK 5C

Radxa ROCK 5C is a 8K computer for everything[1] using the Rockchip
RK3588S2 chip:

- Rockchip RK3588S2
- Quad A76 and Quad A55 CPU
- 6 TOPS NPU
- up to 32GB LPDDR4x RAM
- eMMC / SPI flash connector
- Micro SD Card slot
- Gigabit ethernet port (supports PoE with add-on PoE HAT)
- WiFi6 / BT5.4
- 1x USB 3.0 Type-A HOST port
- 1x USB 3.0 Type-A OTG port
- 2x USB 2.0 Type-A HOST port
- 1x USB Type-C 5V power port

[1] https://radxa.com/products/rock5/5c

Signed-off-by: FUKAUMI Naoki <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Heiko Stuebner <[email protected]>
[ upstream commit: 3ddf5cdb77e6efd6fe9b70f36dec935e324a3cd2 ]

(cherry picked from commit f80689fcef4b9b07a97b629b4075cc1a4c21a68e)
Reviewed-by: Kever Yang <[email protected]>
7 days agoarm64: dts: rockchip: Add HDMI0 node to rk3588
Cristian Ciocaltea [Sat, 4 Jan 2025 01:57:02 +0000 (01:57 +0000)]
arm64: dts: rockchip: Add HDMI0 node to rk3588

Add support for the HDMI0 output port found on RK3588 SoC.

Signed-off-by: Cristian Ciocaltea <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Heiko Stuebner <[email protected]>
[ upstream commit: d7bb71e69f58c1b3665a9f926bf8d3855111bf8e ]

(cherry picked from commit a839348380c2072e00a26bbdb80744982fe04c56)
Reviewed-by: Kever Yang <[email protected]>
7 days agoarm64: dts: rockchip: Split up RK3588's PCIe pinctrls
Sam Edwards [Sat, 4 Jan 2025 01:57:01 +0000 (01:57 +0000)]
arm64: dts: rockchip: Split up RK3588's PCIe pinctrls

These pinctrls manage the low-speed PCIe signals:
- CLKREQ#: An output on the RK3588 (both RC or EP modes), used to
  request that external clock-generation circuitry provide a clock.
- PERST#: An input on the RK3588 in EP mode, used to detect a reset
  signal from the RC. In RC mode, the hardware does not use this signal:
  Linux itself generates it by putting the pin in GPIO mode.
- WAKE#: In EP mode, this is an output; in RC mode, this is an input.

Each of these signals serves a distinct purpose, and more importantly,
PERST# should not be muxed when the RK3588 is in the RC role. Bundling
them together in pinctrl groups prevents proper use: indeed, almost none
of the current board-specific .dts files make any use of them.
(Exception: Rock 5A recently had a patch land that misuses _pins; this
 patch corrects that.)

However, on some RK3588 boards, the PCIe 3 controller will indefinitely
stall the boot if CLKREQ# is not muxed (details in the next patch).
This patch unbundles the signals to allow them to be used.

Signed-off-by: Sam Edwards <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Heiko Stuebner <[email protected]>
[ upstream commit: 4294e32111781b3de4d73b944cbd1bc1662a9a7a ]

(cherry picked from commit 8713425fa162b61bcf5f7a6dcd171fddfb12be36)
Reviewed-by: Kever Yang <[email protected]>
7 days agoboard: rockchip: add FriendlyElec NanoPi R3S
Tianling Shen [Thu, 26 Dec 2024 09:20:43 +0000 (17:20 +0800)]
board: rockchip: add FriendlyElec NanoPi R3S

The NanoPi R3S(as "R3S") is an open source platform with dual-Gbps
Ethernet ports designed and developed by FriendlyElec for IoT
applications.

Specification:
- Rockchip RK3566
- 2GB LPDDR4X RAM
- optional 32GB eMMC module
- SD card slot
- 2x 1000 Base-T
- 3x LEDs (POWER, LAN, WAN)
- 2x Buttons (Reset, MaskROM)
- 1x USB 3.0 Port
- Type-C 5V 2A Power

Signed-off-by: Tianling Shen <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
Signed-off-by: Kever Yang <[email protected]>
7 days agoarm64: dts: rockchip: reorder mmc aliases for NanoPi R3S
Tianling Shen [Thu, 26 Dec 2024 09:20:42 +0000 (17:20 +0800)]
arm64: dts: rockchip: reorder mmc aliases for NanoPi R3S

Typically any non-removable storage (emmc) is listed before removable
storage (sd-card) options. Also U-Boot will try to override and use
mmc0=sdhci and mmc1=sdmmc0 for all rk356x boards.

Fixes: 50decd493c83 ("arm64: dts: rockchip: Add FriendlyARM NanoPi R3S board")
Suggested-by: Jonas Karlman <[email protected]>
Signed-off-by: Tianling Shen <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Heiko Stuebner <[email protected]>
[ upstream commit: b7cd1115456d312f8c5e60c80fdc35fd35ea6eab ]

Signed-off-by: Tianling Shen <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agoarm64: dts: rockchip: enable eMMC HS200 mode for NanoPi R3S
Tianling Shen [Thu, 26 Dec 2024 09:20:41 +0000 (17:20 +0800)]
arm64: dts: rockchip: enable eMMC HS200 mode for NanoPi R3S

It is required to boot from eMMC without additional patch in u-boot.

Fixes: 50decd493c83 ("arm64: dts: rockchip: Add FriendlyARM NanoPi R3S board")
Suggested-by: Jonas Karlman <[email protected]>
Signed-off-by: Tianling Shen <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Heiko Stuebner <[email protected]>
[ upstream commit: 1b5365034410f1ca21adadadd492b99bdf4f2c55 ]

Signed-off-by: Tianling Shen <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agoarm64: dts: rockchip: sort props in pmu_io_domains node for NanoPi R3S
Tianling Shen [Thu, 26 Dec 2024 09:20:40 +0000 (17:20 +0800)]
arm64: dts: rockchip: sort props in pmu_io_domains node for NanoPi R3S

The status prop is typically the last prop.

Fixes: 50decd493c83 ("arm64: dts: rockchip: Add FriendlyARM NanoPi R3S board")
Suggested-by: Jonas Karlman <[email protected]>
Signed-off-by: Tianling Shen <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Heiko Stuebner <[email protected]>
[ upstream commit: 17e150fdd983c7e59b9240e34a166285f3c3fb39 ]

Signed-off-by: Tianling Shen <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agoarm64: dts: rockchip: replace deprecated snps, reset props for NanoPi R3S
Tianling Shen [Thu, 26 Dec 2024 09:20:39 +0000 (17:20 +0800)]
arm64: dts: rockchip: replace deprecated snps, reset props for NanoPi R3S

Replace deprecated snps,reset props and move them to the PHY node.

Fixes: 50decd493c83 ("arm64: dts: rockchip: Add FriendlyARM NanoPi R3S board")
Suggested-by: Jonas Karlman <[email protected]>
Signed-off-by: Tianling Shen <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Heiko Stuebner <[email protected]>
[ upstream commit: 82b2868937883b65732da498b26366d34db61510 ]

Signed-off-by: Tianling Shen <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agoarm64: dts: rockchip: fix model name for FriendlyElec NanoPi R3S
Tianling Shen [Thu, 26 Dec 2024 09:20:38 +0000 (17:20 +0800)]
arm64: dts: rockchip: fix model name for FriendlyElec NanoPi R3S

Use the marketing name for model name, this matches the dt-binding.
Also update the website url in copyright.

Fixes: 50decd493c83 ("arm64: dts: rockchip: Add FriendlyARM NanoPi R3S board")
Suggested-by: Jonas Karlman <[email protected]>
Signed-off-by: Tianling Shen <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Heiko Stuebner <[email protected]>
[ upstream commit: b5bf84206a5c77528f9dd4cbca4e72caa063c102 ]

Signed-off-by: Tianling Shen <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agoarm64: dts: rockchip: Add FriendlyARM NanoPi R3S board
Tianling Shen [Thu, 26 Dec 2024 09:20:37 +0000 (17:20 +0800)]
arm64: dts: rockchip: Add FriendlyARM NanoPi R3S board

The NanoPi R3S(as "R3S") is an open source platform with dual-Gbps
Ethernet ports designed and developed by FriendlyElec for IoT
applications.

Specification:
- Rockchip RK3566
- 2GB LPDDR4X RAM
- optional 32GB eMMC module
- SD card slot
- 2x 1000 Base-T
- 3x LEDs (POWER, LAN, WAN)
- 2x Buttons (Reset, MaskROM)
- 1x USB 3.0 Port
- Type-C 5V 2A Power

Signed-off-by: Tianling Shen <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Heiko Stuebner <[email protected]>
[ upstream commit: 50decd493c8394c52d04561fe4ede34df27a46ba ]

Signed-off-by: Tianling Shen <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3288-firefly: Change to use FIT
Jonas Karlman [Thu, 12 Dec 2024 22:09:44 +0000 (22:09 +0000)]
rockchip: rk3288-firefly: Change to use FIT

Change to use FIT and FIT_SIGNATURE when loading U-Boot proper in SPL to
allow checksum validation and fallback loading of FIT from a different
mmc device.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3288-firefly: Fix slow Ethernet initializion
Jonas Karlman [Thu, 12 Dec 2024 22:09:43 +0000 (22:09 +0000)]
rockchip: rk3288-firefly: Fix slow Ethernet initializion

For some reason the Ethernet PHY reset delay is set to 1 second, this
cause an unneccecery long boot delay.

Firefly-RK3288 use RTL8211 Ethernet PHY, datasheet list an initial 10ms
delay and then a 30-76ms delay before accessing registers.

Change to use 80ms delay instead of a full second to speed up Ethernet
initializion in U-Boot.

Also enable PHY_REALTEK, DM_ETH_PHY and PHY_GIGE to improve Ethernet PHY
support in U-Boot.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3288-firefly: Migrate to OF_UPSTREAM
Jonas Karlman [Thu, 12 Dec 2024 22:09:42 +0000 (22:09 +0000)]
rockchip: rk3288-firefly: Migrate to OF_UPSTREAM

The device tree for Firefly-RK3288 in dts/upstream can be used as-is by
U-Boot, migrate board to use OF_UPSTREAM.

Add chosen stdout-path prop to board u-boot.dtsi as it is missing in DT
from dts/upstream. Also change to use the upstream power_led symbol.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3288-firefly: Drop USE_PREBOOT Kconfig option
Jonas Karlman [Thu, 12 Dec 2024 22:09:41 +0000 (22:09 +0000)]
rockchip: rk3288-firefly: Drop USE_PREBOOT Kconfig option

After the migration to use standard boot, storage media devices should
automatically be initialized in the order listed in boot_targets env.

Drop USE_PREBOOT to speed up boot when booting from SD-card or eMMC.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
7 days agorockchip: rk3288-firefly: Drop use of silent console and late boardinfo
Jonas Karlman [Thu, 12 Dec 2024 22:09:40 +0000 (22:09 +0000)]
rockchip: rk3288-firefly: Drop use of silent console and late boardinfo

Current use of SILENT_CONSOLE hide valuable information when something
goes wrong during boot, drop this Kconfig option to allow user to see
e.g. from what media U-Boot proper is loaded from.

A second Model line is printed on console due to DISPLAY_BOARDINFO_LATE,
drop this Kconfig option to remove the second redundant line.

Signed-off-by: Jonas Karlman <[email protected]>
Reviewed-by: Kever Yang <[email protected]>
This page took 0.099247 seconds and 4 git commands to generate.