#include <linux/cdev.h>
#include <linux/compat.h>
#include <linux/fs.h>
#include <linux/module.h>
#include <linux/remoteproc.h>
#include <linux/uaccess.h>
#include <uapi/linux/remoteproc_cdev.h>
#include "remoteproc_internal.h"
#define NUM_RPROC_DEVICES …
static dev_t rproc_major;
static ssize_t rproc_cdev_write(struct file *filp, const char __user *buf, size_t len, loff_t *pos)
{ … }
static long rproc_device_ioctl(struct file *filp, unsigned int ioctl, unsigned long arg)
{ … }
static int rproc_cdev_release(struct inode *inode, struct file *filp)
{ … }
static const struct file_operations rproc_fops = …;
int rproc_char_device_add(struct rproc *rproc)
{ … }
void rproc_char_device_remove(struct rproc *rproc)
{ … }
void __init rproc_init_cdev(void)
{ … }