linux/drivers/soc/aspeed/aspeed-uart-routing.c

// SPDX-License-Identifier: GPL-2.0+
/*
 * Copyright (c) 2018 Google LLC
 * Copyright (c) 2021 Aspeed Technology Inc.
 */
#include <linux/device.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/mfd/syscon.h>
#include <linux/regmap.h>
#include <linux/platform_device.h>

/* register offsets */
#define HICR9
#define HICRA

/* attributes options */
#define UART_ROUTING_IO1
#define UART_ROUTING_IO2
#define UART_ROUTING_IO3
#define UART_ROUTING_IO4
#define UART_ROUTING_IO5
#define UART_ROUTING_IO6
#define UART_ROUTING_IO10
#define UART_ROUTING_UART1
#define UART_ROUTING_UART2
#define UART_ROUTING_UART3
#define UART_ROUTING_UART4
#define UART_ROUTING_UART5
#define UART_ROUTING_UART6
#define UART_ROUTING_UART10
#define UART_ROUTING_RES

struct aspeed_uart_routing {};

struct aspeed_uart_routing_selector {};

#define to_routing_selector(_dev_attr)

static ssize_t aspeed_uart_routing_show(struct device *dev,
					struct device_attribute *attr,
					char *buf);

static ssize_t aspeed_uart_routing_store(struct device *dev,
					 struct device_attribute *attr,
					 const char *buf, size_t count);

#define ROUTING_ATTR(_name)

/* routing selector for AST25xx */
static struct aspeed_uart_routing_selector ast2500_io6_sel =;

static struct aspeed_uart_routing_selector ast2500_uart5_sel =;

static struct aspeed_uart_routing_selector ast2500_uart4_sel =;

static struct aspeed_uart_routing_selector ast2500_uart3_sel =;

static struct aspeed_uart_routing_selector ast2500_uart2_sel =;

static struct aspeed_uart_routing_selector ast2500_uart1_sel =;

static struct aspeed_uart_routing_selector ast2500_io5_sel =;

static struct aspeed_uart_routing_selector ast2500_io4_sel =;

static struct aspeed_uart_routing_selector ast2500_io3_sel =;

static struct aspeed_uart_routing_selector ast2500_io2_sel =;

static struct aspeed_uart_routing_selector ast2500_io1_sel =;

static struct attribute *ast2500_uart_routing_attrs[] =;

static const struct attribute_group ast2500_uart_routing_attr_group =;

/* routing selector for AST26xx */
static struct aspeed_uart_routing_selector ast2600_uart10_sel =;

static struct aspeed_uart_routing_selector ast2600_io10_sel =;

static struct aspeed_uart_routing_selector ast2600_uart4_sel =;

static struct aspeed_uart_routing_selector ast2600_uart3_sel =;

static struct aspeed_uart_routing_selector ast2600_uart2_sel =;

static struct aspeed_uart_routing_selector ast2600_uart1_sel =;

static struct aspeed_uart_routing_selector ast2600_io4_sel =;

static struct aspeed_uart_routing_selector ast2600_io3_sel =;

static struct aspeed_uart_routing_selector ast2600_io2_sel =;

static struct aspeed_uart_routing_selector ast2600_io1_sel =;

static struct attribute *ast2600_uart_routing_attrs[] =;

static const struct attribute_group ast2600_uart_routing_attr_group =;

static ssize_t aspeed_uart_routing_show(struct device *dev,
					struct device_attribute *attr,
					char *buf)
{}

static ssize_t aspeed_uart_routing_store(struct device *dev,
					 struct device_attribute *attr,
					 const char *buf, size_t count)
{}

static int aspeed_uart_routing_probe(struct platform_device *pdev)
{}

static void aspeed_uart_routing_remove(struct platform_device *pdev)
{}

static const struct of_device_id aspeed_uart_routing_table[] =;

static struct platform_driver aspeed_uart_routing_driver =;

module_platform_driver();

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