summaryrefslogtreecommitdiffstats
path: root/arch/mips/boards/tplink-mr3020/lowlevel.S
diff options
context:
space:
mode:
Diffstat (limited to 'arch/mips/boards/tplink-mr3020/lowlevel.S')
-rw-r--r--arch/mips/boards/tplink-mr3020/lowlevel.S58
1 files changed, 58 insertions, 0 deletions
diff --git a/arch/mips/boards/tplink-mr3020/lowlevel.S b/arch/mips/boards/tplink-mr3020/lowlevel.S
new file mode 100644
index 0000000000..1efcbaa69a
--- /dev/null
+++ b/arch/mips/boards/tplink-mr3020/lowlevel.S
@@ -0,0 +1,58 @@
+/*
+ * Copyright (C) 2013, 2015 Antony Pavlov <antonynpavlov@gmail.com>
+ * Copyright (C) 2013 Oleksij Rempel <linux@rempel-privat.de>
+ *
+ * This file is part of barebox.
+ * See file CREDITS for list of people who contributed to this project.
+ *
+ * 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.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ */
+
+#define BOARD_PBL_START start_tplink_mr3020
+
+#include <mach/debug_ll.h>
+#include <asm/pbl_macros.h>
+#include <asm/asm.h>
+#include <mach/pbl_macros.h>
+#include <asm/pbl_nmon.h>
+
+ENTRY_FUNCTION(BOARD_PBL_START)
+
+ 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_ddr1_config
+
+ /* Initialize caches... */
+ mips_cache_reset
+
+ /* ... and enable them */
+ dcache_enable
+
+skip_pll_ram_config:
+ pbl_ar9331_uart_enable
+ debug_ll_ath79_init
+
+ /*
+ * It is amazing but we have to enable MDIO on GPIO
+ * to use GPIO26 for the "WPS" LED and GPIO27 for the "3G" LED.
+ */
+ pbl_ar9331_mdio_gpio_enable
+
+ENTRY_FUNCTION_END(BOARD_PBL_START, tplink_mr3020)