linux/drivers/leds/leds-bcm6358.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Driver for BCM6358 memory-mapped LEDs, based on leds-syscon.c
 *
 * Copyright 2015 Álvaro Fernández Rojas <[email protected]>
 */
#include <linux/delay.h>
#include <linux/io.h>
#include <linux/leds.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include <linux/spinlock.h>

#define BCM6358_REG_MODE
#define BCM6358_REG_CTRL

#define BCM6358_SLED_CLKDIV_MASK
#define BCM6358_SLED_CLKDIV_1
#define BCM6358_SLED_CLKDIV_2
#define BCM6358_SLED_CLKDIV_4
#define BCM6358_SLED_CLKDIV_8

#define BCM6358_SLED_POLARITY
#define BCM6358_SLED_BUSY

#define BCM6358_SLED_MAX_COUNT
#define BCM6358_SLED_WAIT

/**
 * struct bcm6358_led - state container for bcm6358 based LEDs
 * @cdev: LED class device for this LED
 * @mem: memory resource
 * @lock: memory lock
 * @pin: LED pin number
 * @active_low: LED is active low
 */
struct bcm6358_led {};

static void bcm6358_led_write(void __iomem *reg, unsigned long data)
{}

static unsigned long bcm6358_led_read(void __iomem *reg)
{}

static unsigned long bcm6358_led_busy(void __iomem *mem)
{}

static void bcm6358_led_set(struct led_classdev *led_cdev,
			    enum led_brightness value)
{}

static int bcm6358_led(struct device *dev, struct device_node *nc, u32 reg,
		       void __iomem *mem, spinlock_t *lock)
{}

static int bcm6358_leds_probe(struct platform_device *pdev)
{}

static const struct of_device_id bcm6358_leds_of_match[] =;
MODULE_DEVICE_TABLE(of, bcm6358_leds_of_match);

static struct platform_driver bcm6358_leds_driver =;

module_platform_driver();

MODULE_AUTHOR();
MODULE_DESCRIPTION();
MODULE_LICENSE();
MODULE_ALIAS();