#include <linux/poll.h>
#include <linux/slab.h>
#include <linux/uaccess.h>
#include <linux/workqueue.h>
#include "tpm.h"
#include "tpm-dev.h"
static struct workqueue_struct *tpm_dev_wq;
static ssize_t tpm_dev_transmit(struct tpm_chip *chip, struct tpm_space *space,
u8 *buf, size_t bufsiz)
{ … }
static void tpm_dev_async_work(struct work_struct *work)
{ … }
static void user_reader_timeout(struct timer_list *t)
{ … }
static void tpm_timeout_work(struct work_struct *work)
{ … }
void tpm_common_open(struct file *file, struct tpm_chip *chip,
struct file_priv *priv, struct tpm_space *space)
{ … }
ssize_t tpm_common_read(struct file *file, char __user *buf,
size_t size, loff_t *off)
{ … }
ssize_t tpm_common_write(struct file *file, const char __user *buf,
size_t size, loff_t *off)
{ … }
__poll_t tpm_common_poll(struct file *file, poll_table *wait)
{ … }
void tpm_common_release(struct file *file, struct file_priv *priv)
{ … }
int __init tpm_dev_common_init(void)
{ … }
void __exit tpm_dev_common_exit(void)
{ … }