mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-06-26 08:31:28 +00:00
nds32: Support AG101P serial DM.
Support AG101P serial device tree flow. Signed-off-by: rick <rick@andestech.com>
This commit is contained in:
parent
a375ff8e14
commit
86132af799
8 changed files with 89 additions and 5 deletions
|
@ -43,6 +43,7 @@ config MIPS
|
||||||
|
|
||||||
config NDS32
|
config NDS32
|
||||||
bool "NDS32 architecture"
|
bool "NDS32 architecture"
|
||||||
|
select SUPPORT_OF_CONTROL
|
||||||
|
|
||||||
config NIOS2
|
config NIOS2
|
||||||
bool "Nios II architecture"
|
bool "Nios II architecture"
|
||||||
|
|
|
@ -161,9 +161,13 @@ update_gp:
|
||||||
*/
|
*/
|
||||||
call_board_init_f:
|
call_board_init_f:
|
||||||
li $sp, CONFIG_SYS_INIT_SP_ADDR
|
li $sp, CONFIG_SYS_INIT_SP_ADDR
|
||||||
li $r10, GD_SIZE /* get GD size */
|
move $r0, $sp
|
||||||
sub $sp, $sp, $r10 /* GD start addr */
|
bal board_init_f_alloc_reserve
|
||||||
move $r10, $sp
|
move $sp, $r0
|
||||||
|
bal board_init_f_init_reserve
|
||||||
|
#ifdef CONFIG_DEBUG_UART
|
||||||
|
bal debug_uart_init
|
||||||
|
#endif
|
||||||
li $r0, 0x00000000
|
li $r0, 0x00000000
|
||||||
|
|
||||||
#ifdef __PIC__
|
#ifdef __PIC__
|
||||||
|
|
14
arch/nds32/dts/Makefile
Normal file
14
arch/nds32/dts/Makefile
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
#
|
||||||
|
# SPDX-License-Identifier: GPL-2.0+
|
||||||
|
#
|
||||||
|
|
||||||
|
dtb-$(CONFIG_TARGET_ADP_AG101P) += ag101p.dtb
|
||||||
|
targets += $(dtb-y)
|
||||||
|
|
||||||
|
DTC_FLAGS += -R 4 -p 0x1000
|
||||||
|
|
||||||
|
PHONY += dtbs
|
||||||
|
dtbs: $(addprefix $(obj)/, $(dtb-y))
|
||||||
|
@:
|
||||||
|
|
||||||
|
clean-files := *.dtb
|
49
arch/nds32/dts/ag101p.dts
Normal file
49
arch/nds32/dts/ag101p.dts
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
/dts-v1/;
|
||||||
|
/ {
|
||||||
|
compatible = "nds32 ag101p";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
interrupt-parent = <&intc>;
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
uart0 = &serial0;
|
||||||
|
} ;
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
/* bootargs = "console=ttyS0,38400n8 earlyprintk=uart8250-32bit,0x99600000 debug bootmem_debug memblock=debug loglevel=7"; */
|
||||||
|
bootargs = "console=ttyS0,38400n8 earlyprintk=uart8250-32bit,0x99600000 debug loglevel=7";
|
||||||
|
stdout-path = "uart0:38400n8";
|
||||||
|
};
|
||||||
|
|
||||||
|
memory@0 {
|
||||||
|
device_type = "memory";
|
||||||
|
reg = <0x00000000 0x40000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
cpus {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
cpu@0 {
|
||||||
|
compatible = "andestech,n13";
|
||||||
|
reg = <0>;
|
||||||
|
/* FIXME: to fill correct frqeuency */
|
||||||
|
clock-frequency = <60000000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
intc: interrupt-controller {
|
||||||
|
compatible = "andestech,atnointc010";
|
||||||
|
#interrupt-cells = <1>;
|
||||||
|
interrupt-controller;
|
||||||
|
};
|
||||||
|
|
||||||
|
serial0: serial@99600000 {
|
||||||
|
compatible = "andestech,uart16550", "ns16550a";
|
||||||
|
reg = <0x99600000 0x1000>;
|
||||||
|
interrupts = <7 4>;
|
||||||
|
clock-frequency = <14745600>;
|
||||||
|
reg-shift = <2>;
|
||||||
|
no-loopback-test = <1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
|
@ -8,5 +8,6 @@
|
||||||
|
|
||||||
#ifndef _ASM_CONFIG_H_
|
#ifndef _ASM_CONFIG_H_
|
||||||
#define _ASM_CONFIG_H_
|
#define _ASM_CONFIG_H_
|
||||||
|
#define CONFIG_LMB
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -14,6 +14,12 @@
|
||||||
|
|
||||||
DECLARE_GLOBAL_DATA_PTR;
|
DECLARE_GLOBAL_DATA_PTR;
|
||||||
|
|
||||||
|
int arch_fixup_fdt(void *blob)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#if defined(CONFIG_SETUP_MEMORY_TAGS) || \
|
#if defined(CONFIG_SETUP_MEMORY_TAGS) || \
|
||||||
defined(CONFIG_CMDLINE_TAG) || \
|
defined(CONFIG_CMDLINE_TAG) || \
|
||||||
defined(CONFIG_INITRD_TAG) || \
|
defined(CONFIG_INITRD_TAG) || \
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
CONFIG_NDS32=y
|
CONFIG_NDS32=y
|
||||||
CONFIG_TARGET_ADP_AG101P=y
|
CONFIG_TARGET_ADP_AG101P=y
|
||||||
|
CONFIG_DEFAULT_DEVICE_TREE="ag101p"
|
||||||
|
CONFIG_FIT=y
|
||||||
CONFIG_BOOTDELAY=3
|
CONFIG_BOOTDELAY=3
|
||||||
CONFIG_SYS_PROMPT="NDS32 # "
|
CONFIG_SYS_PROMPT="NDS32 # "
|
||||||
CONFIG_CMD_MMC=y
|
CONFIG_CMD_MMC=y
|
||||||
|
@ -12,4 +14,7 @@ CONFIG_CMD_FAT=y
|
||||||
CONFIG_MMC=y
|
CONFIG_MMC=y
|
||||||
CONFIG_MTD_NOR_FLASH=y
|
CONFIG_MTD_NOR_FLASH=y
|
||||||
CONFIG_BAUDRATE=38400
|
CONFIG_BAUDRATE=38400
|
||||||
|
CONFIG_OF_CONTROL=y
|
||||||
|
CONFIG_DM=y
|
||||||
|
CONFIG_DM_SERIAL=y
|
||||||
CONFIG_SYS_NS16550=y
|
CONFIG_SYS_NS16550=y
|
||||||
|
|
|
@ -20,8 +20,6 @@
|
||||||
|
|
||||||
#define CONFIG_SKIP_LOWLEVEL_INIT
|
#define CONFIG_SKIP_LOWLEVEL_INIT
|
||||||
|
|
||||||
#define CONFIG_SYS_GENERIC_GLOBAL_DATA
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Definitions related to passing arguments to kernel.
|
* Definitions related to passing arguments to kernel.
|
||||||
*/
|
*/
|
||||||
|
@ -35,6 +33,10 @@
|
||||||
|
|
||||||
#ifdef CONFIG_SKIP_LOWLEVEL_INIT
|
#ifdef CONFIG_SKIP_LOWLEVEL_INIT
|
||||||
#define CONFIG_SYS_TEXT_BASE 0x00500000
|
#define CONFIG_SYS_TEXT_BASE 0x00500000
|
||||||
|
#ifdef CONFIG_OF_CONTROL
|
||||||
|
#undef CONFIG_OF_SEPARATE
|
||||||
|
#define CONFIG_OF_EMBED
|
||||||
|
#endif
|
||||||
#else
|
#else
|
||||||
#ifdef CONFIG_MEM_REMAP
|
#ifdef CONFIG_MEM_REMAP
|
||||||
#define CONFIG_SYS_TEXT_BASE 0x80000000
|
#define CONFIG_SYS_TEXT_BASE 0x80000000
|
||||||
|
@ -87,7 +89,9 @@
|
||||||
#define CONFIG_CONS_INDEX 1
|
#define CONFIG_CONS_INDEX 1
|
||||||
#define CONFIG_SYS_NS16550_SERIAL
|
#define CONFIG_SYS_NS16550_SERIAL
|
||||||
#define CONFIG_SYS_NS16550_COM1 CONFIG_FTUART010_02_BASE
|
#define CONFIG_SYS_NS16550_COM1 CONFIG_FTUART010_02_BASE
|
||||||
|
#ifndef CONFIG_DM_SERIAL
|
||||||
#define CONFIG_SYS_NS16550_REG_SIZE -4
|
#define CONFIG_SYS_NS16550_REG_SIZE -4
|
||||||
|
#endif
|
||||||
#define CONFIG_SYS_NS16550_CLK ((18432000 * 20) / 25) /* AG101P */
|
#define CONFIG_SYS_NS16550_CLK ((18432000 * 20) / 25) /* AG101P */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue