kernel_samsung_a53x/include/linux/platform_data/nanohub.h
2024-06-15 16:02:09 -03:00

61 lines
1.1 KiB
C
Executable file

#ifndef __LINUX_PLATFORM_DATA_NANOHUB_H
#define __LINUX_PLATFORM_DATA_NANOHUB_H
#include <linux/types.h>
struct nanohub_flash_bank {
int bank;
u32 address;
size_t length;
};
#define MAX_FILE_LEN (32)
struct nanohub_platform_data {
void *mailbox_client;
int irq;
};
enum CHUB_STATE {
CHUB_FW_ST_INVAL,
CHUB_FW_ST_POWERON,
CHUB_FW_ST_OFF,
CHUB_FW_ST_ON,
};
/* Structure of notifier block */
struct contexthub_notifier_block {
const char *subsystem;
unsigned int start_off;
unsigned int end_off;
enum CHUB_STATE state;
int (*notifier_call)(struct contexthub_notifier_block *);
};
int contexthub_notifier_register(struct contexthub_notifier_block *nb);
#if IS_ENABLED(CONFIG_SHUB)
enum CHUB_DUMP_TYPE {
CHUB_DUMPSTATE,
CHUB_ERR_DUMP
};
enum CHUB_IPC_TYPE {
CHUB_IPC_CHUB2AP
};
struct contexthub_dump {
int reason;
int size;
char *dump;
};
struct contexthub_ipc_data {
int size;
void *data;
};
int contexthub_ipc_notifier_register(struct notifier_block *nb);
int contexthub_dump_notifier_register(struct notifier_block *nb);
#endif
#endif /* __LINUX_PLATFORM_DATA_NANOHUB_H */