linux/drivers/acpi/evged.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Generic Event Device for ACPI.
 *
 * Copyright (c) 2016, The Linux Foundation. All rights reserved.
 *
 * Generic Event Device allows platforms to handle interrupts in ACPI
 * ASL statements. It follows very similar to  _EVT method approach
 * from GPIO events. All interrupts are listed in _CRS and the handler
 * is written in _EVT method. Here is an example.
 *
 * Device (GED0)
 * {
 *
 *     Name (_HID, "ACPI0013")
 *     Name (_UID, 0)
 *     Method (_CRS, 0x0, Serialized)
 *     {
 *		Name (RBUF, ResourceTemplate ()
 *		{
 *		Interrupt(ResourceConsumer, Edge, ActiveHigh, Shared, , , )
 *		{123}
 *		}
 *     })
 *
 *     Method (_EVT, 1) {
 *             if (Lequal(123, Arg0))
 *             {
 *             }
 *     }
 * }
 */

#include <linux/err.h>
#include <linux/init.h>
#include <linux/interrupt.h>
#include <linux/list.h>
#include <linux/platform_device.h>
#include <linux/acpi.h>

#define MODULE_NAME

struct acpi_ged_device {};

struct acpi_ged_event {};

static irqreturn_t acpi_ged_irq_handler(int irq, void *data)
{}

static acpi_status acpi_ged_request_interrupt(struct acpi_resource *ares,
					      void *context)
{}

static int ged_probe(struct platform_device *pdev)
{}

static void ged_shutdown(struct platform_device *pdev)
{}

static void ged_remove(struct platform_device *pdev)
{}

static const struct acpi_device_id ged_acpi_ids[] =;

static struct platform_driver ged_driver =;
builtin_platform_driver();