Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@ to highest power consumption):
More details about the low power mode architecture can be found in
:ref:`LPM constraints framework<pm_constraints_fwk>` section.

.. _pm_partial_io:

***********
Partial I/O
***********
Expand Down Expand Up @@ -157,6 +159,7 @@ I/O Only Plus DDR
.. code-block:: console

root@<machine>:~# echo disabled > /sys/class/rtc/rtc0/device/power/wakeup
root@<machine>:~# echo disabled > /sys/bus/platform/drivers/alarmtimer/*/power/wakeup
root@<machine>:~# echo disabled > /sys/bus/platform/devices/2800000.serial/power/wakeup
root@<machine>:~# echo disabled > /sys/devices/platform/bus@f0000/f900000.dwc3-usb/power/wakeup
root@<machine>:~# echo disabled > /sys/devices/platform/bus@f0000/f910000.dwc3-usb/power/wakeup
Expand All @@ -166,21 +169,22 @@ I/O Only Plus DDR
.. code-block:: console

root@<machine>:~# echo disabled > /sys/class/rtc/rtc0/device/power/wakeup
root@<machine>:~# echo disabled > /sys/bus/platform/drivers/alarmtimer/*/power/wakeup
root@<machine>:~# echo disabled > /sys/bus/platform/devices/2800000.serial/power/wakeup
root@<machine>:~# echo disabled > /sys/devices/platform/bus@f0000/f900000.usb/power/wakeup
root@<machine>:~# echo disabled > /sys/devices/platform/bus@f0000/f910000.usb/power/wakeup

.. rubric:: Then, configure PMIC register bit to turn off only selected rails for this mode.

.. ifconfig:: CONFIG_part_variant in ('AM62AX', 'AM62DX')
.. ifconfig:: CONFIG_part_variant in ('AM62AX')

.. code-block:: console

root@<machine>:~# i2cset -f -y -m 0xFF -r -a 0 0x48 0x86 0x1

The register write has been done to enable PMIC to enter `PMIC S2R <https://www.ti.com/lit/ug/slvucm3/slvucm3.pdf>`_ .

.. ifconfig:: CONFIG_part_variant in ('AM62PX')
.. ifconfig:: CONFIG_part_variant in ('AM62D')

.. code-block:: console

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -403,9 +403,20 @@
`k3-am62x-sk-lpm-wkup-sources.dtso <https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/boot/dts/ti/k3-am62x-sk-lpm-wkup-sources.dtso?h=12.00.00.07>`__
overlay is loaded. Refer to :ref:`How to enable DT overlays<howto_dt_overlays>` for more details.

Once the system has entered Deep Sleep or MCU Only mode as shown in the
:ref:`LPM section<lpm_modes>`, wakeup from MCU_SPI0_D1 can be triggered
by grounding Pin 4 on J8 MCU Header.
.. ifconfig:: CONFIG_part_variant in ('AM62X', 'AM62AX', 'AM62PX')

Once the system has entered Deep Sleep or MCU Only mode as shown in the

Check warning on line 408 in source/linux/Foundational_Components/Power_Management/pm_wakeup_sources.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.SentenceLength] Try to keep sentences to an average of 32 words or fewer. Raw Output: {"message": "[RedHat.SentenceLength] Try to keep sentences to an average of 32 words or fewer.", "location": {"path": "source/linux/Foundational_Components/Power_Management/pm_wakeup_sources.rst", "range": {"start": {"line": 408, "column": 7}}}, "severity": "INFO"}
:ref:`LPM section<lpm_modes>`, wakeup from MCU_SPI0_D1 can be triggered

Check warning on line 409 in source/linux/Foundational_Components/Power_Management/pm_wakeup_sources.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.PassiveVoice] 'be triggered' is passive voice. In general, use active voice. Consult the style guide for acceptable use of passive voice. Raw Output: {"message": "[RedHat.PassiveVoice] 'be triggered' is passive voice. In general, use active voice. Consult the style guide for acceptable use of passive voice.", "location": {"path": "source/linux/Foundational_Components/Power_Management/pm_wakeup_sources.rst", "range": {"start": {"line": 409, "column": 66}}}, "severity": "INFO"}
by grounding Pin 4 on J8 MCU Header.

