-
Notifications
You must be signed in to change notification settings - Fork 78
feat(U-Boot): add QoS configuration section #582
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,40 @@ | ||
| Quality of Service (QoS) | ||
|
Check warning on line 1 in source/linux/Foundational_Components/U-Boot/UG-QoS.rst
|
||
| ######################## | ||
|
|
||
| The Common Bus Architecture (CBASS) module includes Quality of Service | ||
| (QoS) blocks to route and prioritize SoC bus traffic. By adjusting | ||
|
Check warning on line 5 in source/linux/Foundational_Components/U-Boot/UG-QoS.rst
|
||
| attributes like priority, Address Selection (ASEL), and Order ID | ||
|
Check warning on line 6 in source/linux/Foundational_Components/U-Boot/UG-QoS.rst
|
||
| (orderID), you can optimize transaction handling. | ||
|
|
||
| For example, most K3 SoC External Memory Interface (EMIF) controllers | ||
| use two ports. Setting an Order ID between 8 and 15 routes traffic | ||
| through a high-priority port, ensuring it is serviced before standard | ||
|
Check warning on line 11 in source/linux/Foundational_Components/U-Boot/UG-QoS.rst
|
||
| traffic. Applying this to the display subsystem helps prevent stuttering | ||
| and jitter. | ||
|
|
||
| For more details, see your processor's Technical Reference Manual (TRM). | ||
|
|
||
| Modifying QoS Defaults | ||
|
Check warning on line 17 in source/linux/Foundational_Components/U-Boot/UG-QoS.rst
|
||
| ====================== | ||
|
|
||
| Most transactions default to the lowest priority (ASEL 0, Order ID 0). | ||
| During boot-up, `U-Boot can update`_ these settings using data from the. | ||
|
Check warning on line 21 in source/linux/Foundational_Components/U-Boot/UG-QoS.rst
|
||
| Sysconfig Tool which you can download or launch online `here`_. | ||
|
Check warning on line 22 in source/linux/Foundational_Components/U-Boot/UG-QoS.rst
|
||
|
|
||
| .. _U-Boot can update: https://source.denx.de/u-boot/u-boot/-/blob/v2025.10/arch/arm/mach-k3/am62px/am62p5_init.c?ref_type=tags#L253 | ||
| .. _here: https://www.ti.com/tool/SYSCONFIG | ||
bryanbrattlof marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
|
||
| The MCU+ SDK documentation has `an excellent guide`_ on how to to use the | ||
| Sysconfig Tool to generate the needed configuration file. Once generated, copy | ||
| the file into the :file:`arch/arm/mach-k3/r5/${SOC}/${SOC}_qos_uboot.c` and | ||
| rebuild U-Boot to apply your changes. | ||
|
|
||
| .. _an excellent guide: https://software-dl.ti.com/mcu-plus-sdk/esd/AM62X/latest/exports/docs/api_guide_am62x/DRIVERS_QOS_PAGE.html | ||
|
|
||
| .. note:: | ||
|
|
||
| Configuring the QoS blocks of a running system can cause issues. | ||
| You can only modify these settings during boot-up by the boot-loaders | ||
| when many of the systems in the SoC are idle. | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -34,3 +34,4 @@ User's Guide | |
| UG-Key-Writer-Lite | ||
| UG-Programming-OTPs | ||
| UG-Falcon-Mode | ||
| UG-QoS | ||
Uh oh!
There was an error while loading. Please reload this page.