mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* [PATCH v1 1/4] MIPS: ar9331: add watchdog support
@ 2017-12-09  9:59 Oleksij Rempel
  2017-12-09  9:59 ` [PATCH v1 2/4] MIPS: ath79: ar9331: add generic RAM macro Oleksij Rempel
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Oleksij Rempel @ 2017-12-09  9:59 UTC (permalink / raw)
  To: barebox; +Cc: Oleksij Rempel

Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
---
 arch/mips/dts/ar9331.dtsi | 6 ++++++
 drivers/watchdog/Kconfig  | 2 +-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/arch/mips/dts/ar9331.dtsi b/arch/mips/dts/ar9331.dtsi
index b4b8b766b..42baae1e8 100644
--- a/arch/mips/dts/ar9331.dtsi
+++ b/arch/mips/dts/ar9331.dtsi
@@ -1,5 +1,11 @@
 / {
 	ahb {
+		wdt0: wdt@18060008 {
+			compatible = "qca,ar9331-wdt", "qca,ar9344-wdt";
+			reg = <0x18060008 0x8>;
+			clocks = <&pll ATH79_CLK_CPU>;
+		};
+
 		mac0: mac@19000000 {
 			compatible = "qca,ar9331-ge0";
 			reg = <0x18070000 0x00000100>,
diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
index 1f04c7fba..a8f9492ac 100644
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
@@ -12,7 +12,7 @@ if WATCHDOG
 
 config WATCHDOG_AR9344
 	bool "QCA AR9344"
-	depends on SOC_QCA_AR9344
+	depends on SOC_QCA_AR9344 || SOC_QCA_AR9331
 	help
 	  Add support for watchdog on the QCA AR9344 SoC.
 
-- 
2.14.1


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v1 2/4] MIPS: ath79: ar9331: add generic RAM macro
  2017-12-09  9:59 [PATCH v1 1/4] MIPS: ar9331: add watchdog support Oleksij Rempel
@ 2017-12-09  9:59 ` Oleksij Rempel
  2017-12-09  9:59 ` [PATCH v1 3/4] MIPS: ath79: ar9331: add ar9331_pbl_generic_start macro Oleksij Rempel
  2017-12-09  9:59 ` [PATCH v1 4/4] MIPS: add support for DPTechnics DPT-Module v1 Oleksij Rempel
  2 siblings, 0 replies; 8+ messages in thread
From: Oleksij Rempel @ 2017-12-09  9:59 UTC (permalink / raw)
  To: barebox; +Cc: Oleksij Rempel

with this macro, we should be able to cover most of existing
ar9331 based boards.

Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
---
 arch/mips/mach-ath79/include/mach/ar71xx_regs.h |  1 +
 arch/mips/mach-ath79/include/mach/pbl_macros.h  | 37 +++++++++++++++++++++++--
 2 files changed, 35 insertions(+), 3 deletions(-)

diff --git a/arch/mips/mach-ath79/include/mach/ar71xx_regs.h b/arch/mips/mach-ath79/include/mach/ar71xx_regs.h
index 31d33b3c4..f73700b5b 100644
--- a/arch/mips/mach-ath79/include/mach/ar71xx_regs.h
+++ b/arch/mips/mach-ath79/include/mach/ar71xx_regs.h
@@ -139,6 +139,7 @@
 
 #define AR71XX_RESET_FULL_CHIP		BIT(24)
 
+#define AR933X_BOOTSTRAP_MEM_TYPE	BIT(13)
 #define AR933X_BOOTSTRAP_REF_CLK_40	BIT(0)
 
 #endif /* __ASM_MACH_AR71XX_REGS_H */
diff --git a/arch/mips/mach-ath79/include/mach/pbl_macros.h b/arch/mips/mach-ath79/include/mach/pbl_macros.h
index 680fcbb86..9e4859b19 100644
--- a/arch/mips/mach-ath79/include/mach/pbl_macros.h
+++ b/arch/mips/mach-ath79/include/mach/pbl_macros.h
@@ -172,6 +172,40 @@
 	.set	pop
 .endm
 
+#define RESET_REG_BOOTSTRAP	((KSEG1 | AR71XX_RESET_BASE) \
+					| AR933X_RESET_REG_BOOTSTRAP)
+
+.macro	pbl_ar9331_ram_generic_config
+	.set	push
+	.set	noreorder
+
+	li	t5,	RESET_REG_BOOTSTRAP
+	/* Documentation and source code of existing boot loaders disagree at
+	 * this place. Doc says: MEM_TYPE[13:12]:
+	 * - 00 = SDRAM
+	 * - 01 = DDR1
+	 * - 10 = DDR2
+	 * The source code of most loaders do not care about BIT(12). So we do
+	 * the same.
+	 */
+	li	t6,	AR933X_BOOTSTRAP_MEM_TYPE
+	lw	t7,	0(t5);
+	and	t6,	t7,	t6
+	beq	zero,	t6,	pbl_ar9331_ram_generic_ddr1
+	nop
+
+pbl_ar9331_ram_generic_ddr2:
+	pbl_ar9331_ddr2_config
+	b	pbl_ar9331_ram_generic_config
+	nop
+
+pbl_ar9331_ram_generic_ddr1:
+	pbl_ar9331_ddr1_config
+
+pbl_ar9331_ram_generic_config:
+	.set	pop
+.endm
+
 #define GPIO_FUNC	((KSEG1 | AR71XX_GPIO_BASE) | AR71XX_GPIO_REG_FUNC)
 
 .macro	pbl_ar9331_uart_enable
@@ -179,9 +213,6 @@
 			| AR933X_GPIO_FUNC_RSRV15, GPIO_FUNC
 .endm
 
