/*
 * touch_gpio.h
 *
 * Copyright (C) 2012-2020, Samsung Electronics Co., Ltd.
 *
 * GPIO interface, header file
 */

#pragma once

#include "board.h"
#include "tuiHal.h"

typedef int (*read_event_func_t)(void);

TEE_Result touch_gpio_init(deviceInfo_t *gpio_dev);
TEE_Result touch_gpio_release(deviceInfo_t *gpio_dev);
TEE_Result touch_gpio_register_int(deviceInfo_t *gpio_dev, read_event_func_t func);
TEE_Result touch_gpio_unregister_int(deviceInfo_t *gpio_dev);

#ifdef USE_TOUCH_INTERRUPT
int gpio_wait_touch_irq(void);
int gpio_complete_touch_irq(void);
void gpio_clear_pend_irq(void);
#endif /* USE_TOUCH_INTERRUPT */
