Re: [U-Boot] [PATCH v4 1/4] stv0991: Add basic stv0991 architecture support
Thanks Albert, On 11/17/2014 11:21 PM, Albert ARIBAUD wrote: Hello Vikas, On Mon, 17 Nov 2014 17:30:25 -0800, Vikas Manocha vikas.mano...@st.com wrote: stv0991 architecture support added. It contains the support for following blocks - Timer - uart Signed-off-by: Vikas Manocha vikas.mano...@st.com --- Changes in v4: - added maintainers info I don't see the MAINTAINERS file added here; it is in 4/4 which (unless I've missed requests to the opposite effect) should be merged with 1/4. You are right, it is mentioned here but actually is in 4/4. I will merge 4/4 with 1/4. Rgds, Vikas - rebased to current master Changes in v3: - removed period from commit message Changes in v2: - corrected files license to GPL-2.0+ - replaced printf() usage with puts() for string print arch/arm/Kconfig |5 + arch/arm/cpu/armv7/stv0991/Makefile|9 ++ arch/arm/cpu/armv7/stv0991/clock.c | 27 + arch/arm/cpu/armv7/stv0991/lowlevel.S | 12 +++ arch/arm/cpu/armv7/stv0991/pinmux.c| 48 + arch/arm/cpu/armv7/stv0991/reset.c | 26 + arch/arm/cpu/armv7/stv0991/timer.c | 114 arch/arm/include/asm/arch-stv0991/hardware.h | 73 + arch/arm/include/asm/arch-stv0991/stv0991_cgu.h| 80 ++ arch/arm/include/asm/arch-stv0991/stv0991_creg.h | 82 ++ arch/arm/include/asm/arch-stv0991/stv0991_defs.h | 16 +++ arch/arm/include/asm/arch-stv0991/stv0991_gpt.h| 43 arch/arm/include/asm/arch-stv0991/stv0991_periph.h | 43 arch/arm/include/asm/arch-stv0991/stv0991_wdru.h | 28 + board/st/stv0991/Kconfig | 23 board/st/stv0991/Makefile |8 ++ board/st/stv0991/stv0991.c | 54 ++ configs/stv0991_defconfig |3 + include/configs/stv0991.h | 58 ++ 19 files changed, 752 insertions(+) create mode 100644 arch/arm/cpu/armv7/stv0991/Makefile create mode 100644 arch/arm/cpu/armv7/stv0991/clock.c create mode 100644 arch/arm/cpu/armv7/stv0991/lowlevel.S create mode 100644 arch/arm/cpu/armv7/stv0991/pinmux.c create mode 100644 arch/arm/cpu/armv7/stv0991/reset.c create mode 100644 arch/arm/cpu/armv7/stv0991/timer.c create mode 100644 arch/arm/include/asm/arch-stv0991/hardware.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_cgu.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_creg.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_defs.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_gpt.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_periph.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_wdru.h create mode 100644 board/st/stv0991/Kconfig create mode 100644 board/st/stv0991/Makefile create mode 100644 board/st/stv0991/stv0991.c create mode 100644 configs/stv0991_defconfig create mode 100644 include/configs/stv0991.h diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 3955978..71faf5e 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -339,6 +339,10 @@ config TARGET_SPEAR600 bool Support spear600 select CPU_ARM926EJS +config TARGET_STV0991 + bool Support stv0991 + select CPU_V7 + config TARGET_X600 bool Support x600 select CPU_ARM926EJS @@ -932,6 +936,7 @@ source board/spear/spear600/Kconfig source board/spear/x600/Kconfig source board/st-ericsson/snowball/Kconfig source board/st-ericsson/u8500/Kconfig +source board/st/stv0991/Kconfig source board/sunxi/Kconfig source board/syteco/jadecpu/Kconfig source board/syteco/zmx25/Kconfig diff --git a/arch/arm/cpu/armv7/stv0991/Makefile b/arch/arm/cpu/armv7/stv0991/Makefile new file mode 100644 index 000..95641d3 --- /dev/null +++ b/arch/arm/cpu/armv7/stv0991/Makefile @@ -0,0 +1,9 @@ +# +# (C) Copyright 2014 +# Vikas Manocha, ST Microelectronics, vikas.manocha@stcom +# +# SPDX-License-Identifier: GPL-2.0+ +# + +obj-y:= timer.o clock.o pinmux.o reset.o +obj-y+= lowlevel.o diff --git a/arch/arm/cpu/armv7/stv0991/clock.c b/arch/arm/cpu/armv7/stv0991/clock.c new file mode 100644 index 000..aca6aba --- /dev/null +++ b/arch/arm/cpu/armv7/stv0991/clock.c @@ -0,0 +1,27 @@ +/* + * (C) Copyright 2014 + * Vikas Manocha, ST Micoelectronics, vikas.mano...@st.com. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include asm/io.h +#include asm/arch/hardware.h +#include asm/arch/stv0991_cgu.h +#includeasm/arch/stv0991_periph.h + +static struct stv0991_cgu_regs *const stv0991_cgu_regs = \ + (struct stv0991_cgu_regs *) (CGU_BASE_ADDR); + +void clock_setup(int peripheral) +{ + switch (peripheral) { + case UART_CLOCK_CFG: +
[U-Boot] [PATCH v4 1/4] stv0991: Add basic stv0991 architecture support
stv0991 architecture support added. It contains the support for following blocks - Timer - uart Signed-off-by: Vikas Manocha vikas.mano...@st.com --- Changes in v4: - added maintainers info - rebased to current master Changes in v3: - removed period from commit message Changes in v2: - corrected files license to GPL-2.0+ - replaced printf() usage with puts() for string print arch/arm/Kconfig |5 + arch/arm/cpu/armv7/stv0991/Makefile|9 ++ arch/arm/cpu/armv7/stv0991/clock.c | 27 + arch/arm/cpu/armv7/stv0991/lowlevel.S | 12 +++ arch/arm/cpu/armv7/stv0991/pinmux.c| 48 + arch/arm/cpu/armv7/stv0991/reset.c | 26 + arch/arm/cpu/armv7/stv0991/timer.c | 114 arch/arm/include/asm/arch-stv0991/hardware.h | 73 + arch/arm/include/asm/arch-stv0991/stv0991_cgu.h| 80 ++ arch/arm/include/asm/arch-stv0991/stv0991_creg.h | 82 ++ arch/arm/include/asm/arch-stv0991/stv0991_defs.h | 16 +++ arch/arm/include/asm/arch-stv0991/stv0991_gpt.h| 43 arch/arm/include/asm/arch-stv0991/stv0991_periph.h | 43 arch/arm/include/asm/arch-stv0991/stv0991_wdru.h | 28 + board/st/stv0991/Kconfig | 23 board/st/stv0991/Makefile |8 ++ board/st/stv0991/stv0991.c | 54 ++ configs/stv0991_defconfig |3 + include/configs/stv0991.h | 58 ++ 19 files changed, 752 insertions(+) create mode 100644 arch/arm/cpu/armv7/stv0991/Makefile create mode 100644 arch/arm/cpu/armv7/stv0991/clock.c create mode 100644 arch/arm/cpu/armv7/stv0991/lowlevel.S create mode 100644 arch/arm/cpu/armv7/stv0991/pinmux.c create mode 100644 arch/arm/cpu/armv7/stv0991/reset.c create mode 100644 arch/arm/cpu/armv7/stv0991/timer.c create mode 100644 arch/arm/include/asm/arch-stv0991/hardware.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_cgu.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_creg.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_defs.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_gpt.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_periph.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_wdru.h create mode 100644 board/st/stv0991/Kconfig create mode 100644 board/st/stv0991/Makefile create mode 100644 board/st/stv0991/stv0991.c create mode 100644 configs/stv0991_defconfig create mode 100644 include/configs/stv0991.h diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 3955978..71faf5e 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -339,6 +339,10 @@ config TARGET_SPEAR600 bool Support spear600 select CPU_ARM926EJS +config TARGET_STV0991 + bool Support stv0991 + select CPU_V7 + config TARGET_X600 bool Support x600 select CPU_ARM926EJS @@ -932,6 +936,7 @@ source board/spear/spear600/Kconfig source board/spear/x600/Kconfig source board/st-ericsson/snowball/Kconfig source board/st-ericsson/u8500/Kconfig +source board/st/stv0991/Kconfig source board/sunxi/Kconfig source board/syteco/jadecpu/Kconfig source board/syteco/zmx25/Kconfig diff --git a/arch/arm/cpu/armv7/stv0991/Makefile b/arch/arm/cpu/armv7/stv0991/Makefile new file mode 100644 index 000..95641d3 --- /dev/null +++ b/arch/arm/cpu/armv7/stv0991/Makefile @@ -0,0 +1,9 @@ +# +# (C) Copyright 2014 +# Vikas Manocha, ST Microelectronics, vikas.manocha@stcom +# +# SPDX-License-Identifier: GPL-2.0+ +# + +obj-y := timer.o clock.o pinmux.o reset.o +obj-y += lowlevel.o diff --git a/arch/arm/cpu/armv7/stv0991/clock.c b/arch/arm/cpu/armv7/stv0991/clock.c new file mode 100644 index 000..aca6aba --- /dev/null +++ b/arch/arm/cpu/armv7/stv0991/clock.c @@ -0,0 +1,27 @@ +/* + * (C) Copyright 2014 + * Vikas Manocha, ST Micoelectronics, vikas.mano...@st.com. + * + * SPDX-License-Identifier:GPL-2.0+ + */ + +#include asm/io.h +#include asm/arch/hardware.h +#include asm/arch/stv0991_cgu.h +#includeasm/arch/stv0991_periph.h + +static struct stv0991_cgu_regs *const stv0991_cgu_regs = \ + (struct stv0991_cgu_regs *) (CGU_BASE_ADDR); + +void clock_setup(int peripheral) +{ + switch (peripheral) { + case UART_CLOCK_CFG: + writel(UART_CLK_CFG, stv0991_cgu_regs-uart_freq); + break; + case ETH_CLOCK_CFG: + break; + default: + break; + } +} diff --git a/arch/arm/cpu/armv7/stv0991/lowlevel.S b/arch/arm/cpu/armv7/stv0991/lowlevel.S new file mode 100644 index 000..6dafba3 --- /dev/null +++ b/arch/arm/cpu/armv7/stv0991/lowlevel.S @@ -0,0 +1,12 @@ +/* + * (C) Copyright 2014 stmicroelectronics + * + *
Re: [U-Boot] [PATCH v4 1/4] stv0991: Add basic stv0991 architecture support
Hello Vikas, On Mon, 17 Nov 2014 17:30:25 -0800, Vikas Manocha vikas.mano...@st.com wrote: stv0991 architecture support added. It contains the support for following blocks - Timer - uart Signed-off-by: Vikas Manocha vikas.mano...@st.com --- Changes in v4: - added maintainers info I don't see the MAINTAINERS file added here; it is in 4/4 which (unless I've missed requests to the opposite effect) should be merged with 1/4. - rebased to current master Changes in v3: - removed period from commit message Changes in v2: - corrected files license to GPL-2.0+ - replaced printf() usage with puts() for string print arch/arm/Kconfig |5 + arch/arm/cpu/armv7/stv0991/Makefile|9 ++ arch/arm/cpu/armv7/stv0991/clock.c | 27 + arch/arm/cpu/armv7/stv0991/lowlevel.S | 12 +++ arch/arm/cpu/armv7/stv0991/pinmux.c| 48 + arch/arm/cpu/armv7/stv0991/reset.c | 26 + arch/arm/cpu/armv7/stv0991/timer.c | 114 arch/arm/include/asm/arch-stv0991/hardware.h | 73 + arch/arm/include/asm/arch-stv0991/stv0991_cgu.h| 80 ++ arch/arm/include/asm/arch-stv0991/stv0991_creg.h | 82 ++ arch/arm/include/asm/arch-stv0991/stv0991_defs.h | 16 +++ arch/arm/include/asm/arch-stv0991/stv0991_gpt.h| 43 arch/arm/include/asm/arch-stv0991/stv0991_periph.h | 43 arch/arm/include/asm/arch-stv0991/stv0991_wdru.h | 28 + board/st/stv0991/Kconfig | 23 board/st/stv0991/Makefile |8 ++ board/st/stv0991/stv0991.c | 54 ++ configs/stv0991_defconfig |3 + include/configs/stv0991.h | 58 ++ 19 files changed, 752 insertions(+) create mode 100644 arch/arm/cpu/armv7/stv0991/Makefile create mode 100644 arch/arm/cpu/armv7/stv0991/clock.c create mode 100644 arch/arm/cpu/armv7/stv0991/lowlevel.S create mode 100644 arch/arm/cpu/armv7/stv0991/pinmux.c create mode 100644 arch/arm/cpu/armv7/stv0991/reset.c create mode 100644 arch/arm/cpu/armv7/stv0991/timer.c create mode 100644 arch/arm/include/asm/arch-stv0991/hardware.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_cgu.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_creg.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_defs.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_gpt.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_periph.h create mode 100644 arch/arm/include/asm/arch-stv0991/stv0991_wdru.h create mode 100644 board/st/stv0991/Kconfig create mode 100644 board/st/stv0991/Makefile create mode 100644 board/st/stv0991/stv0991.c create mode 100644 configs/stv0991_defconfig create mode 100644 include/configs/stv0991.h diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 3955978..71faf5e 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -339,6 +339,10 @@ config TARGET_SPEAR600 bool Support spear600 select CPU_ARM926EJS +config TARGET_STV0991 + bool Support stv0991 + select CPU_V7 + config TARGET_X600 bool Support x600 select CPU_ARM926EJS @@ -932,6 +936,7 @@ source board/spear/spear600/Kconfig source board/spear/x600/Kconfig source board/st-ericsson/snowball/Kconfig source board/st-ericsson/u8500/Kconfig +source board/st/stv0991/Kconfig source board/sunxi/Kconfig source board/syteco/jadecpu/Kconfig source board/syteco/zmx25/Kconfig diff --git a/arch/arm/cpu/armv7/stv0991/Makefile b/arch/arm/cpu/armv7/stv0991/Makefile new file mode 100644 index 000..95641d3 --- /dev/null +++ b/arch/arm/cpu/armv7/stv0991/Makefile @@ -0,0 +1,9 @@ +# +# (C) Copyright 2014 +# Vikas Manocha, ST Microelectronics, vikas.manocha@stcom +# +# SPDX-License-Identifier: GPL-2.0+ +# + +obj-y:= timer.o clock.o pinmux.o reset.o +obj-y+= lowlevel.o diff --git a/arch/arm/cpu/armv7/stv0991/clock.c b/arch/arm/cpu/armv7/stv0991/clock.c new file mode 100644 index 000..aca6aba --- /dev/null +++ b/arch/arm/cpu/armv7/stv0991/clock.c @@ -0,0 +1,27 @@ +/* + * (C) Copyright 2014 + * Vikas Manocha, ST Micoelectronics, vikas.mano...@st.com. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include asm/io.h +#include asm/arch/hardware.h +#include asm/arch/stv0991_cgu.h +#includeasm/arch/stv0991_periph.h + +static struct stv0991_cgu_regs *const stv0991_cgu_regs = \ + (struct stv0991_cgu_regs *) (CGU_BASE_ADDR); + +void clock_setup(int peripheral) +{ + switch (peripheral) { + case UART_CLOCK_CFG: + writel(UART_CLK_CFG, stv0991_cgu_regs-uart_freq); + break; + case ETH_CLOCK_CFG: +