-#define RESET_REG_BOOTSTRAP	((KSEG1 | AR71XX_RESET_BASE) \
-					| AR933X_RESET_REG_BOOTSTRAP)
-
 .macro	pbl_ar9331_mdio_gpio_enable
 	/* Bit 18 enables MDC and MDIO function on GPIO26 and GPIO28 */
 	pbl_reg_set (1 << 18), RESET_REG_BOOTSTRAP
-- 
2.14.1


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v1 3/4] MIPS: ath79: ar9331: add ar9331_pbl_generic_start macro
  2017-12-09  9:59 [PATCH v1 1/4] MIPS: ar9331: add watchdog support Oleksij Rempel
  2017-12-09  9:59 ` [PATCH v1 2/4] MIPS: ath79: ar9331: add generic RAM macro Oleksij Rempel
@ 2017-12-09  9:59 ` Oleksij Rempel
  2017-12-09  9:59 ` [PATCH v1 4/4] MIPS: add support for DPTechnics DPT-Module v1 Oleksij Rempel
  2 siblings, 0 replies; 8+ messages in thread
From: Oleksij Rempel @ 2017-12-09  9:59 UTC (permalink / raw)
  To: barebox; +Cc: Oleksij Rempel

Most of ar9331 boards have identical PBL. So we can sync the code
to single macro.

Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
---
 arch/mips/mach-ath79/include/mach/pbl_macros.h | 35 ++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/arch/mips/mach-ath79/include/mach/pbl_macros.h b/arch/mips/mach-ath79/include/mach/pbl_macros.h
index 9e4859b19..906d73e8c 100644
--- a/arch/mips/mach-ath79/include/mach/pbl_macros.h
+++ b/arch/mips/mach-ath79/include/mach/pbl_macros.h
@@ -368,4 +368,39 @@ normal_path:
 	.set	pop
 .endm
 
+	.macro	ar9331_pbl_generic_start
+	.set	push
+	.set	noreorder
+
+	mips_barebox_10h
+
+	pbl_blt 0xbf000000 skip_pll_ram_config t8
+
+	hornet_mips24k_cp0_setup
+
+	pbl_ar9331_wmac_enable
+
+	hornet_1_1_war
+
+	pbl_ar9331_pll
+	pbl_ar9331_ram_generic_config
+
+skip_pll_ram_config:
+	/* Initialize caches... */
+	mips_cache_reset
+
+	/* ... and enable them */
+	dcache_enable
+
+	pbl_ar9331_uart_enable
+	debug_ll_ar9331_init
+	mips_nmon
+
+	pbl_ar9331_mdio_gpio_enable
+
+	copy_to_link_location	pbl_start
+
+	.set	pop
+	.endm
+
 #endif /* __ASM_MACH_ATH79_PBL_MACROS_H */
-- 
2.14.1


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v1 4/4] MIPS: add support for DPTechnics DPT-Module v1
  2017-12-09  9:59 [PATCH v1 1/4] MIPS: ar9331: add watchdog support Oleksij Rempel
  2017-12-09  9:59 ` [PATCH v1 2/4] MIPS: ath79: ar9331: add generic RAM macro Oleksij Rempel
  2017-12-09  9:59 ` [PATCH v1 3/4] MIPS: ath79: ar9331: add ar9331_pbl_generic_start macro Oleksij Rempel
@ 2017-12-09  9:59 ` Oleksij Rempel
  2017-12-09 16:54   ` Antony Pavlov
  2 siblings, 1 reply; 8+ messages in thread
From: Oleksij Rempel @ 2017-12-09  9:59 UTC (permalink / raw)
  To: barebox; +Cc: Oleksij Rempel

This product can be found here:
https://dptechnics.com/en/products/dpt-module-v1.html

Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
---
 arch/mips/Makefile                                 |  1 +
 arch/mips/boards/dptechnics-dpt-module/Makefile    |  1 +
 arch/mips/boards/dptechnics-dpt-module/board.c     |  8 ++
 .../include/board/board_pbl_start.h                | 20 +++++
 arch/mips/configs/dptechnics-dpt-module_defconfig  | 89 ++++++++++++++++++++++
 arch/mips/dts/ar9331-dptechnics-dpt-module.dts     | 31 ++++++++
 arch/mips/mach-ath79/Kconfig                       |  7 ++
 7 files changed, 157 insertions(+)
 create mode 100644 arch/mips/boards/dptechnics-dpt-module/Makefile
 create mode 100644 arch/mips/boards/dptechnics-dpt-module/board.c
 create mode 100644 arch/mips/boards/dptechnics-dpt-module/include/board/board_pbl_start.h
 create mode 100644 arch/mips/configs/dptechnics-dpt-module_defconfig
 create mode 100644 arch/mips/dts/ar9331-dptechnics-dpt-module.dts

diff --git a/arch/mips/Makefile b/arch/mips/Makefile
index dd5ceea20..b965a9c17 100644
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
@@ -79,6 +79,7 @@ machine-$(CONFIG_MACH_MIPS_AR231X)	:= ar231x
 board-$(CONFIG_BOARD_NETGEAR_WG102)	:= netgear-wg102
 
 machine-$(CONFIG_MACH_MIPS_ATH79)	:= ath79
+board-$(CONFIG_BOARC_DPTECHNICS_DPT_MODULE)	:= dptechnics-dpt-module
 board-$(CONFIG_BOARD_TPLINK_MR3020)	:= tplink-mr3020
 board-$(CONFIG_BOARD_TPLINK_WDR4300)	:= tplink-wdr4300
 board-$(CONFIG_BOARD_BLACK_SWIFT)	:= black-swift
diff --git a/arch/mips/boards/dptechnics-dpt-module/Makefile b/arch/mips/boards/dptechnics-dpt-module/Makefile
new file mode 100644
index 000000000..dcfc2937d
--- /dev/null
+++ b/arch/mips/boards/dptechnics-dpt-module/Makefile
@@ -0,0 +1 @@
+obj-y += board.o
diff --git a/arch/mips/boards/dptechnics-dpt-module/board.c b/arch/mips/boards/dptechnics-dpt-module/board.c
new file mode 100644
index 000000000..7ec7ef8a5
--- /dev/null
+++ b/arch/mips/boards/dptechnics-dpt-module/board.c
@@ -0,0 +1,8 @@
+#include <common.h>
+#include <init.h>
+
+static int dummy_init(void)
+{
+	return 0;
+}
+postcore_initcall(dummy_init);
diff --git a/arch/mips/boards/dptechnics-dpt-module/include/board/board_pbl_start.h b/arch/mips/boards/dptechnics-dpt-module/include/board/board_pbl_start.h
new file mode 100644
index 000000000..9d6b1b86b
--- /dev/null
+++ b/arch/mips/boards/dptechnics-dpt-module/include/board/board_pbl_start.h
@@ -0,0 +1,20 @@
+/*
+ * Copyright (C) 2017 Oleksij Rempel <linux@rempel-privat.de>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2
+ * as published by the Free Software Foundation.
+ */
+
+#include <asm/pbl_macros.h>
+#include <mach/pbl_macros.h>
+#include <asm/pbl_nmon.h>
+
+	.macro	board_pbl_start
+	.set	push
+	.set	noreorder
+
+	ar9331_pbl_generic_start
+
+	.set	pop
+	.endm
diff --git a/arch/mips/configs/dptechnics-dpt-module_defconfig b/arch/mips/configs/dptechnics-dpt-module_defconfig
new file mode 100644
index 000000000..dbad08fe6
--- /dev/null
+++ b/arch/mips/configs/dptechnics-dpt-module_defconfig
@@ -0,0 +1,89 @@
+CONFIG_BUILTIN_DTB=y
+CONFIG_BUILTIN_DTB_NAME="ar9331-dptechnics-dpt-module"
+CONFIG_MACH_MIPS_ATH79=y
+CONFIG_BOARC_QCA_AR9331_GENERIC=y
+CONFIG_PBL_IMAGE=y
+CONFIG_IMAGE_COMPRESSION_XZKERN=y
+CONFIG_MMU=y
+CONFIG_TEXT_BASE=0x82000000
+CONFIG_MALLOC_TLSF=y
+CONFIG_HUSH_FANCY_PROMPT=y
+CONFIG_CMDLINE_EDITING=y
+CONFIG_AUTO_COMPLETE=y
+CONFIG_CONSOLE_RATP=y
+CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y
+CONFIG_RESET_SOURCE=y
+CONFIG_CMD_DMESG=y
+CONFIG_LONGHELP=y
+CONFIG_CMD_IOMEM=y
+CONFIG_CMD_IMD=y
+CONFIG_CMD_MEMINFO=y
+CONFIG_CMD_GO=y
+CONFIG_CMD_LOADB=y
+CONFIG_CMD_LOADY=y
+CONFIG_CMD_RESET=y
+CONFIG_CMD_EXPORT=y
+CONFIG_CMD_DEFAULTENV=y
+CONFIG_CMD_LOADENV=y
+CONFIG_CMD_MAGICVAR=y
+CONFIG_CMD_MAGICVAR_HELP=y
+CONFIG_CMD_SAVEENV=y
+CONFIG_CMD_SHA1SUM=y
+CONFIG_CMD_UNCOMPRESS=y
+CONFIG_CMD_LET=y
+CONFIG_CMD_MSLEEP=y
+CONFIG_CMD_READF=y
+CONFIG_CMD_SLEEP=y
+CONFIG_CMD_DHCP=y
+CONFIG_CMD_HOST=y
+CONFIG_CMD_MIITOOL=y
+CONFIG_CMD_PING=y
+CONFIG_CMD_ECHO_E=y
+CONFIG_CMD_EDIT=y
+CONFIG_CMD_READLINE=y
+CONFIG_CMD_TIMEOUT=y
+CONFIG_CMD_CRC=y
+CONFIG_CMD_MEMTEST=y
+CONFIG_CMD_MM=y
+CONFIG_CMD_CLK=y
+CONFIG_CMD_DETECT=y
+CONFIG_CMD_FLASH=y
+CONFIG_CMD_GPIO=y
+CONFIG_CMD_LED=y
+CONFIG_CMD_POWEROFF=y
+CONFIG_CMD_SPI=y
+CONFIG_CMD_LED_TRIGGER=y
+CONFIG_CMD_WD=y
+CONFIG_CMD_BAREBOX_UPDATE=y
+CONFIG_CMD_OF_NODE=y
+CONFIG_CMD_OF_PROPERTY=y
+CONFIG_CMD_OFTREE=y
+CONFIG_CMD_TIME=y
+CONFIG_NET=y
+CONFIG_NET_NFS=y
+CONFIG_NET_NETCONSOLE=y
+CONFIG_NET_SNTP=y
+CONFIG_OFDEVICE=y
+CONFIG_OF_BAREBOX_DRIVERS=y
+CONFIG_OF_BAREBOX_ENV_IN_FS=y
+CONFIG_DRIVER_SERIAL_AR933X=y
+CONFIG_DRIVER_NET_AG71XX=y
+CONFIG_AR8327N_PHY=y
+CONFIG_AT803X_PHY=y
+CONFIG_MDIO_BITBANG=y
+CONFIG_MDIO_GPIO=y
+CONFIG_DRIVER_SPI_ATH79=y
+CONFIG_MTD=y
+# CONFIG_MTD_OOB_DEVICE is not set
+CONFIG_MTD_M25P80=y
+CONFIG_LED=y
+CONFIG_LED_GPIO=y
+CONFIG_LED_GPIO_OF=y
+CONFIG_LED_TRIGGERS=y
+CONFIG_WATCHDOG=y
+CONFIG_WATCHDOG_AR9344=y
+CONFIG_FS_TFTP=y
+CONFIG_FS_NFS=y
+CONFIG_FS_RATP=y
+CONFIG_DIGEST_SHA224_GENERIC=y
+CONFIG_DIGEST_SHA256_GENERIC=y
diff --git a/arch/mips/dts/ar9331-dptechnics-dpt-module.dts b/arch/mips/dts/ar9331-dptechnics-dpt-module.dts
new file mode 100644
index 000000000..39eb36600
--- /dev/null
+++ b/arch/mips/dts/ar9331-dptechnics-dpt-module.dts
@@ -0,0 +1,31 @@
+#include <mips/qca/ar9331_dpt_module.dts>
+#include "ar9331.dtsi"
+
+/ {
+	aliases {
+		spiflash = &spiflash;
+	};
+
+	chosen {
+		environment@0 {
+			compatible = "barebox,environment";
+			device-path = &spiflash, "partname:barebox-environment";
+		};
+	};
+};
+
+&spiflash {
+	partition@0 {
+		label = "barebox";
+		reg = <0 0x80000>;
+	};
+
+	partition@80000 {
+		label = "barebox-environment";
+		reg = <0x80000 0x10000>;
+	};
+};
+
+&mac0 {
+	status = "okay";
+};
diff --git a/arch/mips/mach-ath79/Kconfig b/arch/mips/mach-ath79/Kconfig
index 9fec00c98..4655ce890 100644
--- a/arch/mips/mach-ath79/Kconfig
+++ b/arch/mips/mach-ath79/Kconfig
@@ -13,6 +13,13 @@ config SOC_QCA_AR9344
 choice
 	prompt "Board type"
 
+config BOARC_DPTECHNICS_DPT_MODULE
+	bool "DPTechnics DPT-Module"
+	select SOC_QCA_AR9331
+	select HAVE_PBL_IMAGE
+	select HAVE_IMAGE_COMPRESSION
+	select HAS_NMON
+
 config BOARD_TPLINK_MR3020
 	bool "TP-LINK MR3020"
 	select SOC_QCA_AR9331
-- 
2.14.1


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v1 4/4] MIPS: add support for DPTechnics DPT-Module v1
  2017-12-09  9:59 ` [PATCH v1 4/4] MIPS: add support for DPTechnics DPT-Module v1 Oleksij Rempel
