1*1b6d0781Sxiaoqiang zhao /* 2*1b6d0781Sxiaoqiang zhao * This program is free software; you can redistribute it and/or modify it 3*1b6d0781Sxiaoqiang zhao * under the terms and conditions of the GNU General Public License, 4*1b6d0781Sxiaoqiang zhao * version 2 or later, as published by the Free Software Foundation. 5*1b6d0781Sxiaoqiang zhao * 6*1b6d0781Sxiaoqiang zhao * This program is distributed in the hope it will be useful, but WITHOUT 7*1b6d0781Sxiaoqiang zhao * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 8*1b6d0781Sxiaoqiang zhao * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 9*1b6d0781Sxiaoqiang zhao * more details. 10*1b6d0781Sxiaoqiang zhao * 11*1b6d0781Sxiaoqiang zhao * You should have received a copy of the GNU General Public License along with 12*1b6d0781Sxiaoqiang zhao * this program. If not, see <http://www.gnu.org/licenses/>. 13*1b6d0781Sxiaoqiang zhao */ 14*1b6d0781Sxiaoqiang zhao 15*1b6d0781Sxiaoqiang zhao #ifndef XILINX_UARTLITE_H 16*1b6d0781Sxiaoqiang zhao #define XILINX_UARTLITE_H 17*1b6d0781Sxiaoqiang zhao 18*1b6d0781Sxiaoqiang zhao static inline DeviceState *xilinx_uartlite_create(hwaddr addr, 19*1b6d0781Sxiaoqiang zhao qemu_irq irq, 20*1b6d0781Sxiaoqiang zhao CharDriverState *chr) 21*1b6d0781Sxiaoqiang zhao { 22*1b6d0781Sxiaoqiang zhao DeviceState *dev; 23*1b6d0781Sxiaoqiang zhao SysBusDevice *s; 24*1b6d0781Sxiaoqiang zhao 25*1b6d0781Sxiaoqiang zhao dev = qdev_create(NULL, "xlnx.xps-uartlite"); 26*1b6d0781Sxiaoqiang zhao s = SYS_BUS_DEVICE(dev); 27*1b6d0781Sxiaoqiang zhao qdev_prop_set_chr(dev, "chardev", chr); 28*1b6d0781Sxiaoqiang zhao qdev_init_nofail(dev); 29*1b6d0781Sxiaoqiang zhao sysbus_mmio_map(s, 0, addr); 30*1b6d0781Sxiaoqiang zhao sysbus_connect_irq(s, 0, irq); 31*1b6d0781Sxiaoqiang zhao 32*1b6d0781Sxiaoqiang zhao return dev; 33*1b6d0781Sxiaoqiang zhao } 34*1b6d0781Sxiaoqiang zhao 35*1b6d0781Sxiaoqiang zhao #endif 36