Files
laptops-kernel/include/linux/firmware/imx/sci.h
T

57 lines
1.4 KiB
C
Raw Normal View History

/* SPDX-License-Identifier: GPL-2.0+ */
/*
* Copyright (C) 2016 Freescale Semiconductor, Inc.
* Copyright 2017~2018 NXP
*
* Header file containing the public System Controller Interface (SCI)
* definitions.
*/
#ifndef _SC_SCI_H
#define _SC_SCI_H
#include <linux/firmware/imx/ipc.h>
2018-10-07 21:04:43 +08:00
#include <linux/firmware/imx/svc/misc.h>
2018-11-01 15:20:08 +00:00
#include <linux/firmware/imx/svc/pm.h>
2020-06-05 09:59:31 +08:00
#include <linux/firmware/imx/svc/rm.h>
2020-09-22 18:24:29 +08:00
#if IS_ENABLED(CONFIG_IMX_SCU)
int imx_scu_enable_general_irq_channel(struct device *dev);
int imx_scu_irq_register_notifier(struct notifier_block *nb);
int imx_scu_irq_unregister_notifier(struct notifier_block *nb);
int imx_scu_irq_group_enable(u8 group, u32 mask, u8 enable);
int imx_scu_irq_get_status(u8 group, u32 *irq_status);
int imx_scu_soc_init(struct device *dev);
2020-09-22 18:24:29 +08:00
#else
static inline int imx_scu_soc_init(struct device *dev)
{
2023-08-07 20:14:28 +08:00
return -EOPNOTSUPP;
2020-09-22 18:24:29 +08:00
}
static inline int imx_scu_enable_general_irq_channel(struct device *dev)
{
2023-08-07 20:14:28 +08:00
return -EOPNOTSUPP;
2020-09-22 18:24:29 +08:00
}
static inline int imx_scu_irq_register_notifier(struct notifier_block *nb)
{
2023-08-07 20:14:28 +08:00
return -EOPNOTSUPP;
2020-09-22 18:24:29 +08:00
}
static inline int imx_scu_irq_unregister_notifier(struct notifier_block *nb)
{
2023-08-07 20:14:28 +08:00
return -EOPNOTSUPP;
2020-09-22 18:24:29 +08:00
}
static inline int imx_scu_irq_group_enable(u8 group, u32 mask, u8 enable)
{
2023-08-07 20:14:28 +08:00
return -EOPNOTSUPP;
2020-09-22 18:24:29 +08:00
}
static inline int imx_scu_irq_get_status(u8 group, u32 *irq_status)
{
return -EOPNOTSUPP;
}
2020-09-22 18:24:29 +08:00
#endif
#endif /* _SC_SCI_H */