-
Notifications
You must be signed in to change notification settings - Fork 76
feat(linux): Add documentation for dynamic DDR refresh rate change #572
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
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,95 @@ | ||
| .. _K3-DDR-Driver: | ||
|
Check warning on line 1 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/DDR.rst
|
||
| .. _ddr-driver: | ||
|
|
||
| ###### | ||
| K3 DDR | ||
|
Check warning on line 5 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/DDR.rst
|
||
| ###### | ||
|
|
||
| ************ | ||
| Introduction | ||
| ************ | ||
|
|
||
| The K3 DDR driver provides management and monitoring capabilities for DDR memory | ||
|
Check warning on line 12 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/DDR.rst
|
||
| subsystems on Texas Instruments K3 SoCs. | ||
|
|
||
| The following is a list of supported K3 DDR driver features by device family: | ||
|
Check warning on line 15 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/DDR.rst
|
||
|
|
||
| .. list-table:: K3 DDR Driver Feature Support | ||
|
Check warning on line 17 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/DDR.rst
|
||
| :header-rows: 1 | ||
|
|
||
| * - Device Family | ||
| - Temperature Monitoring | ||
|
|
||
| * - J7200 | ||
| - Yes | ||
|
|
||
| * - AM62x LP SK/ AM62Ax / AM62Px | ||
| - Yes | ||
|
|
||
| ******************************** | ||
| Building and Enabling the Driver | ||
|
Check warning on line 30 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/DDR.rst
|
||
| ******************************** | ||
|
|
||
| .. rubric:: Kernel Configuration | ||
|
Check warning on line 33 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/DDR.rst
|
||
|
|
||
| The following kernel configuration enables the K3 DDR driver: | ||
|
Check warning on line 35 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/DDR.rst
|
||
|
|
||
| .. code-block:: kconfig | ||
|
|
||
| CONFIG_K3_DDR_TEMP=y | ||
| CONFIG_HWMON=y | ||
|
|
||
| .. _ddr-temperature-monitoring-linux: | ||
|
|
||
| ************************************ | ||
| Using the DDR Temperature Monitoring | ||
|
Check warning on line 45 in source/linux/Foundational_Components/Kernel/Kernel_Drivers/DDR.rst
|
||
| ************************************ | ||
|
|
||
| By default, the DDR subsystem keeps temperature polling turned off. For allowing | ||
nehamalcom marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| the kernel driver to monitor temperature, the user must enable polling during | ||
| DDR configuration and initialization at boot time. | ||
|
|
||
| See :ref:`ddr-temperature-monitoring-uboot` in U-Boot documentation. | ||
|
|
||
| The K3 DDR driver creates a hwmon device that provides temperature status | ||
| information through sysfs. The driver registers as ``k3_ddr`` in the hwmon | ||
| subsystem for temperature monitoring functionality. | ||
|
|
||
| The driver reports temperature status according to LPDDR4 specification: | ||
|
|
||
| .. list-table:: | ||
| :header-rows: 1 | ||
| :stub-columns: 1 | ||
|
|
||
| * - Value | ||
| - Temperature Status | ||
| * - 0 | ||
| - Low temperature | ||
| * - 1 | ||
| - 4x refresh interval | ||
| * - 2 | ||
| - 2x refresh interval | ||
| * - 3 | ||
| - 1x refresh interval (nominal) | ||
| * - 4 | ||
| - 0.5x refresh interval | ||
| * - 5 | ||
| - 0.25x refresh interval | ||
| * - 6 | ||
| - 0.25x refresh interval with derating | ||
| * - 7 | ||
| - High temperature | ||
|
|
||
| The hwmon device should now show up in the filesystem. | ||
|
|
||
| .. code-block:: console | ||
|
|
||
| root@evm:~# ls -l /sys/class/hwmon/ | ||
| hwmon0 | ||
|
|
||
| Check the current DDR temperature status: | ||
|
|
||
| .. code-block:: console | ||
|
|
||
| root@evm:~# cat /sys/class/hwmon/hwmon0/device/k3_ddr_temp_status | ||
| 1x refresh interval | ||
Uh oh!
There was an error while loading. Please reload this page.