35 lines
625 B
C
35 lines
625 B
C
/*
|
|
* Copyright (c) 2021-2022 Amlogic, Inc. All rights reserved.
|
|
*
|
|
* SPDX-License-Identifier: MIT
|
|
*/
|
|
|
|
#ifndef INTERRUPT_H
|
|
#define INTERRUPT_H
|
|
|
|
typedef void (*function_ptr_t)(void);
|
|
|
|
void wfe(void);
|
|
|
|
int EnableIrq(uint32_t ulIrq);
|
|
|
|
int DisableIrq(uint32_t ulIrq);
|
|
|
|
int SetIrqPriority(uint32_t ulIrq, uint32_t ulProi);
|
|
|
|
int ClearPendingIrq(uint32_t ulIrq);
|
|
|
|
int RegisterIrq(uint32_t int_num, uint32_t int_priority, function_ptr_t handler);
|
|
|
|
int UnRegisterIrq(uint32_t ulIrq);
|
|
|
|
unsigned long interrupt_status_get(void);
|
|
|
|
void interrupt_disable(void);
|
|
|
|
void interrupt_enable(void);
|
|
|
|
int GetIrqInner(uint32_t irq_num);
|
|
|
|
#endif
|