linux/drivers/acpi/pfr_telemetry.c

// SPDX-License-Identifier: GPL-2.0
/*
 * ACPI Platform Firmware Runtime Telemetry driver
 *
 * Copyright (C) 2021 Intel Corporation
 * Author: Chen Yu <[email protected]>
 *
 * This driver allows user space to fetch telemetry data from the
 * firmware with the help of the Platform Firmware Runtime Telemetry
 * interface.
 */
#include <linux/acpi.h>
#include <linux/device.h>
#include <linux/err.h>
#include <linux/errno.h>
#include <linux/file.h>
#include <linux/fs.h>
#include <linux/miscdevice.h>
#include <linux/module.h>
#include <linux/mm.h>
#include <linux/platform_device.h>
#include <linux/string.h>
#include <linux/uaccess.h>
#include <linux/uio.h>
#include <linux/uuid.h>

#include <uapi/linux/pfrut.h>

#define PFRT_LOG_EXEC_IDX
#define PFRT_LOG_HISTORY_IDX

#define PFRT_LOG_ERR
#define PFRT_LOG_WARN
#define PFRT_LOG_INFO
#define PFRT_LOG_VERB

#define PFRT_FUNC_SET_LEV
#define PFRT_FUNC_GET_LEV
#define PFRT_FUNC_GET_DATA

#define PFRT_REVID_1
#define PFRT_REVID_2
#define PFRT_DEFAULT_REV_ID

enum log_index {};

struct pfrt_log_device {};

/* pfrt_guid is the parameter for _DSM method */
static const guid_t pfrt_log_guid =;

static DEFINE_IDA(pfrt_log_ida);

static inline struct pfrt_log_device *to_pfrt_log_dev(struct file *file)
{}

static int get_pfrt_log_data_info(struct pfrt_log_data_info *data_info,
				  struct pfrt_log_device *pfrt_log_dev)
{}

static int set_pfrt_log_level(int level, struct pfrt_log_device *pfrt_log_dev)
{}

static int get_pfrt_log_level(struct pfrt_log_device *pfrt_log_dev)
{}

static int valid_log_level(u32 level)
{}

static int valid_log_type(u32 type)
{}

static inline int valid_log_revid(u32 id)
{}

static long pfrt_log_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
{}

static int
pfrt_log_mmap(struct file *file, struct vm_area_struct *vma)
{}

static const struct file_operations acpi_pfrt_log_fops =;

static void acpi_pfrt_log_remove(struct platform_device *pdev)
{}

static void pfrt_log_put_idx(void *data)
{}

static int acpi_pfrt_log_probe(struct platform_device *pdev)
{}

static const struct acpi_device_id acpi_pfrt_log_ids[] =;
MODULE_DEVICE_TABLE(acpi, acpi_pfrt_log_ids);

static struct platform_driver acpi_pfrt_log_driver =;
module_platform_driver();

MODULE_DESCRIPTION();
MODULE_LICENSE();