@ 2017-12-09 16:54   ` Antony Pavlov
  2017-12-11  5:53     ` Oleksij Rempel
  0 siblings, 1 reply; 8+ messages in thread
From: Antony Pavlov @ 2017-12-09 16:54 UTC (permalink / raw)
  To: Oleksij Rempel; +Cc: barebox

On Sat,  9 Dec 2017 10:59:38 +0100
Oleksij Rempel <linux@rempel-privat.de> wrote:

> This product can be found here:
> https://dptechnics.com/en/products/dpt-module-v1.html
> 
> Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
> ---
>  arch/mips/Makefile                                 |  1 +
>  arch/mips/boards/dptechnics-dpt-module/Makefile    |  1 +
>  arch/mips/boards/dptechnics-dpt-module/board.c     |  8 ++
>  .../include/board/board_pbl_start.h                | 20 +++++
>  arch/mips/configs/dptechnics-dpt-module_defconfig  | 89 ++++++++++++++++++++++
>  arch/mips/dts/ar9331-dptechnics-dpt-module.dts     | 31 ++++++++
>  arch/mips/mach-ath79/Kconfig                       |  7 ++
>  7 files changed, 157 insertions(+)
>  create mode 100644 arch/mips/boards/dptechnics-dpt-module/Makefile
>  create mode 100644 arch/mips/boards/dptechnics-dpt-module/board.c
>  create mode 100644 arch/mips/boards/dptechnics-dpt-module/include/board/board_pbl_start.h
>  create mode 100644 arch/mips/configs/dptechnics-dpt-module_defconfig
>  create mode 100644 arch/mips/dts/ar9331-dptechnics-dpt-module.dts
> 
> diff --git a/arch/mips/Makefile b/arch/mips/Makefile
> index dd5ceea20..b965a9c17 100644
> --- a/arch/mips/Makefile
> +++ b/arch/mips/Makefile
> @@ -79,6 +79,7 @@ machine-$(CONFIG_MACH_MIPS_AR231X)	:= ar231x
>  board-$(CONFIG_BOARD_NETGEAR_WG102)	:= netgear-wg102
>  
>  machine-$(CONFIG_MACH_MIPS_ATH79)	:= ath79
> +board-$(CONFIG_BOARC_DPTECHNICS_DPT_MODULE)	:= dptechnics-dpt-module
>  board-$(CONFIG_BOARD_TPLINK_MR3020)	:= tplink-mr3020
>  board-$(CONFIG_BOARD_TPLINK_WDR4300)	:= tplink-wdr4300
>  board-$(CONFIG_BOARD_BLACK_SWIFT)	:= black-swift
> diff --git a/arch/mips/boards/dptechnics-dpt-module/Makefile b/arch/mips/boards/dptechnics-dpt-module/Makefile
> new file mode 100644
> index 000000000..dcfc2937d
> --- /dev/null
> +++ b/arch/mips/boards/dptechnics-dpt-module/Makefile
> @@ -0,0 +1 @@
> +obj-y += board.o
> diff --git a/arch/mips/boards/dptechnics-dpt-module/board.c b/arch/mips/boards/dptechnics-dpt-module/board.c
> new file mode 100644
> index 000000000..7ec7ef8a5
> --- /dev/null
> +++ b/arch/mips/boards/dptechnics-dpt-module/board.c
> @@ -0,0 +1,8 @@
> +#include <common.h>
> +#include <init.h>
> +
> +static int dummy_init(void)
> +{
> +	return 0;
> +}
> +postcore_initcall(dummy_init);


