hif/usb_api: remove dup code - _fw_usbfifo_recv_command
authorOleksij Rempel <linux@rempel-privat.de>
Mon, 30 Sep 2013 10:05:31 +0000 (12:05 +0200)
committerOleksij Rempel <linux@rempel-privat.de>
Mon, 30 Sep 2013 10:05:31 +0000 (12:05 +0200)
and _fw_usbfifo_init

Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
target_firmware/magpie_fw_dev/target/hif/k2_fw_usb_api.c
target_firmware/magpie_fw_dev/target/hif/usb_api_main_patch.c
target_firmware/magpie_fw_dev/target/rompatch/usb_api_patch.c

index 395aaa9f18a226dab247fd592e6528a249e54cf6..bc6948d405ff52a9cf252a9d417b27bc5f8146fb 100755 (executable)
@@ -44,7 +44,6 @@
 
 #include "sys_cfg.h"
 
-typedef void (* USBFIFO_recv_command)(VBUF *cmd);
 void _fw_usb_suspend_reboot();
 
 extern Action      eUsbCxFinishAction;
@@ -52,8 +51,6 @@ extern CommandType eUsbCxCommand;
 extern BOOLEAN     UsbChirpFinish;
 extern USB_FIFO_CONFIG usbFifoConf;
 
-USBFIFO_recv_command m_origUsbfifoRecvCmd = NULL;
-
 #if SYSTEM_MODULE_USB
 #define vUsb_ep0end(void)                                   \
 {                                                           \
@@ -76,30 +73,6 @@ USBFIFO_recv_command m_origUsbfifoRecvCmd = NULL;
 #define vUsb_resm() USB_BYTE_REG_WRITE(ZM_INTR_SOURCE_7_OFFSET,     \
                         (USB_BYTE_REG_READ(ZM_INTR_SOURCE_7_OFFSET)&~BIT3))
 
-void _fw_usbfifo_recv_command(VBUF *buf)
-{
-    A_UINT8 *cmd_data;
-    A_UINT32 tmp;
-
-    cmd_data = (A_UINT8 *)(buf->desc_list->buf_addr + buf->desc_list->data_offset);
-    tmp = *((A_UINT32 *)cmd_data);
-    if ( tmp == 0xFFFFFFFF ) {
-        _fw_usb_suspend_reboot();
-    } else {
-        m_origUsbfifoRecvCmd(buf);
-    }
-}
-
-void _fw_usbfifo_init(USB_FIFO_CONFIG *pConfig)
-{
-    m_origUsbfifoRecvCmd = pConfig->recv_command;
-
-    usbFifoConf.get_command_buf = pConfig->get_command_buf;
-    usbFifoConf.recv_command    = _fw_usbfifo_recv_command;
-    usbFifoConf.get_event_buf   = pConfig->get_event_buf;
-    usbFifoConf.send_event_done = pConfig->send_event_done;
-}
-
 #define CHECK_SOF_LOOP_CNT    50
 
 void _fw_usb_suspend_reboot()
index 1ff18c22a0654b5a726227ce1033613e5b8ddcd8..06e245147f5657969ba8e83b6a80bd8dbe942129 100644 (file)
@@ -1,3 +1,4 @@
+/* shared patches for k2 and magpie */
 
 #include "usb_defs.h"
 #include "usb_type.h"
 
 extern USB_FIFO_CONFIG usbFifoConf;
 extern Action eUsbCxFinishAction;
