Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef _SOC_EP93XX_H
3#define _SOC_EP93XX_H
4
5struct regmap;
6struct spinlock_t;
7
8enum ep93xx_soc_model {
9 EP93XX_9301_SOC,
10 EP93XX_9307_SOC,
11 EP93XX_9312_SOC,
12};
13
14#include <linux/auxiliary_bus.h>
15#include <linux/compiler_types.h>
16#include <linux/container_of.h>
17
18#define EP93XX_CHIP_REV_D0 3
19#define EP93XX_CHIP_REV_D1 4
20#define EP93XX_CHIP_REV_E0 5
21#define EP93XX_CHIP_REV_E1 6
22#define EP93XX_CHIP_REV_E2 7
23
24struct ep93xx_regmap_adev {
25 struct auxiliary_device adev;
26 struct regmap *map;
27 void __iomem *base;
28 spinlock_t *lock;
29 void (*write)(struct regmap *map, spinlock_t *lock, unsigned int reg,
30 unsigned int val);
31 void (*update_bits)(struct regmap *map, spinlock_t *lock,
32 unsigned int reg, unsigned int mask, unsigned int val);
33};
34
35#define to_ep93xx_regmap_adev(_adev) \
36 container_of((_adev), struct ep93xx_regmap_adev, adev)
37
38#endif