1/* SPDX-License-Identifier: MIT */
2/*
3 * Copyright �� 2022 Intel Corporation
4 */
5
6#ifndef __SYSFS_GT_H__
7#define __SYSFS_GT_H__
8
9#include <linux/ctype.h>
10#include <linux/kobject.h>
11
12#include "i915_gem.h" /* GEM_BUG_ON() */
13#include "intel_gt_types.h"
14
15struct intel_gt;
16
17bool is_object_gt(struct kobject *kobj);
18
19struct drm_i915_private *kobj_to_i915(struct kobject *kobj);
20
21static inline struct intel_gt *kobj_to_gt(struct kobject *kobj)
22{
23	return container_of(kobj, struct intel_gt, sysfs_gt);
24}
25
26void intel_gt_sysfs_register(struct intel_gt *gt);
27void intel_gt_sysfs_unregister(struct intel_gt *gt);
28struct intel_gt *intel_gt_sysfs_get_drvdata(struct kobject *kobj,
29					    const char *name);
30
31#endif /* SYSFS_GT_H */
32