#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/of.h>
#include <linux/pinctrl/pinctrl.h>
#include <linux/pinctrl/pinmux.h>
#include <dt-bindings/pinctrl/pinctrl-sg2002.h>
#include "pinctrl-cv18xx.h"
enum SG2002_POWER_DOMAIN { … };
static const char *const sg2002_power_domain_desc[] = …;
static int sg2002_get_pull_up(struct cv1800_pin *pin, const u32 *psmap)
{ … }
static int sg2002_get_pull_down(struct cv1800_pin *pin, const u32 *psmap)
{ … }
static const u32 sg2002_1v8_oc_map[] = …;
static const u32 sg2002_18od33_1v8_oc_map[] = …;
static const u32 sg2002_18od33_3v3_oc_map[] = …;
static const u32 sg2002_eth_oc_map[] = …;
static int sg2002_get_oc_map(struct cv1800_pin *pin, const u32 *psmap,
const u32 **map)
{ … }
static const u32 sg2002_1v8_schmitt_map[] = …;
static const u32 sg2002_18od33_1v8_schmitt_map[] = …;
static const u32 sg2002_18od33_3v3_schmitt_map[] = …;
static int sg2002_get_schmitt_map(struct cv1800_pin *pin, const u32 *psmap,
const u32 **map)
{ … }
static const struct cv1800_vddio_cfg_ops sg2002_vddio_cfg_ops = …;
static const struct pinctrl_pin_desc sg2002_pins[] = …;
static const struct cv1800_pin sg2002_pin_data[ARRAY_SIZE(sg2002_pins)] = …;
static const struct cv1800_pinctrl_data sg2002_pindata = …;
static const struct of_device_id sg2002_pinctrl_ids[] = …;
MODULE_DEVICE_TABLE(of, sg2002_pinctrl_ids);
static struct platform_driver sg2002_pinctrl_driver = …;
module_platform_driver(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;