linux/drivers/tty/serial/8250/8250_exar_st16c554.c
<<
>>
Prefs
   1/*
   2 *  Written by Paul B Schroeder < pschroeder "at" uplogix "dot" com >
   3 *  Based on 8250_boca.
   4 *
   5 *  Copyright (C) 2005 Russell King.
   6 *  Data taken from include/asm-i386/serial.h
   7 *
   8 * This program is free software; you can redistribute it and/or modify
   9 * it under the terms of the GNU General Public License version 2 as
  10 * published by the Free Software Foundation.
  11 */
  12#include <linux/module.h>
  13#include <linux/init.h>
  14#include <linux/serial_8250.h>
  15
  16#define PORT(_base,_irq)                                \
  17        {                                               \
  18                .iobase         = _base,                \
  19                .irq            = _irq,                 \
  20                .uartclk        = 1843200,              \
  21                .iotype         = UPIO_PORT,            \
  22                .flags          = UPF_BOOT_AUTOCONF,    \
  23        }
  24
  25static struct plat_serial8250_port exar_data[] = {
  26        PORT(0x100, 5),
  27        PORT(0x108, 5),
  28        PORT(0x110, 5),
  29        PORT(0x118, 5),
  30        { },
  31};
  32
  33static struct platform_device exar_device = {
  34        .name                   = "serial8250",
  35        .id                     = PLAT8250_DEV_EXAR_ST16C554,
  36        .dev                    = {
  37                .platform_data  = exar_data,
  38        },
  39};
  40
  41static int __init exar_init(void)
  42{
  43        return platform_device_register(&exar_device);
  44}
  45
  46module_init(exar_init);
  47
  48MODULE_AUTHOR("Paul B Schroeder");
  49MODULE_DESCRIPTION("8250 serial probe module for Exar cards");
  50MODULE_LICENSE("GPL");
  51