/* SPDX-License-Identifier: GPL-2.0-only */


#ifndef SLATE_EVENTS_BRIDGE_INTF_H
#define SLATE_EVENTS_BRIDGE_INTF_H

#include <linux/notifier.h>

enum event_group_type {
	GMI_SLATE_EVENT_QBG     = 0x01,
	GMI_SLATE_EVENT_RSB     = 0x02,
	GMI_SLATE_EVENT_BUTTON  = 0x03,
	GMI_SLATE_EVENT_TOUCH   = 0x04,
	GMI_SLATE_EVENT_SENSOR  = 0x05,
	SLATE_STATUS            = 0x06,

	GLINK_CHANNEL_STATE_UP   = 0xfd,
	GLINK_CHANNEL_STATE_DOWN = 0xfe,
	GMI_SLATE_EVENT_MAX      = 0xff,
};

//#ifdef CONFIG_MSM_SEB

void *seb_register_for_slate_event(enum event_group_type event,
						struct notifier_block *nb);

int seb_unregister_for_slate_event(void *seb_handle,
						struct notifier_block *nb);


int seb_send_event_to_slate(void *seb_handle, enum event_group_type event,
					void *event_buf, uint32_t buf_size);


int seb_send_event(enum event_group_type event,
					void *event_buf, uint32_t buf_size);


#endif 
