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 @@ -32,7 +32,7 @@ transition to the selected state.
.. rubric:: Enable Standby

In order to enable Standby the `k3-am62x-sk-lpm-standby.dtso
<https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/boot/dts/ti/k3-am62x-sk-lpm-standby.dtso?h=11.02.08>`__
<https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/boot/dts/ti/k3-am62x-sk-lpm-standby.dtso?h=12.00.00.07>`__
overlay should be applied. Refer to :ref:`How to enable DT overlays
<howto_dt_overlays>` for more details. More information on what the overlay
does is in the :ref:`linux-device-tree-label` section.
Expand Down Expand Up @@ -112,7 +112,7 @@ transition to the selected state.

In order to implement Standby in Linux, an idle-states node has to be added
and then referenced by the CPU node. The `k3-am62x-sk-lpm-standby.dtso
<https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/boot/dts/ti/k3-am62x-sk-lpm-standby.dtso?h=11.02.08>`__
<https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/boot/dts/ti/k3-am62x-sk-lpm-standby.dtso?h=12.00.00.07>`__
can be used as a reference.

.. code-block:: dts
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,16 +48,13 @@
Only AM62 LP-SK EVM supports Partial I/O mode.

The reference implementation in this SDK implements Partial I/O as a
poweroff state. On poweroff, Linux ti_sci driver checks the potential
Partial I/O wakeup sources for being enabled. If one of the wakeup
sources is found to be enabled, Partial I/O is entered instead of poweroff.
poweroff state. On poweroff, Linux ti_sci driver checks if any potential

Check warning on line 51 in source/linux/Foundational_Components/Power_Management/pm_low_power_modes.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.Hyphens] Use 'power-off' rather than 'poweroff'. Raw Output: {"message": "[RedHat.Hyphens] Use 'power-off' rather than 'poweroff'.", "location": {"path": "source/linux/Foundational_Components/Power_Management/pm_low_power_modes.rst", "range": {"start": {"line": 51, "column": 20}}}, "severity": "WARNING"}

Check warning on line 51 in source/linux/Foundational_Components/Power_Management/pm_low_power_modes.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.Hyphens] Use 'power-off' rather than 'poweroff'. Raw Output: {"message": "[RedHat.Hyphens] Use 'power-off' rather than 'poweroff'.", "location": {"path": "source/linux/Foundational_Components/Power_Management/pm_low_power_modes.rst", "range": {"start": {"line": 51, "column": 1}}}, "severity": "WARNING"}
Partial I/O wakeup sources are enabled. If one of the wakeup sources is

Check warning on line 52 in source/linux/Foundational_Components/Power_Management/pm_low_power_modes.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.PassiveVoice] 'is enabled' is passive voice. In general, use active voice. Consult the style guide for acceptable use of passive voice. Raw Output: {"message": "[RedHat.PassiveVoice] 'is enabled' 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_low_power_modes.rst", "range": {"start": {"line": 52, "column": 70}}}, "severity": "INFO"}

Check warning on line 52 in source/linux/Foundational_Components/Power_Management/pm_low_power_modes.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.PassiveVoice] 'are enabled' is passive voice. In general, use active voice. Consult the style guide for acceptable use of passive voice. Raw Output: {"message": "[RedHat.PassiveVoice] 'are enabled' 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_low_power_modes.rst", "range": {"start": {"line": 52, "column": 28}}}, "severity": "INFO"}
enabled, Partial I/O is entered instead of poweroff.

Check warning on line 53 in source/linux/Foundational_Components/Power_Management/pm_low_power_modes.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.Hyphens] Use 'power-off' rather than 'poweroff'. Raw Output: {"message": "[RedHat.Hyphens] Use 'power-off' rather than 'poweroff'.", "location": {"path": "source/linux/Foundational_Components/Power_Management/pm_low_power_modes.rst", "range": {"start": {"line": 53, "column": 44}}}, "severity": "WARNING"}

Check warning on line 53 in source/linux/Foundational_Components/Power_Management/pm_low_power_modes.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.PassiveVoice] 'is entered' is passive voice. In general, use active voice. Consult the style guide for acceptable use of passive voice. Raw Output: {"message": "[RedHat.PassiveVoice] 'is entered' 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_low_power_modes.rst", "range": {"start": {"line": 53, "column": 22}}}, "severity": "INFO"}
Comment on lines 50 to +53
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This SDK implements Partial I/O as a power-off state. The Linux ti_sci
driver will enter Partial I/O if any Partial I/O wakeup sources are preset.


The following wakeup sources have been configured for Partial I/O:
mcu_uart0, mcu_mcan0, and mcu_mcan1. Partial I/O mode can only be tested
when `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=11.02.08>`__
overlay is loaded. Please refer to :ref:`How to enable DT overlays<howto_dt_overlays>` for more details.

After Linux boots, the MCAN wakeup for Partial I/O is enabled.
Wakeup sources mcu_mcan0 and mcu_mcan1 have been configured for Partial

