linux/drivers/tty/serial/8250/8250_fourport.c
<<
>>
Prefs
   1// SPDX-License-Identifier: GPL-2.0
   2/*
   3 *  Copyright (C) 2005 Russell King.
   4 *  Data taken from include/asm-i386/serial.h
   5 */
   6#include <linux/module.h>
   7#include <linux/init.h>
   8#include <linux/serial_8250.h>
   9
  10#include "8250.h"
  11
  12#define SERIAL8250_FOURPORT(_base, _irq) \
  13        SERIAL8250_PORT_FLAGS(_base, _irq, UPF_FOURPORT)
  14
  15static struct plat_serial8250_port fourport_data[] = {
  16        SERIAL8250_FOURPORT(0x1a0, 9),
  17        SERIAL8250_FOURPORT(0x1a8, 9),
  18        SERIAL8250_FOURPORT(0x1b0, 9),
  19        SERIAL8250_FOURPORT(0x1b8, 9),
  20        SERIAL8250_FOURPORT(0x2a0, 5),
  21        SERIAL8250_FOURPORT(0x2a8, 5),
  22        SERIAL8250_FOURPORT(0x2b0, 5),
  23        SERIAL8250_FOURPORT(0x2b8, 5),
  24        { },
  25};
  26
  27static struct platform_device fourport_device = {
  28        .name                   = "serial8250",
  29        .id                     = PLAT8250_DEV_FOURPORT,
  30        .dev                    = {
  31                .platform_data  = fourport_data,
  32        },
  33};
  34
  35static int __init fourport_init(void)
  36{
  37        return platform_device_register(&fourport_device);
  38}
  39
  40module_init(fourport_init);
  41
  42MODULE_AUTHOR("Russell King");
  43MODULE_DESCRIPTION("8250 serial probe module for AST Fourport cards");
  44MODULE_LICENSE("GPL");
  45