[Accel-config] [PATCH v3 0/4] Add support for ABI change in driver
ramesh.thomas at intel.com
| Newsgroups | dev.linux.lists.accel-config |
|---|---|
| Message-ID | <[email protected]> |
From: Ramesh Thomas <ramesh.thomas(a)intel.com> v3: - Get driver unbind path from symlink in device/driver to support cases where devices get auto-bound v2: - Fixed naming of driver bind paths to not incorrectly use "portal" - Reworded commit messages correcting use of "portal" v1: (reworded) The new ABI changes the way devices are enumerated in sysfs and the device portals used to bind and unbind wqs to driver. These patches add support for the new ABI as well as compatibility with the ones in older kernels. Following are the modes that are supported. 1. New ABI: - Both iax and dsa devices will be in same bus /sys/bus/dsa - Different device portals for "user", "kernel" and "mdev" type wqs 2. Kernel 5.11 and 5.12: - iax and dsa will be in 2 separate buses - Bus, device and device portal names are same 3. Older kernels : - Has only dsa bus 4. OSV having kernel with CONFIG_INTEL_IDXD_COMPAT enabled: - Only one dsa bus - Both iax and dsa devices will be on dsa bus. - Only one device portal for all wq types Following are the changes added. - Detect compatibility mode during init and store bus type in device contexts. - Currently enumeration assumes device, bus and driver have the same name and relies on that to construct driver bind paths. Change it to dynamically construct the paths based on compatibility mode that was detected during init. Ramesh Thomas (4): accel-config: Fix some indentation and coding style issues accel-config: Add compatibility mode detection accel-config: Store bus type in device context accel-config: Add support for new device bind paths accfg/lib/libaccfg.c | 109 ++++++++++++++++++++++++++++++---------- accfg/lib/private.h | 70 +++++++++++++------------- accfg/libaccel_config.h | 37 +++++++------- util/sysfs.c | 5 +- util/sysfs.h | 13 ++--- 5 files changed, 147 insertions(+), 87 deletions(-) -- 2.26.2