Check warning on line 55 in source/linux/Foundational_Components/Power_Management/pm_low_power_modes.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.PassiveVoice] 'been configured' is passive voice. In general, use active voice. Consult the style guide for acceptable use of passive voice. Raw Output: {"message": "[RedHat.PassiveVoice] 'been configured' 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_low_power_modes.rst", "range": {"start": {"line": 55, "column": 45}}}, "severity": "INFO"}
I/O. For more information on enabling CAN, refer to

Check warning on line 56 in source/linux/Foundational_Components/Power_Management/pm_low_power_modes.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.TermsSuggestions] Depending on the context, consider using 'see' rather than 'refer to'. Raw Output: {"message": "[RedHat.TermsSuggestions] Depending on the context, consider using 'see' rather than 'refer to'.", "location": {"path": "source/linux/Foundational_Components/Power_Management/pm_low_power_modes.rst", "range": {"start": {"line": 56, "column": 44}}}, "severity": "INFO"}

Check warning on line 56 in source/linux/Foundational_Components/Power_Management/pm_low_power_modes.rst

View workflow job for this annotation

GitHub Actions / vale

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

Check warning on line 56 in source/linux/Foundational_Components/Power_Management/pm_low_power_modes.rst

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [RedHat.TermsSuggestions] Depending on the context, consider using 'information about' rather than 'information on'. Raw Output: {"message": "[RedHat.TermsSuggestions] Depending on the context, consider using 'information about' rather than 'information on'.", "location": {"path": "source/linux/Foundational_Components/Power_Management/pm_low_power_modes.rst", "range": {"start": {"line": 56, "column": 15}}}, "severity": "INFO"}
:ref:`CAN I/O Daisy Chain<pm_wakeup_sources_can>`.
Comment on lines +55 to +57
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wakeup sources mcu_mcan0 and mcu_mcan1 have support for Partial
I/O. For more information about enabling CAN, see
:ref:CAN I/O Daisy Chain<pm_wakeup_sources_can>.


Enter Partial I/O mode with the following command:

Expand All @@ -70,10 +67,11 @@

.. code-block:: text

[ 51.698039] systemd-shutdown[1]: Powering off.
[ 51.769478] reboot: Power down
[ 74.310565] systemd-shutdown[1]: Powering off.
[ 74.396204] reboot: Power down
[ 74.399358] ti-sci 44043000.system-controller: Entering Partial-IO because a powered wakeup-enabled device was found.

The system has entered Partial I/O and can only be woken up with an
The system has entered Partial I/O and can only be woken up with
activity on the I/O pin programmed for wakeup. For example, if mcu_mcan0
wakeup was enabled, grounding Pin 22 of J8 MCU Header will wakeup the
system and it will go through a normal Linux boot process.
Expand Down Expand Up @@ -113,13 +111,12 @@

.. important:: Jumper J12 should be connected on SK to enable system to enter I/O Only plus DDR mode.

The wakeup sources that can be used to wake the system from I/O Only Plus
DDR are mcu_uart0, mcu_mcan0, mcu_mcan1 and wkup_uart0. To use the mcu_mcan0
and mcu_mcan1 wakeup sources, apply the
`k3-am62x-sk-lpm-io-ddr-wkup-sources.dtso <https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/boot/dts/ti/k3-am62x-sk-lpm-io-ddr-wkup-sources.dtso?h=11.02.08>`__
overlay. Please refer to :ref:`How to enable DT overlays<howto_dt_overlays>`
for more details. To use the mcu_uart0 and wkup_uart0 wakeup sources, direct
register writes can be used to enable wakeup after Linux boots.
The wakeup sources that can be used to wake the system from I/O Only
Plus DDR are mcu_uart0, mcu_mcan0, mcu_mcan1 and wkup_uart0. To use the
mcu_mcan0 and mcu_mcan1 wakeup sources, refer to
:ref:`CAN I/O Daisy Chain<pm_wakeup_sources_can>`.
To use the mcu_uart0 and wkup_uart0 wakeup sources, direct register
writes can be used to enable wakeup after Linux boots.

.. rubric:: Following commands set the wakeup EN bit, enable receive for pad in PADCONFIG register and can
be used to enable wakeup from mcu_uart0 and wkup_uart0 pins respectively.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -151,8 +151,8 @@ Specifically, checking of constraints is done at two levels:

The code enabling the constraints framework can be found in:

#. TISCI PM Domain driver: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/pmdomain/ti/ti_sci_pm_domains.c?h=11.02.08
#. TISCI driver: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/firmware/ti_sci.c?h=11.02.08
#. TISCI PM Domain driver: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/pmdomain/ti/ti_sci_pm_domains.c?h=12.00.00.07
#. TISCI driver: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/firmware/ti_sci.c?h=12.00.00.07

Examples of adding constraints from the remote core side are being implemented and will
be enabled in future release.
Expand Down
Loading
Loading