linux/drivers/hwspinlock/stm32_hwspinlock.c

// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (C) STMicroelectronics SA 2018
 * Author: Benjamin Gaignard <[email protected]> for STMicroelectronics.
 */

#include <linux/clk.h>
#include <linux/delay.h>
#include <linux/hwspinlock.h>
#include <linux/io.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include <linux/pm_runtime.h>

#include "hwspinlock_internal.h"

#define STM32_MUTEX_COREID
#define STM32_MUTEX_LOCK_BIT
#define STM32_MUTEX_NUM_LOCKS

struct stm32_hwspinlock {};

static int stm32_hwspinlock_trylock(struct hwspinlock *lock)
{}

static void stm32_hwspinlock_unlock(struct hwspinlock *lock)
{}

static void stm32_hwspinlock_relax(struct hwspinlock *lock)
{}

static const struct hwspinlock_ops stm32_hwspinlock_ops =;

static void stm32_hwspinlock_disable_clk(void *data)
{}

static int stm32_hwspinlock_probe(struct platform_device *pdev)
{}

static int __maybe_unused stm32_hwspinlock_runtime_suspend(struct device *dev)
{}

static int __maybe_unused stm32_hwspinlock_runtime_resume(struct device *dev)
{}

static const struct dev_pm_ops stm32_hwspinlock_pm_ops =;

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

static struct platform_driver stm32_hwspinlock_driver =;

static int __init stm32_hwspinlock_init(void)
{}
/* board init code might need to reserve hwspinlocks for predefined purposes */
postcore_initcall(stm32_hwspinlock_init);

static void __exit stm32_hwspinlock_exit(void)
{}
module_exit(stm32_hwspinlock_exit);

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