HomeFreeBSD

ena: PHC activation check point

Description

ena: PHC activation check point

Following this change, PHC can be activated on supported devices.
Driver and device will each hold its own max supported PHC version.
Initial supported PHC version including all changes to this check point
is ENA_ADMIN_PHC_FEATURE_VERSION_0,
all future PHC versions should always be backward compatible.

PHC mutual support is decided in the following steps:

  1. Driver publishes PHC support
  2. Device publishes PHC support
  3. Driver publishes supported PHC version
  4. Device publishes supported PHC version and settings
  5. Driver enables PHC

    DRIVER DEVICE | (1) | | Driver sends ENA_ADMIN_SET_FEATURE | | - Set feature ID ENA_ADMIN_HOST_ATTR_CONFIG | | - Enable bit ENA_ADMIN_HOST_INFO_PHC_MASK | | ------------------------------------------------> | | (2) | | Driver sends ENA_ADMIN_GET_FEATURE | | - Set feature ID ENA_ADMIN_DEVICE_ATTRIBUTES | | ------------------------------------------------> | | Device responds to ENA_ADMIN_GET_FEATURE | | - Enable bit ENA_ADMIN_PHC_CONFIG | | <------------------------------------------------ | | (3) | | Driver sends ENA_ADMIN_GET_FEATURE | | - Set feature ID ENA_ADMIN_PHC_CONFIG | | - Set PHC version ENA_ADMIN_PHC_FEATURE_VERSION_0 | | ------------------------------------------------> | | (4) | | Device responds to ENA_ADMIN_GET_FEATURE | | - Set PHC version | | - Set doorbel offset | | - Set timeouts | | <------------------------------------------------ | | (5) | | Driver sends ENA_ADMIN_SET_FEATURE | | - Set feature ID ENA_ADMIN_PHC_CONFIG | | - Set output address/length | | ------------------------------------------------> |

Approved by: cperciva (mentor)
MFC after: 2 weeks
Sponsored by: Amazon, Inc.

Details

Provenance
osamaabb_amazon.comAuthored on Aug 7 2024, 6:24 AM
Parents
rG47a7c79e1db3: ena: Adjust PHC for multiple devices
Branches
Unknown
Tags
Unknown