Skip to content

Conversation

@sathyapk
Copy link
Collaborator

The PR has AMD APML Alert_L driver architecture by replacing static device tree-based device discovery with a dynamic, centralized device registration system. This enhancement improves maintainability, reduces DTS complexity, and enables flexible multi-socket configurations.

Key changes:

  1. Add centralized device registration system for AMD APML devices. Provides global
    device list where SBRMI and SBTSI drivers can register themselves, enabling the Alert_L driver
    to discover and safely process alerts from registered devices.
  2. Remove explicit sbrmi and sbtsi device references from Alert_L device tree nodes.
  3. Add device registration/unregistration calls to SBTSI/SBRMI drivers during probe/remove.

Existing implementation #143 - Reviewed and tested:
a70993b dt-bindings: misc: apml-alertl: Add APML Alert_L bindings
dc5a9b9 arm64: dts: aspeed: Alert_L changes for Kenya & Nigeria
cd8ab36 arm64: dts: aspeed: Alert_L changes for Morocco & Congo
d46dd8b misc: amd-apml: Add support for AMD APML Alert_L platform driver
7e25856 misc: amd-apml: Create common header for sbtsi device

New dynamic discovery design changes:

a3cab62 misc: amd-apml: Update Alert_L driver to use global device registry
5edd96b misc: amd-apml: Integrate SBRMI with common device registration framework
05e6627 misc: amd-apml: Integrate SBTSI with common device registration framework
a9bb359 misc: amd-apml: Add common device registration framework
cbbea02 arm64: dts: aspeed: Update alert_l node for Nigeria and Kenya
0a39fca arm64: dts: aspeed: Update alert_l node for Morocco & Congo

Attaching test report from QA: Tested on 1P and 2P sytsems
Alertl_Test_Report.xlsx

Copy link
Collaborator

@nchatrad nchatrad left a comment

Choose a reason for hiding this comment

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

reviewed offline,
this changeset avoids the need for dts in alert_l module. makes it more scalable for multihost type setups aswell

@sathyapk sathyapk force-pushed the alertl-nodts branch 3 times, most recently from 73f75f1 to 42893c3 Compare November 26, 2025 13:27
akky16 and others added 12 commits December 5, 2025 16:18
Move out the sbtsi device structure to a common header file and
add device matching helper function for I2C and I3C buses.

This is required to add support for the APML Alert_L module which
needs access to sbtsi device struct and device matching capability.

Reviewed-by: Naveen Krishna Chatradhi <naveenkrishna.chatradhi@amd.com>
Signed-off-by: Akshay Gupta <akshay.gupta@amd.com>
Processors from AMD provide APML ALERT_L for BMC users to
monitor events.
APML Alert_L is asserted in multiple events,
- Machine Check Exception occurs within the system
- The processor alerts the SBI on system fatal error event
- Set by hardware as a result of a 0x71/0x72/0x73 command completion
- Set by firmware to indicate the completion of a mailbox operation
- High/Low Temperature Alert

APML Alert_L module define uevents to notify registered userspace processes
of the alert event.

Reviewed-by: Naveen Krishna Chatradhi <naveenkrishna.chatradhi@amd.com>
Signed-off-by: Akshay Gupta <akshay.gupta@amd.com>
Signed-off-by: sathya priya kumar <SathyaPriya.K@amd.com>
-Add alertl node for P1 and P2 host processor in Morocco platform.
-Add alertl node for P1 host processor in Congo platform.

Reviewed-by: Naveen Krishna Chatradhi <naveenkrishna.chatradhi@amd.com>
Signed-off-by: Akshay Gupta <akshay.gupta@amd.com>
Signed-off-by: sathya priya kumar <SathyaPriya.K@amd.com>
-Add alertl node for P1 and P2 host processor in Nigeria platform.
-Add alertl node for P1 host processor in Kenya platform.

Reviewed-by: Naveen Krishna Chatradhi <naveenkrishna.chatradhi@amd.com>
Signed-off-by: Akshay Gupta <akshay.gupta@amd.com>
Signed-off-by: sathya priya kumar <SathyaPriya.K@amd.com>
-Document device-tree bindings for APML Alert_L driver.