Do we really need this dummy_init()?


> diff --git a/arch/mips/boards/dptechnics-dpt-module/include/board/board_pbl_start.h b/arch/mips/boards/dptechnics-dpt-module/include/board/board_pbl_start.h
> new file mode 100644
> index 000000000..9d6b1b86b
> --- /dev/null
> +++ b/arch/mips/boards/dptechnics-dpt-module/include/board/board_pbl_start.h
> @@ -0,0 +1,20 @@
> +/*
> + * Copyright (C) 2017 Oleksij Rempel <linux@rempel-privat.de>
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License version 2
> + * as published by the Free Software Foundation.
> + */
> +
> +#include <asm/pbl_macros.h>
> +#include <mach/pbl_macros.h>
> +#include <asm/pbl_nmon.h>
> +
> +	.macro	board_pbl_start
> +	.set	push
> +	.set	noreorder
> +
> +	ar9331_pbl_generic_start
> +
> +	.set	pop
> +	.endm
> diff --git a/arch/mips/configs/dptechnics-dpt-module_defconfig b/arch/mips/configs/dptechnics-dpt-module_defconfig
> new file mode 100644
> index 000000000..dbad08fe6
> --- /dev/null
> +++ b/arch/mips/configs/dptechnics-dpt-module_defconfig
> @@ -0,0 +1,89 @@
> +CONFIG_BUILTIN_DTB=y
> +CONFIG_BUILTIN_DTB_NAME="ar9331-dptechnics-dpt-module"
> +CONFIG_MACH_MIPS_ATH79=y
> +CONFIG_BOARC_QCA_AR9331_GENERIC=y
> +CONFIG_PBL_IMAGE=y
> +CONFIG_IMAGE_COMPRESSION_XZKERN=y
> +CONFIG_MMU=y
> +CONFIG_TEXT_BASE=0x82000000
> +CONFIG_MALLOC_TLSF=y
> +CONFIG_HUSH_FANCY_PROMPT=y
> +CONFIG_CMDLINE_EDITING=y
> +CONFIG_AUTO_COMPLETE=y
> +CONFIG_CONSOLE_RATP=y
> +CONFIG_DEFAULT_ENVIRONMENT_GENERIC_NEW=y
> +CONFIG_RESET_SOURCE=y
> +CONFIG_CMD_DMESG=y
> +CONFIG_LONGHELP=y
> +CONFIG_CMD_IOMEM=y
> +CONFIG_CMD_IMD=y
> +CONFIG_CMD_MEMINFO=y
> +CONFIG_CMD_GO=y
> +CONFIG_CMD_LOADB=y
> +CONFIG_CMD_LOADY=y
> +CONFIG_CMD_RESET=y
> +CONFIG_CMD_EXPORT=y
> +CONFIG_CMD_DEFAULTENV=y
> +CONFIG_CMD_LOADENV=y
> +CONFIG_CMD_MAGICVAR=y
> +CONFIG_CMD_MAGICVAR_HELP=y
> +CONFIG_CMD_SAVEENV=y
> +CONFIG_CMD_SHA1SUM=y
> +CONFIG_CMD_UNCOMPRESS=y
> +CONFIG_CMD_LET=y
> +CONFIG_CMD_MSLEEP=y
> +CONFIG_CMD_READF=y
> +CONFIG_CMD_SLEEP=y
> +CONFIG_CMD_DHCP=y
> +CONFIG_CMD_HOST=y
> +CONFIG_CMD_MIITOOL=y
> +CONFIG_CMD_PING=y
> +CONFIG_CMD_ECHO_E=y
> +CONFIG_CMD_EDIT=y
> +CONFIG_CMD_READLINE=y
> +CONFIG_CMD_TIMEOUT=y
> +CONFIG_CMD_CRC=y
> +CONFIG_CMD_MEMTEST=y
> +CONFIG_CMD_MM=y
> +CONFIG_CMD_CLK=y
> +CONFIG_CMD_DETECT=y
> +CONFIG_CMD_FLASH=y
> +CONFIG_CMD_GPIO=y
> +CONFIG_CMD_LED=y
> +CONFIG_CMD_POWEROFF=y
> +CONFIG_CMD_SPI=y
> +CONFIG_CMD_LED_TRIGGER=y
> +CONFIG_CMD_WD=y
> +CONFIG_CMD_BAREBOX_UPDATE=y
> +CONFIG_CMD_OF_NODE=y
> +CONFIG_CMD_OF_PROPERTY=y
> +CONFIG_CMD_OFTREE=y
> +CONFIG_CMD_TIME=y
> +CONFIG_NET=y
> +CONFIG_NET_NFS=y
> +CONFIG_NET_NETCONSOLE=y
> +CONFIG_NET_SNTP=y
> +CONFIG_OFDEVICE=y
> +CONFIG_OF_BAREBOX_DRIVERS=y
> +CONFIG_OF_BAREBOX_ENV_IN_FS=y
> +CONFIG_DRIVER_SERIAL_AR933X=y
> +CONFIG_DRIVER_NET_AG71XX=y
> +CONFIG_AR8327N_PHY=y
> +CONFIG_AT803X_PHY=y
> +CONFIG_MDIO_BITBANG=y
> +CONFIG_MDIO_GPIO=y
> +CONFIG_DRIVER_SPI_ATH79=y
> +CONFIG_MTD=y
> +# CONFIG_MTD_OOB_DEVICE is not set
> +CONFIG_MTD_M25P80=y
> +CONFIG_LED=y
> +CONFIG_LED_GPIO=y
> +CONFIG_LED_GPIO_OF=y
> +CONFIG_LED_TRIGGERS=y
> +CONFIG_WATCHDOG=y
> +CONFIG_WATCHDOG_AR9344=y
> +CONFIG_FS_TFTP=y
> +CONFIG_FS_NFS=y
> +CONFIG_FS_RATP=y
> +CONFIG_DIGEST_SHA224_GENERIC=y
> +CONFIG_DIGEST_SHA256_GENERIC=y
> diff --git a/arch/mips/dts/ar9331-dptechnics-dpt-module.dts b/arch/mips/dts/ar9331-dptechnics-dpt-module.dts
> new file mode 100644
> index 000000000..39eb36600
> --- /dev/null
> +++ b/arch/mips/dts/ar9331-dptechnics-dpt-module.dts
> @@ -0,0 +1,31 @@
> +#include <mips/qca/ar9331_dpt_module.dts>
> +#include "ar9331.dtsi"
> +
> +/ {
> +	aliases {
> +		spiflash = &spiflash;
> +	};
> +
> +	chosen {
> +		environment@0 {
> +			compatible = "barebox,environment";
> +			device-path = &spiflash, "partname:barebox-environment";
> +		};
> +	};
> +};
> +
> +&spiflash {
> +	partition@0 {
> +		label = "barebox";
> +		reg = <0 0x80000>;
> +	};
> +
> +	partition@80000 {
> +		label = "barebox-environment";
> +		reg = <0x80000 0x10000>;
> +	};
> +};
> +
> +&mac0 {
> +	status = "okay";
> +};
> diff --git a/arch/mips/mach-ath79/Kconfig b/arch/mips/mach-ath79/Kconfig
> index 9fec00c98..4655ce890 100644
> --- a/arch/mips/mach-ath79/Kconfig
> +++ b/arch/mips/mach-ath79/Kconfig
> @@ -13,6 +13,13 @@ config SOC_QCA_AR9344
>  choice
>  	prompt "Board type"
>  
> +config BOARC_DPTECHNICS_DPT_MODULE
> +	bool "DPTechnics DPT-Module"
> +	select SOC_QCA_AR9331
> +	select HAVE_PBL_IMAGE
> +	select HAVE_IMAGE_COMPRESSION
> +	select HAS_NMON
> +
>  config BOARD_TPLINK_MR3020
>  	bool "TP-LINK MR3020"
>  	select SOC_QCA_AR9331
> -- 
> 2.14.1
> 
> 
> _______________________________________________
> barebox mailing list
> barebox@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/barebox


