#include <linux/bits.h>
#include <linux/container_of.h>
#include <linux/device.h>
#include <linux/err.h>
#include <linux/io.h>
#include <linux/kernel.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include <linux/reboot.h>
#include <linux/reset-controller.h>
#include <linux/spinlock.h>
#include <dt-bindings/reset/nuvoton,ma35d1-reset.h>
struct ma35d1_reset_data { … };
static const struct { … } ma35d1_reset_map[] = …;
static int ma35d1_restart_handler(struct notifier_block *this, unsigned long mode, void *cmd)
{ … }
static int ma35d1_reset_update(struct reset_controller_dev *rcdev, unsigned long id, bool assert)
{ … }
static int ma35d1_reset_assert(struct reset_controller_dev *rcdev, unsigned long id)
{ … }
static int ma35d1_reset_deassert(struct reset_controller_dev *rcdev, unsigned long id)
{ … }
static int ma35d1_reset_status(struct reset_controller_dev *rcdev, unsigned long id)
{ … }
static const struct reset_control_ops ma35d1_reset_ops = …;
static const struct of_device_id ma35d1_reset_dt_ids[] = …;
static int ma35d1_reset_probe(struct platform_device *pdev)
{ … }
static struct platform_driver ma35d1_reset_driver = …;
builtin_platform_driver(…) …;