linux/drivers/staging/media/atomisp/pci/hive_isp_css_common/host/irq.c

// SPDX-License-Identifier: GPL-2.0
/*
 * Support for Intel Camera Imaging ISP subsystem.
 * Copyright (c) 2010-2015, Intel Corporation.
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms and conditions of the GNU General Public License,
 * version 2, as published by the Free Software Foundation.
 *
 * This program is distributed in the hope it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
 * more details.
 */

#include "assert_support.h"
#include "irq.h"

#ifndef __INLINE_GP_DEVICE__
#define __INLINE_GP_DEVICE__
#endif
#include "gp_device.h"	/* _REG_GP_IRQ_REQUEST_ADDR */

static inline void irq_wait_for_write_complete(
    const irq_ID_t		ID);

static inline bool any_irq_channel_enabled(
    const irq_ID_t				ID);

static inline irq_ID_t virq_get_irq_id(const enum virq_id irq_ID,
				       unsigned int *channel_ID);

#ifndef __INLINE_IRQ__
#include "irq_private.h"
#endif /* __INLINE_IRQ__ */

static unsigned short IRQ_N_CHANNEL[N_IRQ_ID] =;

static unsigned short IRQ_N_ID_OFFSET[N_IRQ_ID + 1] =;

static enum virq_id IRQ_NESTING_ID[N_IRQ_ID] =;

void irq_clear_all(
    const irq_ID_t				ID)
{}

/*
 * Do we want the user to be able to set the signalling method ?
 */
void irq_enable_channel(
    const irq_ID_t				ID,
    const unsigned int			irq_id)
{}

void irq_enable_pulse(
    const irq_ID_t	ID,
    bool			pulse)
{}

void irq_disable_channel(
    const irq_ID_t				ID,
    const unsigned int			irq_id)
{}

enum hrt_isp_css_irq_status irq_get_channel_id(
    const irq_ID_t				ID,
    unsigned int				*irq_id)
{}

static const hrt_address IRQ_REQUEST_ADDR[N_IRQ_SW_CHANNEL_ID] =;

void irq_raise(
    const irq_ID_t				ID,
    const irq_sw_channel_id_t	irq_id)
{}

bool any_virq_signal(void)
{}

void cnd_virq_enable_channel(
    const enum virq_id				irq_ID,
    const bool					en)
{}

void virq_clear_all(void)
{}

enum hrt_isp_css_irq_status
virq_get_channel_signals(struct virq_info *irq_info)
{}

void virq_clear_info(struct virq_info *irq_info)
{}

enum hrt_isp_css_irq_status virq_get_channel_id(
    enum virq_id					*irq_id)
{}

static inline void irq_wait_for_write_complete(
    const irq_ID_t		ID)
{}

static inline bool any_irq_channel_enabled(
    const irq_ID_t				ID)
{}

static inline irq_ID_t virq_get_irq_id(
    const enum virq_id		irq_ID,
    unsigned int		*channel_ID)
{}