+extern void _fw_usb_suspend_reboot();
+
+typedef void (* USBFIFO_recv_command)(VBUF *cmd);
+USBFIFO_recv_command m_origUsbfifoRecvCmd = NULL;
+
+void _fw_usbfifo_recv_command(VBUF *buf)
+{
+       uint8_t *cmd_data;
+       uint32_t tmp;
+
+       cmd_data = (uint8_t *)(buf->desc_list->buf_addr +
+                               buf->desc_list->data_offset);
+       tmp = *((uint32_t *)cmd_data);
+       if (tmp == 0xFFFFFFFF)
+               _fw_usb_suspend_reboot();
+       else
+               m_origUsbfifoRecvCmd(buf);
+}
+
+void _fw_usbfifo_init(USB_FIFO_CONFIG *pConfig)
+{
+       m_origUsbfifoRecvCmd = pConfig->recv_command;
+
+       usbFifoConf.get_command_buf = pConfig->get_command_buf;
+       usbFifoConf.recv_command    = _fw_usbfifo_recv_command;
+       usbFifoConf.get_event_buf   = pConfig->get_event_buf;
+       usbFifoConf.send_event_done = pConfig->send_event_done;
+}
 
 void cold_reboot(void)
 {
index 5fb474c6bfb510c3d989e64603c2342353b3d66a..52c692e3074bd0d834ccd5834c12a7bbcd8b8c69 100755 (executable)
@@ -46,8 +46,6 @@
 #define measure_time 0
 #define measure_time_pll 10000000
 
-typedef void (* USBFIFO_recv_command)(VBUF *cmd);
-
 extern Action eUsbCxFinishAction;
 extern CommandType eUsbCxCommand;
 extern BOOLEAN UsbChirpFinish;
@@ -55,8 +53,6 @@ extern USB_FIFO_CONFIG usbFifoConf;
 extern uint16_t *pu8DescriptorEX;
 extern uint16_t u16TxRxCounter;
 
-USBFIFO_recv_command m_origUsbfifoRecvCmd = NULL;
-
 void zfTurnOffPower_patch(void);
 
 static void _fw_reset_dma_fifo();
@@ -67,55 +63,36 @@ static void _fw_power_off();
 BOOLEAN bEepromExist = TRUE;
 BOOLEAN bJumptoFlash = FALSE;
 
-void _fw_usbfifo_recv_command(VBUF *buf)
+void _fw_usb_suspend_reboot()
 {
-       A_UINT8 *cmd_data;
-       A_UINT32 tmp;
-
-       cmd_data = (A_UINT8 *)(buf->desc_list->buf_addr + buf->desc_list->data_offset);
-       tmp = *((A_UINT32 *)cmd_data);
-       if ( tmp == 0xFFFFFFFF ) {      
-               // reset usb/wlan dma
-               _fw_reset_dma_fifo();
-
-               // restore gpio setting and usb/wlan dma state
-               _fw_restore_dma_fifo();
+       /* reset usb/wlan dma */
+       _fw_reset_dma_fifo();
 
-               // set clock to bypass mode - 40Mhz from XTAL 
-               HAL_WORD_REG_WRITE(MAGPIE_REG_CPU_PLL_BYPASS_ADDR, (BIT0|BIT4));
+       /* restore gpio setting and usb/wlan dma state */
+       _fw_restore_dma_fifo();
 
-               A_DELAY_USECS(100); // wait for stable
+       /* set clock to bypass mode - 40Mhz from XTAL */
+       HAL_WORD_REG_WRITE(MAGPIE_REG_CPU_PLL_BYPASS_ADDR, (BIT0|BIT4));
 
-               HAL_WORD_REG_WRITE(MAGPIE_REG_CPU_PLL_ADDR, (BIT16));
+       A_DELAY_USECS(100); /* wait for stable */
 
-               A_DELAY_USECS(100); // wait for stable
-               A_UART_HWINIT((40*1000*1000), 19200);
+       HAL_WORD_REG_WRITE(MAGPIE_REG_CPU_PLL_ADDR, (BIT16));
 
-               A_CLOCK_INIT(40);
+       A_DELAY_USECS(100); /* wait for stable */
+       A_UART_HWINIT((40*1000*1000), 19200);
 
-               if (!bEepromExist) { //jump to flash boot (eeprom data in flash)
-                       bJumptoFlash = TRUE;
-                       A_PRINTF("Jump to Flash BOOT\n");
-                       app_start();
-               }else{
-                       A_PRINTF("receive the suspend command...\n");
-                       // reboot.....
-                       A_USB_JUMP_BOOT();              
-               }
+       A_CLOCK_INIT(40);
 
+       if (!bEepromExist) { /* jump to flash boot (eeprom data in flash) */
+               bJumptoFlash = TRUE;
+               A_PRINTF("Jump to Flash BOOT\n");
+               app_start();
        } else {
-               m_origUsbfifoRecvCmd(buf);
+               A_PRINTF("receive the suspend command...\n");
+               /* reboot..... */
+               A_USB_JUMP_BOOT();
        }
-}
 
-void _fw_usbfifo_init(USB_FIFO_CONFIG *pConfig)
-{
-       m_origUsbfifoRecvCmd = pConfig->recv_command;
-
-       usbFifoConf.get_command_buf = pConfig->get_command_buf;
-       usbFifoConf.recv_command    = _fw_usbfifo_recv_command;
-       usbFifoConf.get_event_buf   = pConfig->get_event_buf;
-       usbFifoConf.send_event_done = pConfig->send_event_done;
 }
 
 #define PCI_RC_RESET_BIT                            BIT6
@@ -123,7 +100,6 @@ void _fw_usbfifo_init(USB_FIFO_CONFIG *pConfig)
 #define PCI_RC_PLL_RESET_BIT                        BIT8
 #define PCI_RC_PHY_SHIFT_RESET_BIT                  BIT10
 
-
 /*
  * -- urn_off_merlin --
  * . values suggested from Lalit