On 15-08-2025 22:37, Zack McKevitt wrote: > On 7/30/2025 12:49 AM, Aravind Iddamsetty wrote: >> +static void drm_genl_family_init(struct drm_device *dev) >> +{ >> + dev->drm_genl_family = drmm_kzalloc(dev, sizeof(struct >> genl_family), >> + GFP_KERNEL); >> + >> + /* Use drm primary node name eg: card0 to name the genl family */ >> + snprintf(dev->drm_genl_family->name, >> sizeof(dev->drm_genl_family->name), >> + "%s", dev->primary->kdev->kobj.name); >> + dev->drm_genl_family->version = DRM_GENL_VERSION; >> + dev->drm_genl_family->parallel_ops = true; >> + dev->drm_genl_family->ops = drm_genl_ops; >> + dev->drm_genl_family->n_ops = ARRAY_SIZE(drm_genl_ops); >> + dev->drm_genl_family->maxattr = DRM_ATTR_MAX; >> + dev->drm_genl_family->module = dev->dev->driver->owner; >> +} > > We are interested in using this infrastructure at Qualcomm to > communicate telemetry information for the AI100 accelerators. It would > be nice if this function could support drm_minor accel nodes > (dev->accel) as well.
Glad to know the interest, at present the code does create drm netlink family for accel device as well, but it is tries to register with the drm primary node name which might not be present for dev->accel, checking for the "DRIVER_COMPUTE_ACCEL" and registering with the name will fix that. But also to bring to your attention the current series focuses on reporting RAS errors and hence the commands are as well oriented towards errors, anything specific to telemetry needs to be added. Do you have any thought as to what kind of data and what kind of command support you might need. Thanks, Aravind. > > Thanks, > > Zack