1179595Sbenno/*- 2179595Sbenno * Copyright (c) 2003 Marcel Moolenaar 3179595Sbenno * All rights reserved. 4179595Sbenno * 5179595Sbenno * Redistribution and use in source and binary forms, with or without 6179595Sbenno * modification, are permitted provided that the following conditions 7179595Sbenno * are met: 8179595Sbenno * 9179595Sbenno * 1. Redistributions of source code must retain the above copyright 10179595Sbenno * notice, this list of conditions and the following disclaimer. 11179595Sbenno * 2. Redistributions in binary form must reproduce the above copyright 12179595Sbenno * notice, this list of conditions and the following disclaimer in the 13179595Sbenno * documentation and/or other materials provided with the distribution. 14179595Sbenno * 15179595Sbenno * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 16179595Sbenno * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 17179595Sbenno * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 18179595Sbenno * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 19179595Sbenno * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 20179595Sbenno * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21179595Sbenno * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22179595Sbenno * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23179595Sbenno * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 24179595Sbenno * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25179595Sbenno */ 26179595Sbenno 27179595Sbenno#include <sys/cdefs.h> 28179595Sbenno__FBSDID("$FreeBSD: releng/10.2/sys/arm/xscale/pxa/uart_cpu_pxa.c 179595 2008-06-06 05:08:09Z benno $"); 29179595Sbenno 30179595Sbenno#include <sys/param.h> 31179595Sbenno#include <sys/systm.h> 32179595Sbenno#include <sys/bus.h> 33179595Sbenno#include <sys/cons.h> 34179595Sbenno#include <machine/bus.h> 35179595Sbenno 36179595Sbenno#include <dev/uart/uart.h> 37179595Sbenno#include <dev/uart/uart_cpu.h> 38179595Sbenno 39179595Sbenno#include <arm/xscale/pxa/pxavar.h> 40179595Sbenno#include <arm/xscale/pxa/pxareg.h> 41179595Sbenno 42179595Sbennobus_space_tag_t uart_bus_space_io; 43179595Sbennobus_space_tag_t uart_bus_space_mem; 44179595Sbenno 45179595Sbennoint 46179595Sbennouart_cpu_eqres(struct uart_bas *b1, struct uart_bas *b2) 47179595Sbenno{ 48179595Sbenno 49179595Sbenno return (b1->bsh == b2->bsh ? 1 : 0); 50179595Sbenno} 51179595Sbenno 52179595Sbennoint 53179595Sbennouart_cpu_getdev(int devtype, struct uart_devinfo *di) 54179595Sbenno{ 55179595Sbenno 56179595Sbenno di->ops = uart_getops(&uart_ns8250_class); 57179595Sbenno di->bas.chan = 0; 58179595Sbenno di->bas.bst = obio_tag; 59179595Sbenno di->bas.regshft = 2; 60179595Sbenno di->bas.rclk = PXA2X0_COM_FREQ; 61179595Sbenno di->baudrate = 115200; 62179595Sbenno di->databits = 8; 63179595Sbenno di->stopbits = 1; 64179595Sbenno di->parity = UART_PARITY_NONE; 65179595Sbenno uart_bus_space_mem = obio_tag; 66179595Sbenno uart_bus_space_io = NULL; 67179595Sbenno di->bas.bsh = PXA2X0_FFUART_BASE; 68179595Sbenno return (0); 69179595Sbenno} 70