linux/drivers/mfd/wm831x-irq.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * wm831x-irq.c  --  Interrupt controller support for Wolfson WM831x PMICs
 *
 * Copyright 2009 Wolfson Microelectronics PLC.
 *
 * Author: Mark Brown <[email protected]>
 */

#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/i2c.h>
#include <linux/irq.h>
#include <linux/mfd/core.h>
#include <linux/interrupt.h>
#include <linux/irqdomain.h>

#include <linux/mfd/wm831x/core.h>
#include <linux/mfd/wm831x/pdata.h>
#include <linux/mfd/wm831x/gpio.h>
#include <linux/mfd/wm831x/irq.h>

#include <linux/delay.h>

struct wm831x_irq_data {};

static struct wm831x_irq_data wm831x_irqs[] =;

static inline int irq_data_to_status_reg(struct wm831x_irq_data *irq_data)
{}

static inline struct wm831x_irq_data *irq_to_wm831x_irq(struct wm831x *wm831x,
							int irq)
{}

static void wm831x_irq_lock(struct irq_data *data)
{}

static void wm831x_irq_sync_unlock(struct irq_data *data)
{}

static void wm831x_irq_enable(struct irq_data *data)
{}

static void wm831x_irq_disable(struct irq_data *data)
{}

static int wm831x_irq_set_type(struct irq_data *data, unsigned int type)
{}

static struct irq_chip wm831x_irq_chip =;

/* The processing of the primary interrupt occurs in a thread so that
 * we can interact with the device over I2C or SPI. */
static irqreturn_t wm831x_irq_thread(int irq, void *data)
{}

static int wm831x_irq_map(struct irq_domain *h, unsigned int virq,
			  irq_hw_number_t hw)
{}

static const struct irq_domain_ops wm831x_irq_domain_ops =;

int wm831x_irq_init(struct wm831x *wm831x, int irq)
{}

void wm831x_irq_exit(struct wm831x *wm831x)
{}