blob: 4045180a8cfca0536fb46cfa6f1c37f301fabf1a [file] [log] [blame]
Russell Kingec9f47c2005-06-27 11:12:54 +01001/*
Russell Kingec9f47c2005-06-27 11:12:54 +01002 * Copyright (C) 2005 Russell King.
3 * Data taken from include/asm-i386/serial.h
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation.
8 */
9#include <linux/module.h>
10#include <linux/init.h>
11#include <linux/serial_8250.h>
12
Anton Wuerfelb3bd6662016-01-14 16:08:24 +010013#include "8250.h"
14
15#define SERIAL8250_FOURPORT(_base, _irq) \
16 SERIAL8250_PORT_FLAGS(_base, _irq, UPF_FOURPORT)
Russell Kingec9f47c2005-06-27 11:12:54 +010017
18static struct plat_serial8250_port fourport_data[] = {
Anton Wuerfelb3bd6662016-01-14 16:08:24 +010019 SERIAL8250_FOURPORT(0x1a0, 9),
20 SERIAL8250_FOURPORT(0x1a8, 9),
21 SERIAL8250_FOURPORT(0x1b0, 9),
22 SERIAL8250_FOURPORT(0x1b8, 9),
23 SERIAL8250_FOURPORT(0x2a0, 5),
24 SERIAL8250_FOURPORT(0x2a8, 5),
25 SERIAL8250_FOURPORT(0x2b0, 5),
26 SERIAL8250_FOURPORT(0x2b8, 5),
Russell Kingec9f47c2005-06-27 11:12:54 +010027 { },
28};
29
30static struct platform_device fourport_device = {
31 .name = "serial8250",
Russell King6df29de2005-09-08 16:04:41 +010032 .id = PLAT8250_DEV_FOURPORT,
Russell Kingec9f47c2005-06-27 11:12:54 +010033 .dev = {
34 .platform_data = fourport_data,
35 },
36};
37
38static int __init fourport_init(void)
39{
40 return platform_device_register(&fourport_device);
41}
42
43module_init(fourport_init);
44
45MODULE_AUTHOR("Russell King");
46MODULE_DESCRIPTION("8250 serial probe module for AST Fourport cards");
47MODULE_LICENSE("GPL");