kobject_put(gt->sysfs);
}
-int xe_gt_sysfs_init(struct xe_gt *gt)
+void xe_gt_sysfs_init(struct xe_gt *gt)
{
struct xe_tile *tile = gt_to_tile(gt);
+ struct xe_device *xe = gt_to_xe(gt);
struct kobj_gt *kg;
int err;
kg = kzalloc(sizeof(*kg), GFP_KERNEL);
- if (!kg)
- return -ENOMEM;
+ if (!kg) {
+ drm_warn(&xe->drm, "Allocating kobject failed.\n");
+ return;
+ }
kobject_init(&kg->base, &xe_gt_sysfs_kobj_type);
kg->gt = gt;
err = kobject_add(&kg->base, tile->sysfs, "gt%d", gt->info.id);
if (err) {
+ drm_warn(&xe->drm, "failed to add GT sysfs directory, err: %d\n", err);
kobject_put(&kg->base);
- return err;
+ return;
}
gt->sysfs = &kg->base;
- err = drmm_add_action_or_reset(>_to_xe(gt)->drm, gt_sysfs_fini, gt);
- if (err)
- return err;
-
- return 0;
+ err = drmm_add_action_or_reset(&xe->drm, gt_sysfs_fini, gt);
+ if (err) {
+ drm_warn(&xe->drm, "%s: drmm_add_action_or_reset failed, err: %d\n",
+ __func__, err);
+ return;
+ }
}
#include "xe_gt_sysfs_types.h"
-int xe_gt_sysfs_init(struct xe_gt *gt);
+void xe_gt_sysfs_init(struct xe_gt *gt);
static inline struct xe_gt *
kobj_to_gt(struct kobject *kobj)