| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
| |
Signed-off-by: Haaland Chen <haaland@milkv.io>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
|
|
|
| |
Since T-HEAD Linux SDK V1.4.2, modified the kernel device tree
naming rules, starting with th1520.
Signed-off-by: Haaland Chen <haaland@milkv.io>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
| |
This reverts commit adec30ace4cebb0554bb246b52eebaf37c1545c4.
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
| |
Signed-off-by: thead_admin <occ_thead@service.alibaba.com>
|
|
|
|
| |
Signed-off-by: thead_admin <occ_thead@service.alibaba.com>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The data cache invalidation function for c9xx CPUs uses `dcache.cipa`
instruction. According to T-Head extension specification[1] section
3.1.5, this instruction also performs a cache clean along with the
invalidation.
On top of being incorrect, this leads to a serious issue on the
designware ethernet driver, where stalled cache may get flushed each
time we handle a new received packet[2]. As a result, received packet
are randomly corrupted with old cached data. This can easily be
reproduced by sending an ARP request to the device during a TFTP
transfer. The last TFTP block is treated as the ARP reply we just sent,
which makes U-Boot hang on the block.
Always use `dcache.ipa` instruction to invalidate dcache. Replace
existing usages of `dcache.ipa` with our implementation.
Note that this fix is slightly intrusive as it changes the cache
invalidation behavior in all drivers. However, I have not noticed any
side-effect during my tests.
[1] https://github.com/T-head-Semi/thead-extension-spec/releases/download/2.3.0/xthead-2023-11-10-2.3.0.pdf
[2] https://github.com/revyos/thead-u-boot/blob/918a8c89e056e3462031d6a498bb4fcc0c3526ce/drivers/net/designware.c#L475
|
|
|
|
| |
Signed-off-by: Haaland Chen <haaland@milkv.io>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
| |
Signed-off-by: Haaland Chen <haaland@milkv.io>
|
|
|
|
| |
Signed-off-by: Haaland Chen <haaland@milkv.io>
|
|
|
|
| |
Signed-off-by: Haaland Chen <haaland@milkv.io>
|
|
|
|
| |
Signed-off-by: Haaland Chen <haaland@milkv.io>
|
|
|
|
| |
Signed-off-by: Haaland Chen <haaland@milkv.io>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
To check if low drive strength is causing problem.
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit extends the sandbox to implement a dummy
extension_board_scan() function and enables the extension command in
the sandbox configuration. It then adds a test that checks the proper
functionality of the extension command by applying two Device Tree
overlays to the sandbox Device Tree.
Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
[trini: Limit to running on sandbox]
Signed-off-by: Tom Rini <trini@konsulko.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds a new "extension" command, which aims at detecting
extension boards connected to the hardware platform, and apply the
Device Tree overlays that describe the hardware present on those
extension boards.
In order to enable this mechanism, board-specific code must implement
the extension_board_scan() function that fills in a linked list of
"struct extension", each describing one extension board. In addition,
the board-specific code must select the SUPPORT_EXTENSION_SCAN Kconfig
boolean.
Based on this:
- "extension scan" makes the generic code call the board-specific
extension_board_scan() function to retrieve the list of detected
extension boards.
- "extension list" allows to list the detected extension boards.
- "extension apply <number>|all" allows to apply the Device Tree
overlay(s) corresponding to one, or all, extension boards
The latter requires two environment variables to exist and set one variable
to run:
- extension_overlay_addr: the RAM address where to load the Device
Tree overlays
- extension_overlay_cmd: the U-Boot command to load one overlay.
Indeed, the location and mechanism to load DT overlays is very setup
specific.
- extension_overlay_name: set by the command: the name of the DT which
will be load during the execution.
When calling the command described in the extension_overlay_cmd
variable, the variable extension_overlay_name will be defined. So a
typical extension_overlay_cmd will look like this:
extension_overlay_cmd=load mmc 0:1 $extension_overlay_addr /boot/$extension_overlay_name
Here is an example on how to use it:
=> run loadfdt
=> fdt addr $fdtaddr
=> setenv extension_overlay_addr 0x1000
=> setenv extension_overlay_cmd 'load mmc 0:1 ${extension_overlay_addr} /boot/${extension_overlay_name}'
=> extension scan
Found 1 extension board(s).
=> extension apply 0
519 bytes read in 3 ms (168.9 KiB/s)
Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
Reviewed-by: Maxime Ripard <maxime@cerno.tech>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Move the fdt_valid function to fdt_support.
This changes allow to be able to test the validity of a devicetree in
other c files.
Update code syntax.
Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Maxime Ripard <maxime@cerno.tech>
|
|
|
|
| |
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
|
|
|
|
| |
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
|
|
|
|
| |
Signed-off-by: Robert Nelson <robertcnelson@gmail.com>
|
|
|
|
| |
Signed-off-by: Han Gao <gaohan@iscas.ac.cn>
|