#define pr_fmt(fmt) …
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/wait.h>
#include <linux/poll.h>
#include <linux/sched.h>
#include <linux/kthread.h>
#include <linux/proc_fs.h>
#include <linux/debugfs.h>
#include <linux/circ_buf.h>
#include <linux/acpi.h>
#include "internal.h"
#define ACPI_AML_BUF_ALIGN …
#define ACPI_AML_BUF_SIZE …
#define circ_count(circ) …
#define circ_count_to_end(circ) …
#define circ_space(circ) …
#define circ_space_to_end(circ) …
#define ACPI_AML_OPENED …
#define ACPI_AML_CLOSED …
#define ACPI_AML_IN_USER …
#define ACPI_AML_IN_KERN …
#define ACPI_AML_OUT_USER …
#define ACPI_AML_OUT_KERN …
#define ACPI_AML_USER …
#define ACPI_AML_KERN …
#define ACPI_AML_BUSY …
#define ACPI_AML_OPEN …
struct acpi_aml_io { … };
static struct acpi_aml_io acpi_aml_io;
static bool acpi_aml_initialized;
static struct file *acpi_aml_active_reader;
static struct dentry *acpi_aml_dentry;
static inline bool __acpi_aml_running(void)
{ … }
static inline bool __acpi_aml_access_ok(unsigned long flag)
{ … }
static inline bool __acpi_aml_readable(struct circ_buf *circ, unsigned long flag)
{ … }
static inline bool __acpi_aml_writable(struct circ_buf *circ, unsigned long flag)
{ … }
static inline bool __acpi_aml_busy(void)
{ … }
static inline bool __acpi_aml_used(void)
{ … }
static inline bool acpi_aml_running(void)
{ … }
static bool acpi_aml_busy(void)
{ … }
static bool acpi_aml_used(void)
{ … }
static bool acpi_aml_kern_readable(void)
{ … }
static bool acpi_aml_kern_writable(void)
{ … }
static bool acpi_aml_user_readable(void)
{ … }
static bool acpi_aml_user_writable(void)
{ … }
static int acpi_aml_lock_write(struct circ_buf *circ, unsigned long flag)
{ … }
static int acpi_aml_lock_read(struct circ_buf *circ, unsigned long flag)
{ … }
static void acpi_aml_unlock_fifo(unsigned long flag, bool wakeup)
{ … }
static int acpi_aml_write_kern(const char *buf, int len)
{ … }
static int acpi_aml_readb_kern(void)
{ … }
static ssize_t acpi_aml_write_log(const char *msg)
{ … }
static ssize_t acpi_aml_read_cmd(char *msg, size_t count)
{ … }
static int acpi_aml_thread(void *unused)
{ … }
static int acpi_aml_create_thread(acpi_osd_exec_callback function, void *context)
{ … }
static int acpi_aml_wait_command_ready(bool single_step,
char *buffer, size_t length)
{ … }
static int acpi_aml_notify_command_complete(void)
{ … }
static int acpi_aml_open(struct inode *inode, struct file *file)
{ … }
static int acpi_aml_release(struct inode *inode, struct file *file)
{ … }
static int acpi_aml_read_user(char __user *buf, int len)
{ … }
static ssize_t acpi_aml_read(struct file *file, char __user *buf,
size_t count, loff_t *ppos)
{ … }
static int acpi_aml_write_user(const char __user *buf, int len)
{ … }
static ssize_t acpi_aml_write(struct file *file, const char __user *buf,
size_t count, loff_t *ppos)
{ … }
static __poll_t acpi_aml_poll(struct file *file, poll_table *wait)
{ … }
static const struct file_operations acpi_aml_operations = …;
static const struct acpi_debugger_ops acpi_aml_debugger = …;
static int __init acpi_aml_init(void)
{ … }
static void __exit acpi_aml_exit(void)
{ … }
module_init(…) …;
module_exit(acpi_aml_exit);
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;