projects
/
open-ath9k-htc-firmware.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge pull request #51 from chunyeow/master
[open-ath9k-htc-firmware.git]
/
target_firmware
/
magpie_fw_dev
/
target
/
init
/
init.c
diff --git
a/target_firmware/magpie_fw_dev/target/init/init.c
b/target_firmware/magpie_fw_dev/target/init/init.c
index b32661e96df22995d79a8ec6d4caf6d7abed9c33..3554656a7616b53ac829f9f03f90906d631a9676 100755
(executable)
--- a/
target_firmware/magpie_fw_dev/target/init/init.c
+++ b/
target_firmware/magpie_fw_dev/target/init/init.c
@@
-35,10
+35,10
@@
#if defined(_RAM_)
#include "athos_api.h"
#if defined(_RAM_)
#include "athos_api.h"
-
+#include "usb_defs.h"
+
#if defined(PROJECT_MAGPIE)
#include "regdump.h"
#if defined(PROJECT_MAGPIE)
#include "regdump.h"
-#include "usb_defs.h"
extern uint32_t *init_htc_handle;
uint8_t htc_complete_setup = 0;
void reset_EP4_FIFO(void);
extern uint32_t *init_htc_handle;
uint8_t htc_complete_setup = 0;
void reset_EP4_FIFO(void);
@@
-60,7
+60,7
@@
uint32_t idle_cnt = 0;
#if defined(PROJECT_K2)
// save the ROM printf function point
#if defined(PROJECT_K2)
// save the ROM printf function point
-
uint32_t save_cmnos_printf
;
+
int (* save_cmnos_printf)(const char * fmt, ...)
;
#endif
#define ATH_DATE_STRING __DATE__" "__TIME__
#endif
#define ATH_DATE_STRING __DATE__" "__TIME__
@@
-145,12
+145,12
@@
void exception_reset(struct register_dump_s *dump)
HAL_WORD_REG_WRITE(MAGPIE_REG_AHB_ARB_ADDR,
(HAL_WORD_REG_READ(MAGPIE_REG_AHB_ARB_ADDR)|BIT1));
HAL_WORD_REG_WRITE(MAGPIE_REG_AHB_ARB_ADDR,
(HAL_WORD_REG_READ(MAGPIE_REG_AHB_ARB_ADDR)|BIT1));
-
HAL_WORD_REG_WRITE((USB_CTRL_BASE_ADDRESS+0x118)
, 0x0);
+
USB_WORD_REG_WRITE(ZM_SOC_USB_DMA_RESET_OFFSET
, 0x0);
HAL_WORD_REG_WRITE(0x50010, HAL_WORD_REG_READ(0x50010)|BIT4);
A_DELAY_USECS(5);
HAL_WORD_REG_WRITE(0x50010, HAL_WORD_REG_READ(0x50010)&~BIT4);
A_DELAY_USECS(5);
HAL_WORD_REG_WRITE(0x50010, HAL_WORD_REG_READ(0x50010)|BIT4);
A_DELAY_USECS(5);
HAL_WORD_REG_WRITE(0x50010, HAL_WORD_REG_READ(0x50010)&~BIT4);
A_DELAY_USECS(5);
-
HAL_WORD_REG_WRITE((USB_CTRL_BASE_ADDRESS+0x118), 0x1
);
+
USB_WORD_REG_WRITE(ZM_SOC_USB_DMA_RESET_OFFSET, BIT0
);
// set clock to bypass mode - 40Mhz from XTAL
HAL_WORD_REG_WRITE(MAGPIE_REG_CPU_PLL_BYPASS_ADDR, (BIT0|BIT4));
// set clock to bypass mode - 40Mhz from XTAL
HAL_WORD_REG_WRITE(MAGPIE_REG_CPU_PLL_BYPASS_ADDR, (BIT0|BIT4));
@@
-166,9
+166,12
@@
void exception_reset(struct register_dump_s *dump)
MAGPIE_REG_USB_RX1_SWAP_DATA = 0x1;
MAGPIE_REG_USB_RX2_SWAP_DATA = 0x1;
MAGPIE_REG_USB_RX1_SWAP_DATA = 0x1;
MAGPIE_REG_USB_RX2_SWAP_DATA = 0x1;
- A_PRINTF("Jump to BOOT\n");
-
- // reboot.....
+ A_PRINTF("Cold reboot initiated.");
+#if defined(PROJECT_MAGPIE)
+ HAL_WORD_REG_WRITE(WATCH_DOG_MAGIC_PATTERN_ADDR, 0);
+#elif defined(PROJECT_K2)
+ HAL_WORD_REG_WRITE(MAGPIE_REG_RST_STATUS_ADDR, 0);
+#endif /* #if defined(PROJECT_MAGPIE) */
A_USB_JUMP_BOOT();
}
A_USB_JUMP_BOOT();
}
@@
-379,17
+382,9
@@
void wlan_task(void)
A_TASKLET_RUN();
A_TIMER_RUN();
A_TASKLET_RUN();
A_TIMER_RUN();
- /* Low priority tasks */
- if ((loop_low & 0xf) == 0) {
- }
-
/* Very low priority tasks */
/* Very low priority tasks */
- if ((loop_low & 0xfff) == 0x7) {
- if ((loop_low & 0x1000) == 0) {
- A_DBG_TASK();
- } else {
- }
- }
+ if ((loop_low & 0x1fff) == 0x7)
+ A_DBG_TASK();
idle_task();
}
idle_task();
}