-- 
Best regards,
  Antony Pavlov

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v1 4/4] MIPS: add support for DPTechnics DPT-Module v1
  2017-12-09 16:54   ` Antony Pavlov
@ 2017-12-11  5:53     ` Oleksij Rempel
  2017-12-12  6:50       ` Sascha Hauer
  0 siblings, 1 reply; 8+ messages in thread
From: Oleksij Rempel @ 2017-12-11  5:53 UTC (permalink / raw)
  To: Antony Pavlov; +Cc: barebox


[-- Attachment #1.1.1: Type: text/plain, Size: 2661 bytes --]

Am 09.12.2017 um 17:54 schrieb Antony Pavlov:
> On Sat,  9 Dec 2017 10:59:38 +0100
> Oleksij Rempel <linux@rempel-privat.de> wrote:
> 
>> This product can be found here:
>> https://dptechnics.com/en/products/dpt-module-v1.html
>>
>> Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
>> ---
>>  arch/mips/Makefile                                 |  1 +
>>  arch/mips/boards/dptechnics-dpt-module/Makefile    |  1 +
>>  arch/mips/boards/dptechnics-dpt-module/board.c     |  8 ++
>>  .../include/board/board_pbl_start.h                | 20 +++++
>>  arch/mips/configs/dptechnics-dpt-module_defconfig  | 89 ++++++++++++++++++++++
>>  arch/mips/dts/ar9331-dptechnics-dpt-module.dts     | 31 ++++++++
>>  arch/mips/mach-ath79/Kconfig                       |  7 ++
>>  7 files changed, 157 insertions(+)
>>  create mode 100644 arch/mips/boards/dptechnics-dpt-module/Makefile
>>  create mode 100644 arch/mips/boards/dptechnics-dpt-module/board.c
>>  create mode 100644 arch/mips/boards/dptechnics-dpt-module/include/board/board_pbl_start.h
>>  create mode 100644 arch/mips/configs/dptechnics-dpt-module_defconfig
>>  create mode 100644 arch/mips/dts/ar9331-dptechnics-dpt-module.dts
>>
>> diff --git a/arch/mips/Makefile b/arch/mips/Makefile
>> index dd5ceea20..b965a9c17 100644
>> --- a/arch/mips/Makefile
>> +++ b/arch/mips/Makefile
>> @@ -79,6 +79,7 @@ machine-$(CONFIG_MACH_MIPS_AR231X)	:= ar231x
>>  board-$(CONFIG_BOARD_NETGEAR_WG102)	:= netgear-wg102
>>  
>>  machine-$(CONFIG_MACH_MIPS_ATH79)	:= ath79
>> +board-$(CONFIG_BOARC_DPTECHNICS_DPT_MODULE)	:= dptechnics-dpt-module
>>  board-$(CONFIG_BOARD_TPLINK_MR3020)	:= tplink-mr3020
>>  board-$(CONFIG_BOARD_TPLINK_WDR4300)	:= tplink-wdr4300
>>  board-$(CONFIG_BOARD_BLACK_SWIFT)	:= black-swift
>> diff --git a/arch/mips/boards/dptechnics-dpt-module/Makefile b/arch/mips/boards/dptechnics-dpt-module/Makefile
>> new file mode 100644
>> index 000000000..dcfc2937d
>> --- /dev/null
>> +++ b/arch/mips/boards/dptechnics-dpt-module/Makefile
>> @@ -0,0 +1 @@
>> +obj-y += board.o
>> diff --git a/arch/mips/boards/dptechnics-dpt-module/board.c b/arch/mips/boards/dptechnics-dpt-module/board.c
>> new file mode 100644
>> index 000000000..7ec7ef8a5
>> --- /dev/null
>> +++ b/arch/mips/boards/dptechnics-dpt-module/board.c
>> @@ -0,0 +1,8 @@
>> +#include <common.h>
>> +#include <init.h>
>> +
>> +static int dummy_init(void)
>> +{
>> +	return 0;
>> +}
>> +postcore_initcall(dummy_init);
> 
> 
> Do we really need this dummy_init()?

No, but other ways we need to fix the build system. And right now i have
no time for that :(

-- 
Regards,
Oleksij


[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

[-- Attachment #2: Type: text/plain, Size: 149 bytes --]

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v1 4/4] MIPS: add support for DPTechnics DPT-Module v1
  2017-12-11  5:53     ` Oleksij Rempel
