qemu: nios2: Enable UART 16550 driver for QEMU
Enable UART 16550 driver for Nios-II QEMU platform. Note: This PR is tested with patched version Qemu 3.0.0 which adds support for altera_10m50_zephyr machine type. Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
This commit is contained in:
parent
1c16cfcc30
commit
6320043669
6 changed files with 43 additions and 5 deletions
|
@ -7,4 +7,6 @@
|
||||||
#ifndef __INC_BOARD_H
|
#ifndef __INC_BOARD_H
|
||||||
#define __INC_BOARD_H
|
#define __INC_BOARD_H
|
||||||
|
|
||||||
|
#include <soc.h>
|
||||||
|
|
||||||
#endif /* __INC_BOARD_H */
|
#endif /* __INC_BOARD_H */
|
||||||
|
|
|
@ -7,17 +7,23 @@
|
||||||
compatible = "qemu,nios2";
|
compatible = "qemu,nios2";
|
||||||
|
|
||||||
aliases {
|
aliases {
|
||||||
uart-0 = &uart0;
|
uart_0 = &jtag_uart;
|
||||||
|
uart_1 = &ns16550_uart;
|
||||||
};
|
};
|
||||||
|
|
||||||
chosen {
|
chosen {
|
||||||
zephyr,sram = &sram0;
|
zephyr,sram = &sram0;
|
||||||
zephyr,flash = &flash0;
|
zephyr,flash = &flash0;
|
||||||
zephyr,console = &uart0;
|
zephyr,console = &jtag_uart;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
&uart0 {
|
&jtag_uart {
|
||||||
|
status = "ok";
|
||||||
|
current-speed = <115200>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&ns16550_uart {
|
||||||
status = "ok";
|
status = "ok";
|
||||||
current-speed = <115200>;
|
current-speed = <115200>;
|
||||||
};
|
};
|
||||||
|
|
|
@ -7,7 +7,8 @@ CONFIG_CONSOLE=y
|
||||||
CONFIG_PRINTK=y
|
CONFIG_PRINTK=y
|
||||||
CONFIG_SERIAL=y
|
CONFIG_SERIAL=y
|
||||||
CONFIG_UART_ALTERA_JTAG=y
|
CONFIG_UART_ALTERA_JTAG=y
|
||||||
|
CONFIG_UART_NS16550=y
|
||||||
|
CONFIG_UART_NS16550_PORT_0=y
|
||||||
CONFIG_UART_CONSOLE=y
|
CONFIG_UART_CONSOLE=y
|
||||||
CONFIG_UART_CONSOLE_ON_DEV_NAME="jtag_uart0"
|
|
||||||
CONFIG_INCLUDE_RESET_VECTOR=n
|
CONFIG_INCLUDE_RESET_VECTOR=n
|
||||||
CONFIG_EXTRA_EXCEPTION_INFO=y
|
CONFIG_EXTRA_EXCEPTION_INFO=y
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
compatible = "simple-bus";
|
compatible = "simple-bus";
|
||||||
ranges;
|
ranges;
|
||||||
|
|
||||||
uart0: uart@201000 {
|
jtag_uart: uart@201000 {
|
||||||
compatible = "altera,jtag-uart";
|
compatible = "altera,jtag-uart";
|
||||||
reg = <0x201000 0x400>;
|
reg = <0x201000 0x400>;
|
||||||
label = "jtag_uart0";
|
label = "jtag_uart0";
|
||||||
|
@ -37,5 +37,13 @@
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
ns16550_uart: uart@440000 {
|
||||||
|
compatible = "ns16550";
|
||||||
|
reg = <0x440000 0x400>;
|
||||||
|
label = "UART_0";
|
||||||
|
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,3 +1,7 @@
|
||||||
|
#define CONFIG_UART_NS16550_PORT_0_BAUD_RATE NS16550_440000_CURRENT_SPEED
|
||||||
|
|
||||||
|
#define CONFIG_UART_NS16550_PORT_0_NAME NS16550_440000_LABEL
|
||||||
|
|
||||||
#define _RAM_ADDR CONFIG_SRAM_BASE_ADDRESS
|
#define _RAM_ADDR CONFIG_SRAM_BASE_ADDRESS
|
||||||
|
|
||||||
#define _RAM_SIZE (CONFIG_SRAM_SIZE * 1024)
|
#define _RAM_SIZE (CONFIG_SRAM_SIZE * 1024)
|
||||||
|
|
17
soc/nios2/nios2-qemu/soc.h
Normal file
17
soc/nios2/nios2-qemu/soc.h
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2018 Intel Corporation
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef __SOC_H_
|
||||||
|
#define __SOC_H_
|
||||||
|
|
||||||
|
#include <system.h>
|
||||||
|
|
||||||
|
#define CONFIG_UART_NS16550_PORT_0_BASE_ADDR A_16550_UART_0_BASE
|
||||||
|
#define CONFIG_UART_NS16550_PORT_0_IRQ A_16550_UART_0_IRQ
|
||||||
|
#define CONFIG_UART_NS16550_PORT_0_CLK_FREQ A_16550_UART_0_FREQ
|
||||||
|
|
||||||
|
#endif
|
Loading…
Add table
Add a link
Reference in a new issue