Linux Audio

Check our new training course

Loading...
v6.8
 1/* SPDX-License-Identifier: GPL-2.0 */
 2#ifndef _TPM_DEV_H
 3#define _TPM_DEV_H
 4
 5#include <linux/poll.h>
 6#include "tpm.h"
 7
 8struct file_priv {
 9	struct tpm_chip *chip;
10	struct tpm_space *space;
11
 
 
12	struct mutex buffer_mutex;
 
13	struct timer_list user_read_timer;      /* user needs to claim result */
14	struct work_struct timeout_work;
15	struct work_struct async_work;
16	wait_queue_head_t async_wait;
17	ssize_t response_length;
18	bool response_read;
19	bool command_enqueued;
20
21	u8 data_buffer[TPM_BUFSIZE];
22};
23
24void tpm_common_open(struct file *file, struct tpm_chip *chip,
25		     struct file_priv *priv, struct tpm_space *space);
26ssize_t tpm_common_read(struct file *file, char __user *buf,
27			size_t size, loff_t *off);
28ssize_t tpm_common_write(struct file *file, const char __user *buf,
29			 size_t size, loff_t *off);
30__poll_t tpm_common_poll(struct file *file, poll_table *wait);
31
32void tpm_common_release(struct file *file, struct file_priv *priv);
 
33#endif
v4.17
 1/* SPDX-License-Identifier: GPL-2.0 */
 2#ifndef _TPM_DEV_H
 3#define _TPM_DEV_H
 4
 
 5#include "tpm.h"
 6
 7struct file_priv {
 8	struct tpm_chip *chip;
 
 9
10	/* Data passed to and from the tpm via the read/write calls */
11	atomic_t data_pending;
12	struct mutex buffer_mutex;
13
14	struct timer_list user_read_timer;      /* user needs to claim result */
15	struct work_struct work;
 
 
 
 
 
16
17	u8 data_buffer[TPM_BUFSIZE];
18};
19
20void tpm_common_open(struct file *file, struct tpm_chip *chip,
21		     struct file_priv *priv);
22ssize_t tpm_common_read(struct file *file, char __user *buf,
23			size_t size, loff_t *off);
24ssize_t tpm_common_write(struct file *file, const char __user *buf,
25			 size_t size, loff_t *off, struct tpm_space *space);
 
 
26void tpm_common_release(struct file *file, struct file_priv *priv);
27
28#endif