https://github.com/amd/amd_hsmp

AMD HSMP module to provide user interface to system management features.

https://github.com/amd/amd_hsmp

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.4%) to scientific vocabulary

Keywords

amd amd-module hsmp in-band systemmanagement
Last synced: 5 months ago · JSON representation

Repository

AMD HSMP module to provide user interface to system management features.

Basic Info
  • Host: GitHub
  • Owner: amd
  • Language: C
  • Default Branch: master
  • Homepage:
  • Size: 134 KB
Statistics
  • Stars: 31
  • Watchers: 6
  • Forks: 10
  • Open Issues: 6
  • Releases: 1
Topics
amd amd-module hsmp in-band systemmanagement
Created almost 5 years ago · Last pushed 7 months ago
Metadata Files
Readme

README.md

amd_hsmp

NOTE: The AMD HSMP driver is now part of the Linux kernel upstream starting in v5.18-rc1. Review kernel.org for updated versions of this driver.

AMD HSMP module to provide user interface to system management features

The Host System Management Port (HSMP) kernel module provides user level access to the HSMP mailboxes implemented by the firmware in the System Management Unit (SMU). Full documentation of the HSMP can be found in the Processor Programming Reference (PPR) for Family 19h on AMD's Developer Central.

https://developer.amd.com/resources/epyc-resources/epyc-specifications

E-SMI library provides C API fo the user space application on top of this module.

Disclaimer

The amdhsmp module is supported only on AMD Family 19h (including third-generation AMD EPYC processors (codenamed "Milan")) or later CPUs. Using the amdhsmp module on earlier CPUs could produce unexpected results, and may cause the processor to operate outside of your motherboard or system specifications. Correspondingly, defaults to only executing on AMD Family 19h Model 0 ~ Fh, 10h ~ 1Fh, 30h ~ 3Fh, & A0 ~ AFh, family 1Ah Model 0 ~ 1fh EPYC processors and family 19h model 90 ~ 9fh MI300A processors.

Interface

See amd_hsmp.h for details about the IOCTL interface.

BIOS configuration

HSMP PCIe interface needs to be enabled in the BIOS. The CBS option can be found by navigating to the following path

Advanced > AMD CBS > NBIO Common Options > SMU Common Options > HSMP Support
BIOS Default: “Auto” (Disabled)

If the option is disabled, calls to the SMU will result in a timeout.

Build and Install

Kernel development packages for the running kernel need to be installed prior to building the HSMP module. A Makefile is provided which should work with most kernel source trees.

To build the kernel module:

> make

This will generate hsmpcommon.ko, hsmpacpi.ko and amd_hsmp.ko modules.

To install the kernel module:

> sudo make modules_install

This will install hsmp modules at /lib/modules//build. To clean the kernel module build directory:

> make clean

Loading

Family 0x1A, model 0x00-0x1F and future platforms(new platforms):

If the HSMP module was installed using modules_install, you can use the modprobe command to load the module.

> sudo modprobe hsmp_acpi

To remove driver

> sudo modprobe -r hsmp_acpi

If module is not installed, use insmod to load from current directory.

> sudo insmod ./hsmp_common.ko

> sudo insmod ./hsmp_acpi.ko

To remove Driver

> sudo rmmod hsmp_acpi

> sudo rmmod hsmp_common

Family 0x19, model 0x00-0x1F, 0x30-0x3F, 0x90-0x9F, 0xA0-0xAF(old platforms)

If the HSMP module was installed using modules_install, you can use the modprobe command to load the module.

> sudo modprobe -r amd_hsmp

To remove driver

> sudo modprobe -r amd_hsmp

If module is not installed, use insmod to load from current directory.

> sudo insmod ./amd_hsmp.ko

> sudo insmod ./hsmp_common.ko

To remove Driver

> sudo rmmod amd_hsmp

> sudo rmmod hsmp_common

DKMS support

Building Module with running version of kernel

Add the module to DKMS tree:

> sudo dkms add ../hsmp_driver

Build the module using DKMS:

> sudo dkms build amd_hsmp/2.4

Install the module using DKMS:

> sudo dkms install amd_hsmp/2.4

Load the module:

> sudo modprobe amd_hsmp

Building Module with specific version of kernel

Add the module to DKMS tree:

> sudo dkms add ../hsmp_driver

Build the module using DKMS:

> sudo dkms build amdhsmp/2.4 -k linuxversion

Install the module using DKMS:

> sudo dkms install amdhsmp/2.4 -k linuxversion

Module is built: /lib/modules/linux_version/updates/dkms/

Notes: It is required to have specific linux verion header in /usr/src

To remove module from dkms tree

> sudo dkms remove -m amd_hsmp/2.4 --all

> sudo rm -rf /usr/src/amd_hsmp-2.4/

Owner

  • Name: AMD
  • Login: amd
  • Kind: organization
  • Email: dl.DevSecOps-Github-Admin@amd.com

GitHub Events

Total
  • Create event: 1
  • Release event: 1
  • Issues event: 2
  • Watch event: 4
  • Issue comment event: 18
  • Push event: 1
  • Pull request event: 3
  • Fork event: 8
Last Year
  • Create event: 1
  • Release event: 1
  • Issues event: 2
  • Watch event: 4
  • Issue comment event: 18
  • Push event: 1
  • Pull request event: 3
  • Fork event: 8

Committers

Last synced: 8 months ago

All Time
  • Total Commits: 49
  • Total Committers: 4
  • Avg Commits per committer: 12.25
  • Development Distribution Score (DDS): 0.102
Past Year
  • Commits: 28
  • Committers: 1
  • Avg Commits per committer: 28.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Suma Hegde s****e@a****m 44
Naveen Krishna Chatradhi n****d@a****m 3
Carlos Bilbao Z****n 1
Sandeep K Rai s****a@a****m 1
Committer Domains (Top 20 + Academic)
amd.com: 3

Issues and Pull Requests

Last synced: 8 months ago

All Time
  • Total issues: 7
  • Total pull requests: 4
  • Average time to close issues: 7 months
  • Average time to close pull requests: 4 months
  • Total issue authors: 6
  • Total pull request authors: 4
  • Average comments per issue: 4.57
  • Average comments per pull request: 0.5
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 2
  • Pull requests: 2
  • Average time to close issues: about 2 months
  • Average time to close pull requests: N/A
  • Issue authors: 2
  • Pull request authors: 2
  • Average comments per issue: 8.5
  • Average comments per pull request: 0.5
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • vysocky (2)
  • tbarbette (1)
  • martin-mat (1)
  • C-Newman (1)
  • Kostr (1)
  • cyring (1)
Pull Request Authors
  • garrettbyrd (2)
  • martin-mat (1)
  • Zildj1an (1)
  • vysocky (1)
  • cdelzotti (1)
Top Labels
Issue Labels
Pull Request Labels