linux/drivers/mfd/max8997-irq.c

// SPDX-License-Identifier: GPL-2.0+
//
// max8997-irq.c - Interrupt controller support for MAX8997
//
// Copyright (C) 2011 Samsung Electronics Co.Ltd
// MyungJoo Ham <[email protected]>
//
// This driver is based on max8998-irq.c

#include <linux/err.h>
#include <linux/irq.h>
#include <linux/interrupt.h>
#include <linux/mfd/max8997.h>
#include <linux/mfd/max8997-private.h>

static const u8 max8997_mask_reg[] =;

static struct i2c_client *get_i2c(struct max8997_dev *max8997,
				enum max8997_irq_source src)
{}

struct max8997_irq_data {};

#define DECLARE_IRQ(idx, _group, _mask)
static const struct max8997_irq_data max8997_irqs[] =;

static void max8997_irq_lock(struct irq_data *data)
{}

static void max8997_irq_sync_unlock(struct irq_data *data)
{}

inline static const struct max8997_irq_data *
irq_to_max8997_irq(struct max8997_dev *max8997, struct irq_data *data)
{}

static void max8997_irq_mask(struct irq_data *data)
{}

static void max8997_irq_unmask(struct irq_data *data)
{}

static struct irq_chip max8997_irq_chip =;

#define MAX8997_IRQSRC_PMIC
#define MAX8997_IRQSRC_FUELGAUGE
#define MAX8997_IRQSRC_MUIC
#define MAX8997_IRQSRC_GPIO
#define MAX8997_IRQSRC_FLASH
static irqreturn_t max8997_irq_thread(int irq, void *data)
{}

int max8997_irq_resume(struct max8997_dev *max8997)
{}

static int max8997_irq_domain_map(struct irq_domain *d, unsigned int irq,
					irq_hw_number_t hw)
{}

static const struct irq_domain_ops max8997_irq_domain_ops =;

int max8997_irq_init(struct max8997_dev *max8997)
{}

void max8997_irq_exit(struct max8997_dev *max8997)
{}