#include <linux/cpu.h>
#include <linux/io.h>
#include <linux/mm.h>
#include <linux/module.h>
#include <linux/slab.h>
#include <asm/acrn.h>
#include <asm/hypervisor.h>
#include "acrn_drv.h"
static int acrn_dev_open(struct inode *inode, struct file *filp)
{ … }
static int pmcmd_ioctl(u64 cmd, void __user *uptr)
{ … }
static long acrn_dev_ioctl(struct file *filp, unsigned int cmd,
unsigned long ioctl_param)
{ … }
static int acrn_dev_release(struct inode *inode, struct file *filp)
{ … }
static ssize_t remove_cpu_store(struct device *dev,
struct device_attribute *attr,
const char *buf, size_t count)
{ … }
static DEVICE_ATTR_WO(remove_cpu);
static umode_t acrn_attr_visible(struct kobject *kobj, struct attribute *a, int n)
{ … }
static struct attribute *acrn_attrs[] = …;
static struct attribute_group acrn_attr_group = …;
static const struct attribute_group *acrn_attr_groups[] = …;
static const struct file_operations acrn_fops = …;
struct miscdevice acrn_dev = …;
static int __init hsm_init(void)
{ … }
static void __exit hsm_exit(void)
{ … }
module_init(…) …;
module_exit(hsm_exit);
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;
MODULE_DESCRIPTION(…) …;