@ 2017-12-12  6:50       ` Sascha Hauer
  2017-12-12  7:00         ` Oleksij Rempel
  0 siblings, 1 reply; 8+ messages in thread
From: Sascha Hauer @ 2017-12-12  6:50 UTC (permalink / raw)
  To: Oleksij Rempel; +Cc: barebox

On Mon, Dec 11, 2017 at 06:53:25AM +0100, Oleksij Rempel wrote:
> Am 09.12.2017 um 17:54 schrieb Antony Pavlov:
> > On Sat,  9 Dec 2017 10:59:38 +0100
> > Oleksij Rempel <linux@rempel-privat.de> wrote:
> > 
> >> This product can be found here:
> >> https://dptechnics.com/en/products/dpt-module-v1.html
> >>
> >> Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
> >> ---
> >>  arch/mips/Makefile                                 |  1 +
> >>  arch/mips/boards/dptechnics-dpt-module/Makefile    |  1 +
> >>  arch/mips/boards/dptechnics-dpt-module/board.c     |  8 ++
> >>  .../include/board/board_pbl_start.h                | 20 +++++
> >>  arch/mips/configs/dptechnics-dpt-module_defconfig  | 89 ++++++++++++++++++++++
> >>  arch/mips/dts/ar9331-dptechnics-dpt-module.dts     | 31 ++++++++
> >>  arch/mips/mach-ath79/Kconfig                       |  7 ++
> >>  7 files changed, 157 insertions(+)
> >>  create mode 100644 arch/mips/boards/dptechnics-dpt-module/Makefile
> >>  create mode 100644 arch/mips/boards/dptechnics-dpt-module/board.c
> >>  create mode 100644 arch/mips/boards/dptechnics-dpt-module/include/board/board_pbl_start.h
> >>  create mode 100644 arch/mips/configs/dptechnics-dpt-module_defconfig
> >>  create mode 100644 arch/mips/dts/ar9331-dptechnics-dpt-module.dts
> >>
> >> diff --git a/arch/mips/Makefile b/arch/mips/Makefile
> >> index dd5ceea20..b965a9c17 100644
> >> --- a/arch/mips/Makefile
> >> +++ b/arch/mips/Makefile
> >> @@ -79,6 +79,7 @@ machine-$(CONFIG_MACH_MIPS_AR231X)	:= ar231x
> >>  board-$(CONFIG_BOARD_NETGEAR_WG102)	:= netgear-wg102
> >>  
> >>  machine-$(CONFIG_MACH_MIPS_ATH79)	:= ath79
> >> +board-$(CONFIG_BOARC_DPTECHNICS_DPT_MODULE)	:= dptechnics-dpt-module
> >>  board-$(CONFIG_BOARD_TPLINK_MR3020)	:= tplink-mr3020
> >>  board-$(CONFIG_BOARD_TPLINK_WDR4300)	:= tplink-wdr4300
> >>  board-$(CONFIG_BOARD_BLACK_SWIFT)	:= black-swift
> >> diff --git a/arch/mips/boards/dptechnics-dpt-module/Makefile b/arch/mips/boards/dptechnics-dpt-module/Makefile
> >> new file mode 100644
> >> index 000000000..dcfc2937d
> >> --- /dev/null
> >> +++ b/arch/mips/boards/dptechnics-dpt-module/Makefile
> >> @@ -0,0 +1 @@
> >> +obj-y += board.o
> >> diff --git a/arch/mips/boards/dptechnics-dpt-module/board.c b/arch/mips/boards/dptechnics-dpt-module/board.c
> >> new file mode 100644
> >> index 000000000..7ec7ef8a5
> >> --- /dev/null
> >> +++ b/arch/mips/boards/dptechnics-dpt-module/board.c
> >> @@ -0,0 +1,8 @@
> >> +#include <common.h>
> >> +#include <init.h>
> >> +
> >> +static int dummy_init(void)
> >> +{
> >> +	return 0;
> >> +}
> >> +postcore_initcall(dummy_init);
> > 
> > 
> > Do we really need this dummy_init()?
> 
> No, but other ways we need to fix the build system. And right now i have
> no time for that :(

Are you sure you need the dummy_init()? I just gave it a test and I
indeed needed a C file to get it through the linker, but that C file
can equally well be empty.

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v1 4/4] MIPS: add support for DPTechnics DPT-Module v1
  2017-12-12  6:50       ` Sascha Hauer
@ 2017-12-12  7:00         ` Oleksij Rempel
  0 siblings, 0 replies; 8+ messages in thread
From: Oleksij Rempel @ 2017-12-12  7:00 UTC (permalink / raw)
  To: Sascha Hauer; +Cc: barebox


[-- Attachment #1.1.1: Type: text/plain, Size: 3095 bytes --]

Am 12.12.2017 um 07:50 schrieb Sascha Hauer:
> On Mon, Dec 11, 2017 at 06:53:25AM +0100, Oleksij Rempel wrote:
>> Am 09.12.2017 um 17:54 schrieb Antony Pavlov:
>>> On Sat,  9 Dec 2017 10:59:38 +0100
>>> Oleksij Rempel <linux@rempel-privat.de> wrote:
>>>
>>>> This product can be found here:
>>>> https://dptechnics.com/en/products/dpt-module-v1.html
>>>>
>>>> Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
>>>> ---
>>>>  arch/mips/Makefile                                 |  1 +
>>>>  arch/mips/boards/dptechnics-dpt-module/Makefile    |  1 +
>>>>  arch/mips/boards/dptechnics-dpt-module/board.c     |  8 ++
>>>>  .../include/board/board_pbl_start.h                | 20 +++++
>>>>  arch/mips/configs/dptechnics-dpt-module_defconfig  | 89 ++++++++++++++++++++++
>>>>  arch/mips/dts/ar9331-dptechnics-dpt-module.dts     | 31 ++++++++
>>>>  arch/mips/mach-ath79/Kconfig                       |  7 ++
>>>>  7 files changed, 157 insertions(+)
>>>>  create mode 100644 arch/mips/boards/dptechnics-dpt-module/Makefile
>>>>  create mode 100644 arch/mips/boards/dptechnics-dpt-module/board.c
>>>>  create mode 100644 arch/mips/boards/dptechnics-dpt-module/include/board/board_pbl_start.h
>>>>  create mode 100644 arch/mips/configs/dptechnics-dpt-module_defconfig
>>>>  create mode 100644 arch/mips/dts/ar9331-dptechnics-dpt-module.dts
>>>>
>>>> diff --git a/arch/mips/Makefile b/arch/mips/Makefile
>>>> index dd5ceea20..b965a9c17 100644
>>>> --- a/arch/mips/Makefile
>>>> +++ b/arch/mips/Makefile
>>>> @@ -79,6 +79,7 @@ machine-$(CONFIG_MACH_MIPS_AR231X)	:= ar231x
>>>>  board-$(CONFIG_BOARD_NETGEAR_WG102)	:= netgear-wg102
>>>>  
>>>>  machine-$(CONFIG_MACH_MIPS_ATH79)	:= ath79
>>>> +board-$(CONFIG_BOARC_DPTECHNICS_DPT_MODULE)	:= dptechnics-dpt-module
>>>>  board-$(CONFIG_BOARD_TPLINK_MR3020)	:= tplink-mr3020
>>>>  board-$(CONFIG_BOARD_TPLINK_WDR4300)	:= tplink-wdr4300
>>>>  board-$(CONFIG_BOARD_BLACK_SWIFT)	:= black-swift
>>>> diff --git a/arch/mips/boards/dptechnics-dpt-module/Makefile b/arch/mips/boards/dptechnics-dpt-module/Makefile
>>>> new file mode 100644
>>>> index 000000000..dcfc2937d
>>>> --- /dev/null
>>>> +++ b/arch/mips/boards/dptechnics-dpt-module/Makefile
>>>> @@ -0,0 +1 @@
>>>> +obj-y += board.o
>>>> diff --git a/arch/mips/boards/dptechnics-dpt-module/board.c b/arch/mips/boards/dptechnics-dpt-module/board.c
>>>> new file mode 100644
>>>> index 000000000..7ec7ef8a5
>>>> --- /dev/null
>>>> +++ b/arch/mips/boards/dptechnics-dpt-module/board.c
>>>> @@ -0,0 +1,8 @@
>>>> +#include <common.h>
>>>> +#include <init.h>
>>>> +
>>>> +static int dummy_init(void)
>>>> +{
>>>> +	return 0;
>>>> +}
>>>> +postcore_initcall(dummy_init);
>>>
>>>
>>> Do we really need this dummy_init()?
>>
>> No, but other ways we need to fix the build system. And right now i have
>> no time for that :(
> 
> Are you sure you need the dummy_init()? I just gave it a test and I
> indeed needed a C file to get it through the linker, but that C file
> can equally well be empty.

Ok, i'll try it.

-- 
Regards,
Oleksij


[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

[-- Attachment #2: Type: text/plain, Size: 149 bytes --]

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2017-12-12  7:00 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-12-09  9:59 [PATCH v1 1/4] MIPS: ar9331: add watchdog support Oleksij Rempel
2017-12-09  9:59 ` [PATCH v1 2/4] MIPS: ath79: ar9331: add generic RAM macro Oleksij Rempel
2017-12-09  9:59 ` [PATCH v1 3/4] MIPS: ath79: ar9331: add ar9331_pbl_generic_start macro Oleksij Rempel
2017-12-09  9:59 ` [PATCH v1 4/4] MIPS: add support for DPTechnics DPT-Module v1 Oleksij Rempel
2017-12-09 16:54   ` Antony Pavlov
2017-12-11  5:53     ` Oleksij Rempel
2017-12-12  6:50       ` Sascha Hauer
2017-12-12  7:00         ` Oleksij Rempel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox