#include "xe_gt_freq.h"
#include <linux/kobject.h>
#include <linux/sysfs.h>
#include <drm/drm_managed.h>
#include <drm/drm_print.h>
#include "xe_device_types.h"
#include "xe_gt_sysfs.h"
#include "xe_gt_throttle.h"
#include "xe_guc_pc.h"
#include "xe_pm.h"
static struct xe_guc_pc *
dev_to_pc(struct device *dev)
{ … }
static struct xe_device *
dev_to_xe(struct device *dev)
{ … }
static ssize_t act_freq_show(struct device *dev,
struct device_attribute *attr, char *buf)
{ … }
static DEVICE_ATTR_RO(act_freq);
static ssize_t cur_freq_show(struct device *dev,
struct device_attribute *attr, char *buf)
{ … }
static DEVICE_ATTR_RO(cur_freq);
static ssize_t rp0_freq_show(struct device *dev,
struct device_attribute *attr, char *buf)
{ … }
static DEVICE_ATTR_RO(rp0_freq);
static ssize_t rpe_freq_show(struct device *dev,
struct device_attribute *attr, char *buf)
{ … }
static DEVICE_ATTR_RO(rpe_freq);
static ssize_t rpn_freq_show(struct device *dev,
struct device_attribute *attr, char *buf)
{ … }
static DEVICE_ATTR_RO(rpn_freq);
static ssize_t min_freq_show(struct device *dev,
struct device_attribute *attr, char *buf)
{ … }
static ssize_t min_freq_store(struct device *dev, struct device_attribute *attr,
const char *buff, size_t count)
{ … }
static DEVICE_ATTR_RW(min_freq);
static ssize_t max_freq_show(struct device *dev,
struct device_attribute *attr, char *buf)
{ … }
static ssize_t max_freq_store(struct device *dev, struct device_attribute *attr,
const char *buff, size_t count)
{ … }
static DEVICE_ATTR_RW(max_freq);
static const struct attribute *freq_attrs[] = …;
static void freq_fini(void *arg)
{ … }
int xe_gt_freq_init(struct xe_gt *gt)
{ … }