Reviewed-by: Naveen Krishna Chatradhi <naveenkrishna.chatradhi@amd.com>
Signed-off-by: Akshay Gupta <akshay.gupta@amd.com>
Signed-off-by: sathya priya kumar <SathyaPriya.K@amd.com>
(cherry picked from commit 0f54429)
Remove explicit sbrmi and sbtsi device references from Alert_L device
tree nodes. The updated Alert_L driver now uses dynamic device
discovery through the global APML device registry instead of DTS-based
device parsing.

Reviewed-by: Naveen Krishna Chatradhi <naveenkrishna.chatradhi@amd.com>
Signed-off-by: sathya priya kumar <SathyaPriya.K@amd.com>
Signed-off-by: Akshay Gupta <akshay.gupta@amd.com>
Remove explicit sbrmi and sbtsi device references from Alert_L device
tree nodes. The updated Alert_L driver now uses dynamic device
discovery through the global APML device registry instead of DTS-based
device parsing.

Reviewed-by: Naveen Krishna Chatradhi <naveenkrishna.chatradhi@amd.com>
Signed-off-by: sathya priya kumar <SathyaPriya.K@amd.com>
Signed-off-by: Akshay Gupta <akshay.gupta@amd.com>
Add centralized device registration system for AMD APML devices.
Provides global device list where SBRMI and SBTSI drivers can
register themselves, enabling the Alert_L driver to discover and
safely process alerts from registered devices.

Reviewed-by: Naveen Krishna Chatradhi <naveenkrishna.chatradhi@amd.com>
Signed-off-by: sathya priya kumar <SathyaPriya.K@amd.com>
Signed-off-by: Akshay Gupta <akshay.gupta@amd.com>
…work

Add device registration/unregistration calls to SBTSI drivers. This
enables Alert_L driver to discover and safely access registered TSI
devices for processing temperature alerts.

Remove device tree matching functions from SBTSI drivers that are no
longer needed after migrating Alert_L driver to use the global device
registry from apml_common framework.

The legacy Alert_L module used *_match_i2c/*_match_i3c functions to
retrieve device node information from device tree nodes. With the new
design, Alert_L module devices are now registered during each module's
probe function, making the old matching functions obsolete.

Reviewed-by: Naveen Krishna Chatradhi <naveenkrishna.chatradhi@amd.com>
Signed-off-by: sathya priya kumar <SathyaPriya.K@amd.com>
Signed-off-by: Akshay Gupta <akshay.gupta@amd.com>
…work

Add device registration/unregistration calls to SBRMI drivers. This
enables Alert_L driver to discover and safely access registered RMI
devices for processing RAS event.

Remove device tree matching functions from SBRMI drivers that are no
longer needed after migrating Alert_L driver to use the global device
registry from apml_common framework.

The legacy Alert_L module used *_match_i2c/*_match_i3c functions to
retrieve device node information from device tree nodes. With the new
design, Alert_L module devices are now registered during each module's
probe function, making the old matching functions obsolete.

Reviewed-by: Naveen Krishna Chatradhi <naveenkrishna.chatradhi@amd.com>
Signed-off-by: sathya priya kumar <SathyaPriya.K@amd.com>
Signed-off-by: Akshay Gupta <akshay.gupta@amd.com>
Modify device tree-based device discovery in Alert_L driver with
centralized device registry from apml_common module. This provides
more reliable to sbrmi/sbtsi device access for processing alerts
and eliminates DTS parsing.

Reviewed-by: Naveen Krishna Chatradhi <naveenkrishna.chatradhi@amd.com>
Signed-off-by: Akshay Gupta <akshay.gupta@amd.com>
Signed-off-by: sathya priya kumar <SathyaPriya.K@amd.com>
-Document device-tree changes for APML Alert_L driver.

Reviewed-by: Naveen Krishna Chatradhi <naveenkrishna.chatradhi@amd.com>
Signed-off-by: Akshay Gupta <akshay.gupta@amd.com>
Signed-off-by: sathya priya kumar <SathyaPriya.K@amd.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants