arm, am335x: add support for siemens boards
Subsystems (2)
cover arm, am335x: add support for siemens boards
add support for the am335x based boards from siemens:
dxr2:
- DDR3 128MiB
- NAND 256MiB
- Ethernet with external Switch SMSC LAN9303
- no PMIC
- internal Watchdog
- DFU support
pxm2:
- DDR2 512 MiB
- NAND 1024 MiB
- PMIC
- PHY atheros ar803x
- USB Host
- internal Watchdog
- DFU support
rut:
- DDR3 256 MiB
- NAND 256 MiB
- PMIC
- PHY natsemi dp83630
- external Watchdog
- DFU support
based on current mainline commit 9fab4bf4cc077c21e43941866f3f2c196f28670d
Needed patches:
- [U-Boot] arm, spl: add watchdog library to SPL
http://patchwork.ozlabs.org/patch/248503/
reposted with this patchserie
- [U-Boot] arm, arm335x: add watchdog support
http://patchwork.ozlabs.org/patch/248504/
reposted with this patchserie
- [U-Boot,v2] arm, am33xx: add defines for gmii_sel_register bits
http://patchwork.ozlabs.org/patch/248916/
- patches from Lokesh Vutla:
[U-Boot,1/4] ARM: AM33xx: Cleanup dplls data
http://patchwork.ozlabs.org/patch/253831/
[U-Boot,2/4] ARM: AM33xx: Cleanup clocks layer
http://patchwork.ozlabs.org/patch/253833/
[U-Boot,3/4] ARM: AM33xx: Move s_init to a common place
http://patchwork.ozlabs.org/patch/253834/
[U-Boot,4/4] musb: Disable extra prints
http://patchwork.ozlabs.org/patch/253832/
- [U-Boot,v5] dfu, nand, ubi: add partubi alt settings for updating ubi partition
http://patchwork.ozlabs.org/patch/261583/
- [U-Boot] net, phy, cpsw: fix gigabit register access
http://patchwork.ozlabs.org/patch/261087/
Tested patches with this patch:
- [U-Boot] dfu: Implementation of target reset after communication with dfu-util's -R switch
http://patchwork.ozlabs.org/patch/260041/
- [U-Boot] ARM: OMAP: GPIO: Fix valid range and enable usage of all GPIOs on OMAP5
http://patchwork.ozlabs.org/patch/253185/
Heiko Schocher (3):
arm, spl: add watchdog library to SPL
arm, am335x: add watchdog support
arm, am335x: add support for 3 siemens boards
MAINTAINERS | 5 + arch/arm/include/asm/arch-am33xx/cpu.h | 20 ++ board/siemens/common/board.c | 160 ++++++++++++ board/siemens/common/factoryset.c | 268 +++++++++++++++++++ board/siemens/common/factoryset.h | 21 ++ board/siemens/dxr2/Makefile | 48 ++++ board/siemens/dxr2/board.c | 239 +++++++++++++++++ board/siemens/dxr2/board.h | 68 +++++ board/siemens/dxr2/mux.c | 112 ++++++++ board/siemens/pxm2/Makefile | 48 ++++ board/siemens/pxm2/board.c | 236 +++++++++++++++++ board/siemens/pxm2/board.h | 21 ++ board/siemens/pxm2/mux.c | 140 ++++++++++ board/siemens/pxm2/pmic.h | 73 ++++++ board/siemens/rut/Makefile | 48 ++++ board/siemens/rut/board.c | 179 +++++++++++++ board/siemens/rut/board.h | 21 ++ board/siemens/rut/mux.c | 340 ++++++++++++++++++++++++ boards.cfg | 3 + doc/README.SPL | 2 +- drivers/watchdog/Makefile | 1 + drivers/watchdog/omap_wdt.c | 112 ++++++++ include/configs/dxr2.h | 95 +++++++ include/configs/pxm2.h | 134 ++++++++++ include/configs/rut.h | 135 ++++++++++ include/configs/siemens-am33x-common.h | 464 +++++++++++++++++++++++++++++++++ spl/Makefile | 1 + 27 Dateien ge?ndert, 2993 Zeilen hinzugef?gt(+), 1 Zeile entfernt(-) create mode 100644 board/siemens/common/board.c create mode 100644 board/siemens/common/factoryset.c create mode 100644 board/siemens/common/factoryset.h create mode 100644 board/siemens/dxr2/Makefile create mode 100644 board/siemens/dxr2/board.c create mode 100644 board/siemens/dxr2/board.h create mode 100644 board/siemens/dxr2/mux.c create mode 100644 board/siemens/pxm2/Makefile create mode 100644 board/siemens/pxm2/board.c create mode 100644 board/siemens/pxm2/board.h create mode 100644 board/siemens/pxm2/mux.c create mode 100644 board/siemens/pxm2/pmic.h create mode 100644 board/siemens/rut/Makefile create mode 100644 board/siemens/rut/board.c create mode 100644 board/siemens/rut/board.h create mode 100644 board/siemens/rut/mux.c create mode 100644 drivers/watchdog/omap_wdt.c create mode 100644 include/configs/dxr2.h create mode 100644 include/configs/pxm2.h create mode 100644 include/configs/rut.h create mode 100644 include/configs/siemens-am33x-common.h
Signature · 1 line
1.7.11.7
PATCH 1/3 arm, spl: add watchdog library to SPL
--- doc/README.SPL | 2 +- spl/Makefile | 1 +
2 Dateien ge?ndert, 2 Zeilen hinzugef?gt(+), 1 Zeile entfernt(-)
doc/README.SPL +1 -1
@@ -67,7 +67,7 @@ CONFIG_SPL_POST_MEM_SUPPORT (post/drivers/memory.o) CONFIG_SPL_NAND_LOAD (drivers/mtd/nand/nand_spl_load.o) CONFIG_SPL_SPI_LOAD (drivers/mtd/spi/spi_spl_load.o) CONFIG_SPL_RAM_DEVICE (common/spl/spl.c) - +CONFIG_SPL_WATCHDOG_SUPPORT (drivers/watchdog/libwatchdog.o) Normally CPU is assumed to be the same between the SPL and normal u-boot build. However it is possible to specify a different CPU for
spl/Makefile +1 -0
@@ -82,6 +82,7 @@ LIBS-$(CONFIG_SPL_ETH_SUPPORT) += drivers/net/libnet.o LIBS-$(CONFIG_SPL_ETH_SUPPORT) += drivers/net/phy/libphy.o LIBS-$(CONFIG_SPL_MUSB_NEW_SUPPORT) += drivers/usb/musb-new/libusb_musb-new.o LIBS-$(CONFIG_SPL_USBETH_SUPPORT) += drivers/usb/gadget/libusb_gadget.o +LIBS-$(CONFIG_SPL_WATCHDOG_SUPPORT) += drivers/watchdog/libwatchdog.o ifneq ($(CONFIG_AM33XX)$(CONFIG_OMAP34XX)$(CONFIG_OMAP44XX)$(CONFIG_OMAP54XX)$(CONFIG_TI814X),) LIBS-y += $(CPUDIR)/omap-common/libomap-common.o
Signature · 1 line
1.7.11.7
PATCH v2 2/3 arm, am335x: add watchdog support
In reply to Heiko SchocherAdd TI OMAP 16xx & 24xx/34xx 32KHz (non-secure) watchdog support.
---
- changes for v2:
- add Reviedwed-by from Tom Rini
- fixed subject
- add SPDX-License-Identifier
arch/arm/include/asm/arch-am33xx/cpu.h | 20 ++++++ drivers/watchdog/Makefile | 1 + drivers/watchdog/omap_wdt.c | 112 +++++++++++++++++++++++++++++++++ 3 Dateien ge?ndert, 133 Zeilen hinzugef?gt(+) create mode 100644 drivers/watchdog/omap_wdt.c
arch/arm/include/asm/arch-am33xx/cpu.h +20 -0
@@ -53,6 +53,26 @@#define PRM_RSTCTRL_RESET 0x01#define PRM_RSTST_WARM_RESET_MASK 0x232 +/* +* Watchdog: +* Using the prescaler, the OMAP watchdog could go for many +* months before firing. These limits work without scaling, +* with the 60 second default assumed by most tools and docs. +*/ +#define TIMER_MARGIN_MAX (24 * 60 * 60)/* 1 day */ +#define TIMER_MARGIN_DEFAULT 60/* 60 secs */ +#define TIMER_MARGIN_MIN 1 + +#define PTV 0/* prescale */ +#define GET_WLDR_VAL (secs) (0xffffffff - ((secs) * (32768/(1<<PTV))) + 1) +#define WDT_WWPS_PEND_WCLR BIT(0) +#define WDT_WWPS_PEND_WLDR BIT(2) +#define WDT_WWPS_PEND_WTGR BIT(3) +#define WDT_WWPS_PEND_WSPR BIT(4) + +#define WDT_WCLR_PRE BIT(5) +#define WDT_WCLR_PTV_OFF 2 +#ifndef __KERNEL_STRICT_NAMES#ifndef __ASSEMBLY__ struct gpmc_cs {
drivers/watchdog/Makefile +1 -0
@@ -18,6 +18,7 @@ COBJS-$(CONFIG_TNETV107X_WATCHDOG) += tnetv107x_wdt.o COBJS-$(CONFIG_S5P) += s5p_wdt.o COBJS-$(CONFIG_XILINX_TB_WATCHDOG) += xilinx_tb_wdt.o COBJS-$(CONFIG_BFIN_WATCHDOG) += bfin_wdt.o +COBJS-$(CONFIG_OMAP_WATCHDOG) += omap_wdt.o COBJS := $(COBJS-y) SRCS := $(COBJS:.o=.c)
drivers/watchdog/omap_wdt.c new file +112 -0
112 lines not on this page · raw message
Signature · 1 line
1.7.11.7
PATCH v2 2/3 arm, am335x: add watchdog support
Quoted 5 lines · Heiko Schocher
Add TI OMAP 16xx & 24xx/34xx 32KHz (non-secure) watchdog support.
Signed-off-by Heiko Schocher <[email protected]>Reviewed-by Tom Rini <[email protected]>Cc Albert Aribaud <[email protected]>
[snip]
Quoted 11 lines
+++
b/drivers/watchdog/omap_wdt.cdrivers/watchdog/omap_wdt.c new file +9
-0@@ -0,0 +1,112 @@ +/* +* omap_wdt.c +* +* (C) Copyright 2013 +* Heiko Schocher, DENX Software Engineering, hs at denx.de. +* +* SPDX-License-Identifier: GPL-2.0+ +* +* Based on:
drivers/watchdog/omap_wdt.c line 19
Quoted 10 lines
drivers/watchdog/omap_wdt.c new file +10
-0+* +* Watchdog driver for the TI OMAP 16xx & 24xx/34xx 32KHz (non-secure) watchdog +* +* Author: MontaVista Software, Inc. +* <[email protected]> or <[email protected]> +* +* History: +* +* 20030527: George G. Davis <[email protected]> +* Initially based on linux-2.4.19-rmk7-pxa1/drivers/char/sa1100_wdt.c
So this is clearly based on the kernel, so we can't go adding our own "plus" and this is just GPL-2.0.
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20130729/048e9a9d/attachment.pgp>
PATCH v2 2/3 arm, am335x: add watchdog support
Hello Tom,
Am 29.07.2013 14:39, schrieb Tom Rini:
Quoted 24 lines · Heiko Schocher
Quoted 6 lines
Add TI OMAP 16xx& 24xx/34xx 32KHz (non-secure) watchdog support.
Signed-off-by Heiko Schocher<[email protected]>Reviewed-by Tom Rini<[email protected]>Cc Albert Aribaud<[email protected]>[snip]
Quoted 16 lines
+++
b/drivers/watchdog/omap_wdt.cdrivers/watchdog/omap_wdt.c new file +14
-0@@ -0,0 +1,112 @@ +/* +* omap_wdt.c +* +* (C) Copyright 2013 +* Heiko Schocher, DENX Software Engineering, hs at denx.de. +* +* SPDX-License-Identifier: GPL-2.0+ +* +* Based on: +* +* Watchdog driver for the TI OMAP 16xx& 24xx/34xx 32KHz (non-secure) watchdog +* +* Author: MontaVista Software, Inc. +* <[email protected]> or<[email protected]>
Quoted 8 lines
drivers/watchdog/omap_wdt.c line 19
Quoted 5 lines
drivers/watchdog/omap_wdt.c new file +5
-0+* +* History: +* +* 20030527: George G. Davis<[email protected]> +* Initially based on linux-2.4.19-rmk7-pxa1/drivers/char/sa1100_wdt.c So this is clearly based on the kernel, so we can't go adding our own "plus" and this is just GPL-2.0.
Yes, you are right, sorry for that, simple copy&paste error. I wrote an EMail to the owner of the linux driver if GPL-2.0+ is OK, or if we should leave it GPL-2.0 in u-boot.
Thanks!
bye,
Heiko
Signature · 2 lines
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
PATCH v2 2/3 arm, am335x: add watchdog support
Quoted 36 lines · Heiko Schocher
Hello Tom,
Am 29.07.2013 14:39, schrieb Tom Rini:
Quoted 24 lines · Heiko Schocher
Quoted 6 lines
Add TI OMAP 16xx& 24xx/34xx 32KHz (non-secure) watchdog support.
Signed-off-by Heiko Schocher<[email protected]>Reviewed-by Tom Rini<[email protected]>Cc Albert Aribaud<[email protected]>[snip]
Quoted 16 lines
+++
b/drivers/watchdog/omap_wdt.cdrivers/watchdog/omap_wdt.c new file +14
-0@@ -0,0 +1,112 @@ +/* +* omap_wdt.c +* +* (C) Copyright 2013 +* Heiko Schocher, DENX Software Engineering, hs at denx.de. +* +* SPDX-License-Identifier: GPL-2.0+ +* +* Based on: +* +* Watchdog driver for the TI OMAP 16xx& 24xx/34xx 32KHz (non-secure) watchdog +* +* Author: MontaVista Software, Inc. +* <[email protected]> or<[email protected]> Quoted 8 lines
drivers/watchdog/omap_wdt.c line 19
Quoted 5 lines
drivers/watchdog/omap_wdt.c new file +5
-0+* +* History: +* +* 20030527: George G. Davis<[email protected]> +* Initially based on linux-2.4.19-rmk7-pxa1/drivers/char/sa1100_wdt.c So this is clearly based on the kernel, so we can't go adding our own "plus" and this is just GPL-2.0.
Quoted 3 lines
Yes, you are right, sorry for that, simple copy&paste error. I wrote an EMail to the owner of the linux driver if GPL-2.0+ is OK, or if we should leave it GPL-2.0 in u-boot.
George's code is based on someone elses, based on ... So lets just leave it as GPL-2.0.
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20130729/12fd591d/attachment.pgp>
PATCH 3/3 arm, am335x: add support for 3 siemens boards
In reply to Heiko Schocheradd support for the am335x based boards from siemens:
dxr2:
- DDR3 128MiB
- NAND 256MiB
- Ethernet with external Switch SMSC LAN9303
- no PMIC
- internal Watchdog
- DFU support
pxm2:
- DDR2 512 MiB
- NAND 1024 MiB
- PMIC
- PHY atheros ar803x
- USB Host
- internal Watchdog
- DFU support
rut:
- DDR3 256 MiB
- NAND 256 MiB
- PMIC
- PHY natsemi dp83630
- external Watchdog
- DFU support
---
based on current mainline commit 9fab4bf4cc077c21e43941866f3f2c196f28670d
Needed patches:
- [U-Boot] arm, spl: add watchdog library to SPL
http://patchwork.ozlabs.org/patch/248503/
reposted with this patchserie
- [U-Boot] arm, arm335x: add watchdog support
http://patchwork.ozlabs.org/patch/248504/
reposted with this patchserie
- [U-Boot,v2] arm, am33xx: add defines for gmii_sel_register bits
http://patchwork.ozlabs.org/patch/248916/
- patches from Lokesh Vutla:
[U-Boot,1/4] ARM: AM33xx: Cleanup dplls data
http://patchwork.ozlabs.org/patch/253831/
[U-Boot,2/4] ARM: AM33xx: Cleanup clocks layer
http://patchwork.ozlabs.org/patch/253833/
[U-Boot,3/4] ARM: AM33xx: Move s_init to a common place
http://patchwork.ozlabs.org/patch/253834/
[U-Boot,4/4] musb: Disable extra prints
http://patchwork.ozlabs.org/patch/253832/
- [U-Boot,v5] dfu, nand, ubi: add partubi alt settings for updating ubi partition
http://patchwork.ozlabs.org/patch/261583/
- [U-Boot] net, phy, cpsw: fix gigabit register access
http://patchwork.ozlabs.org/patch/261087/
Tested patches with this patch:
- [U-Boot] dfu: Implementation of target reset after communication with dfu-util's -R switch
http://patchwork.ozlabs.org/patch/260041/
- [U-Boot] ARM: OMAP: GPIO: Fix valid range and enable usage of all GPIOs on OMAP5
http://patchwork.ozlabs.org/patch/253185/
MAINTAINERS | 5 + board/siemens/common/board.c | 160 ++++++++++++ board/siemens/common/factoryset.c | 268 +++++++++++++++++++ board/siemens/common/factoryset.h | 21 ++ board/siemens/dxr2/Makefile | 48 ++++ board/siemens/dxr2/board.c | 239 +++++++++++++++++ board/siemens/dxr2/board.h | 68 +++++ board/siemens/dxr2/mux.c | 112 ++++++++ board/siemens/pxm2/Makefile | 48 ++++ board/siemens/pxm2/board.c | 236 +++++++++++++++++ board/siemens/pxm2/board.h | 21 ++ board/siemens/pxm2/mux.c | 140 ++++++++++ board/siemens/pxm2/pmic.h | 73 ++++++ board/siemens/rut/Makefile | 48 ++++ board/siemens/rut/board.c | 179 +++++++++++++ board/siemens/rut/board.h | 21 ++ board/siemens/rut/mux.c | 340 ++++++++++++++++++++++++ boards.cfg | 3 + include/configs/dxr2.h | 95 +++++++ include/configs/pxm2.h | 134 ++++++++++ include/configs/rut.h | 135 ++++++++++ include/configs/siemens-am33x-common.h | 464 +++++++++++++++++++++++++++++++++ 22 Dateien ge?ndert, 2858 Zeilen hinzugef?gt(+) create mode 100644 board/siemens/common/board.c create mode 100644 board/siemens/common/factoryset.c create mode 100644 board/siemens/common/factoryset.h create mode 100644 board/siemens/dxr2/Makefile create mode 100644 board/siemens/dxr2/board.c create mode 100644 board/siemens/dxr2/board.h create mode 100644 board/siemens/dxr2/mux.c create mode 100644 board/siemens/pxm2/Makefile create mode 100644 board/siemens/pxm2/board.c create mode 100644 board/siemens/pxm2/board.h create mode 100644 board/siemens/pxm2/mux.c create mode 100644 board/siemens/pxm2/pmic.h create mode 100644 board/siemens/rut/Makefile create mode 100644 board/siemens/rut/board.c create mode 100644 board/siemens/rut/board.h create mode 100644 board/siemens/rut/mux.c create mode 100644 include/configs/dxr2.h create mode 100644 include/configs/pxm2.h create mode 100644 include/configs/rut.h create mode 100644 include/configs/siemens-am33x-common.h
MAINTAINERS +5 -0
@@ -1082,6 +1082,11 @@ Sergey Yanovich <[email protected]> lp8x4x xscale/pxa +Roger Meier <[email protected]> + dxr2 ARM ARMV7 (AM335x SoC) + pxm2 ARM ARMV7 (AM335x SoC) + rut ARM ARMV7 (AM335x SoC) + ------------------------------------------------------------------------- Unknown / orphaned boards:
board/siemens/common/board.c new file +160 -0
160 lines not on this page · raw message
board/siemens/common/factoryset.c new file +268 -0
268 lines not on this page · raw message
board/siemens/common/factoryset.h new file +21 -0
@@ -0,0 +1,21 @@ +/* +* Common board functions for siemens AM335X based boards +* (C) Copyright 2013 Siemens Schweiz AG +* +* SPDX-License-Identifier: GPL-2.0+ +*/ + +#ifndef __FACTORYSET_H +#define __FACTORYSET_H + +struct factorysetcontainer { +uchar mac[6 ]; +int usb_vendor_id; +int usb_product_id; +}; + +int factoryset_read_eeprom (int i2c_addr); +int factoryset_setenv (void ); +extern struct factorysetcontainer factory_dat; + +#endif /* __FACTORYSET_H */
board/siemens/dxr2/Makefile new file +48 -0
48 lines not on this page · raw message
board/siemens/dxr2/board.c new file +239 -0
239 lines not on this page · raw message
board/siemens/dxr2/board.h new file +68 -0
68 lines not on this page · raw message
board/siemens/dxr2/mux.c new file +112 -0
112 lines not on this page · raw message
board/siemens/pxm2/Makefile new file +48 -0
48 lines not on this page · raw message
board/siemens/pxm2/board.c new file +236 -0
236 lines not on this page · raw message
board/siemens/pxm2/board.h new file +21 -0
@@ -0,0 +1,21 @@ +/* +* board.h +* +* (C) Copyright 2013 Siemens Schweiz AG +* Heiko Schocher, DENX Software Engineering, hs at denx.de. +* +* Based on: +* TI AM335x boards information header +* +* Copyright (C) 2011, Texas Instruments, Incorporated - http://www.ti.com/ +* +* SPDX-License-Identifier: GPL-2.0+ +*/ + +#ifndef _BOARD_H_ +#define _BOARD_H_ + +void enable_uart0_pin_mux (void ); +void enable_i2c0_pin_mux (void ); +void enable_board_pin_mux (void ); +#endif
board/siemens/pxm2/mux.c new file +140 -0
140 lines not on this page · raw message
board/siemens/pxm2/pmic.h new file +73 -0
73 lines not on this page · raw message
board/siemens/rut/Makefile new file +48 -0
48 lines not on this page · raw message
board/siemens/rut/board.c new file +179 -0
179 lines not on this page · raw message
board/siemens/rut/board.h new file +21 -0
@@ -0,0 +1,21 @@ +/* +* board.h +* +* (C) Copyright 2013 Siemens Schweiz AG +* Heiko Schocher, DENX Software Engineering, hs at denx.de. +* +* Based on: +* TI AM335x boards information header +* +* Copyright (C) 2011, Texas Instruments, Incorporated - http://www.ti.com/ +* +* SPDX-License-Identifier: GPL-2.0+ +*/ + +#ifndef _BOARD_H_ +#define _BOARD_H_ + +void enable_uart0_pin_mux (void ); +void enable_i2c0_pin_mux (void ); +void enable_board_pin_mux (void ); +#endif
board/siemens/rut/mux.c new file +340 -0
340 lines not on this page · raw message
boards.cfg +3 -0
@@ -249,6 +249,9 @@ am335x_evm_uart3 arm armv7 am335x ti am335x_evm_uart4 arm armv7 am335x ti am33xx am335x_evm:SERIAL5,CONS_INDEX=5 am335x_evm_uart5 arm armv7 am335x ti am33xx am335x_evm:SERIAL6,CONS_INDEX=6 am335x_evm_usbspl arm armv7 am335x ti am33xx am335x_evm:SERIAL1,CONS_INDEX=1,SPL_USBETH_SUPPORT +dxr2 arm armv7 dxr2 siemens am33xx +pxm2 arm armv7 pxm2 siemens am33xx +rut arm armv7 rut siemens am33xx ti814x_evm arm armv7 ti814x ti am33xx pcm051 arm armv7 pcm051 phytec am33xx pcm051 sama5d3xek_mmc arm armv7 sama5d3xek atmel at91 sama5d3xek:SAMA5D3,SYS_USE_MMC
include/configs/dxr2.h new file +95 -0
95 lines not on this page · raw message
include/configs/pxm2.h new file +134 -0
134 lines not on this page · raw message
include/configs/rut.h new file +135 -0
135 lines not on this page · raw message
include/configs/siemens-am33x-common.h new file +464 -0
464 lines not on this page · raw message
Signature · 1 line
1.7.11.7