.. ifconfig:: CONFIG_part_variant in ('AM62DX')

.. note::

AM62D EVM does not have any MCU GPIOs exposed. WKUP UART can be
configured as a MCU GPIO wakeup source by disabling the
target-module@2b300050 in :file:`k3-am62a-wakeup.dtsi`, and then
using the process as described in this section.

*********
WKUP GPIO
Expand Down Expand Up @@ -776,9 +787,19 @@
root@<machine>:~# grep wakeup /proc/interrupts
531: 0 0 0 0 pinctrl 416 Edge WKGPIO:wakeup

Once the system has entered Deep Sleep or MCU Only mode as shown in the
:ref:`LPM section<lpm_modes>`, wakeup from MAIN GPIO1_10 can be triggered
by grounding Pin 33 on J3 User Expansion Connector.
.. ifconfig:: CONFIG_part_variant in ('AM62X', 'AM62AX', 'AM62PX')

Once the system has entered Deep Sleep or MCU Only mode as shown in the
:ref:`LPM section<lpm_modes>`, wakeup from MAIN GPIO1_10 can be triggered

Check warning on line 793 in source/linux/Foundational_Components/Power_Management/pm_wakeup_sources.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.Definitions] Define acronyms and abbreviations (such as 'MAIN') on first occurrence if they're likely to be unfamiliar. Raw Output: {"message": "[RedHat.Definitions] Define acronyms and abbreviations (such as 'MAIN') on first occurrence if they're likely to be unfamiliar.", "location": {"path": "source/linux/Foundational_Components/Power_Management/pm_wakeup_sources.rst", "range": {"start": {"line": 793, "column": 50}}}, "severity": "INFO"}
by grounding Pin 33 on J3 User Expansion Connector.

.. ifconfig:: CONFIG_part_variant in ('AM62DX')

.. note::

AM62D EVM does not have any Main GPIOs exposed. Main UART4 can be
configured as a Main GPIO wakeup source by using the process as
described in this section.

.. ifconfig:: CONFIG_part_variant in ('AM62LX')

Expand Down Expand Up @@ -1012,6 +1033,14 @@

.. ifconfig:: CONFIG_part_variant in ('AM62X', 'AM62AX', 'AM62PX', 'AM62DX')

.. ifconfig:: CONFIG_part_variant in ('AM62DX')

.. important::

The CAN pins are NOT exposed on the AM62D EVM, so they are not
available for use as a physical wakeup source. However, to enter
:ref:`Partial I/O LPM<pm_partial_io>` CAN I/O needs to be enabled.

Check warning on line 1042 in source/linux/Foundational_Components/Power_Management/pm_wakeup_sources.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.Definitions] Define acronyms and abbreviations (such as 'LPM') on first occurrence if they're likely to be unfamiliar. Raw Output: {"message": "[RedHat.Definitions] Define acronyms and abbreviations (such as 'LPM') on first occurrence if they're likely to be unfamiliar.", "location": {"path": "source/linux/Foundational_Components/Power_Management/pm_wakeup_sources.rst", "range": {"start": {"line": 1042, "column": 28}}}, "severity": "INFO"}

CAN pins can be used to wake the system from any supported low power mode.
To enable this, in the device tree configure a "wakeup" pinctrl state that sets
the WKUP_EN flag (29th bit) on the desired padconfig register. This allows the
Expand Down Expand Up @@ -1047,7 +1076,7 @@
is required for testing CAN wakeup. See
:ref:`How to enable DT overlays<howto_dt_overlays>` for details.

.. ifconfig:: CONFIG_part_variant in ('AM62AX','AM62PX')
.. ifconfig:: CONFIG_part_variant in ('AM62AX', 'AM62PX', 'AM62DX')

Either device tree overlay
`k3-am62x-sk-lpm-wkup-sources.dtso <https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/boot/dts/ti/k3-am62x-sk-lpm-wkup-sources.dtso?h=12.00.00.07>`__
Expand Down