#include <linux/platform_device.h>
#include <linux/slab.h>
#include "tpm.h"
enum tpm_nsc_addr{ … };
enum tpm_nsc_index { … };
enum tpm_nsc_status_loc { … };
enum tpm_nsc_status { … };
enum tpm_nsc_cmd_mode { … };
struct tpm_nsc_priv { … };
static int wait_for_stat(struct tpm_chip *chip, u8 mask, u8 val, u8 * data)
{ … }
static int nsc_wait_for_ready(struct tpm_chip *chip)
{ … }
static int tpm_nsc_recv(struct tpm_chip *chip, u8 * buf, size_t count)
{ … }
static int tpm_nsc_send(struct tpm_chip *chip, u8 * buf, size_t count)
{ … }
static void tpm_nsc_cancel(struct tpm_chip *chip)
{ … }
static u8 tpm_nsc_status(struct tpm_chip *chip)
{ … }
static bool tpm_nsc_req_canceled(struct tpm_chip *chip, u8 status)
{ … }
static const struct tpm_class_ops tpm_nsc = …;
static struct platform_device *pdev = …;
static void tpm_nsc_remove(struct device *dev)
{ … }
static SIMPLE_DEV_PM_OPS(tpm_nsc_pm, tpm_pm_suspend, tpm_pm_resume);
static struct platform_driver nsc_drv = …;
static inline int tpm_read_index(int base, int index)
{ … }
static inline void tpm_write_index(int base, int index, int value)
{ … }
static int __init init_nsc(void)
{ … }
static void __exit cleanup_nsc(void)
{ … }
module_init(…) …;
module_exit(cleanup_nsc);
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_VERSION(…) …;
MODULE_LICENSE(…) …;