carl9170 firmware: integrate firmware descriptors
[carl9170fw.git] / carlfw / src / fw.c
index 7c3310627a8b2ea80e2b71a5f0d9639613fb397b..fe59db56c6a148c701ee842164560f63b62e1c22 100644 (file)
 
 const struct carl9170_firmware_descriptor __section(fwdsc) carl9170fw_desc = {
        FILL(otus, OTUS,
-            .fw_feature_set = cpu_to_le32(BIT(CARL9170FW_DUMMY_FEATURE) |
+            .feature_set = cpu_to_le32(BIT(CARL9170FW_DUMMY_FEATURE) |
+                                       BIT(CARL9170FW_USB_RESP_EP2) |
+#ifdef CONFIG_CARL9170FW_USB_INIT_FIRMWARE
+                                       BIT(CARL9170FW_USB_INIT_FIRMWARE) |
+# ifdef CONFIG_CARL9170FW_USB_UP_STREAM
+                                       BIT(CARL9170FW_USB_UP_STREAM) |
+# endif /* CONFIG_CARL9170FW_USB_UP_STREAM */
+# ifdef CONFIG_CARL9170FW_USB_DOWN_STREAM
+                                       BIT(CARL9170FW_USB_DOWN_STREAM) |
+# endif /* CONFIG_CARL9170FW_USB_DOWN_STREAM */
+#endif /* CONFIG_CARL9170FW_USB_INIT_FIRMWARE */
+#ifdef CONFIG_CARL9170FW_USB_WATCHDOG
+                                       BIT(CARL9170FW_USB_WATCHDOG) |
+#endif /* CONFIG_CARL9170FW_USB_WATCHDOG */
 #ifdef CONFIG_CARL9170FW_RADIO_FUNCTIONS
-                                          BIT(CARL9170FW_COMMAND_PHY) |
+                                       BIT(CARL9170FW_COMMAND_PHY) |
 #endif /* CONFIG_CARL9170FW_RADIO_FUNCTIONS */
 #ifdef CONFIG_CARL9170FW_SECURITY_ENGINE
-                                          BIT(CARL9170FW_COMMAND_CAM) |
+                                       BIT(CARL9170FW_COMMAND_CAM) |
 #endif /* CONFIG_CARL9170FW_SECURITY_ENGINE */
 #ifdef CONFIG_CARL9170FW_CAB_QUEUE
-                                          BIT(CARL9170FW_WLANTX_CAB) |
+                                       BIT(CARL9170FW_WLANTX_CAB) |
 #endif /* CONFIG_CARL9170FW_CAB_QUEUE */
 #ifdef CONFIG_CARL9170FW_HANDLE_BACK_REQ
-                                          BIT(CARL9170FW_HANDLE_BACK_REQ) |
+                                       BIT(CARL9170FW_HANDLE_BACK_REQ) |
 #endif /* CONFIG_CARL9170FW_HANDLE_BACK_REQ */
 #ifdef CONFIG_CARL9170FW_UNUSABLE
-                                          BIT(CARL9170FW_UNUSABLE) |
+                                       BIT(CARL9170FW_UNUSABLE) |
 #endif /* CONFIG_CARL9170FW_UNUSABLE */
 #ifdef CONFIG_CARL9170FW_GPIO_INTERRUPT
-                                          BIT(CARL9170FW_GPIO_INTERRUPT) |
+                                       BIT(CARL9170FW_GPIO_INTERRUPT) |
 #endif /* CONFIG_CARL9170FW_GPIO_INTERRUPT */
 #ifdef CONFIG_CARL9170FW_PSM
-                                          BIT(CARL9170FW_PSM) |
+                                       BIT(CARL9170FW_PSM) |
 #endif
                                           (0)),
-            .bcn_addr = (__le32) cpu_to_le32(&dma_mem.reserved.bcn),
-            .bcn_len = (__le16) cpu_to_le16(sizeof(dma_mem.reserved.bcn)),
-            .vif_num = CARL9170_INTF_NUM,
-            .api_ver = CONFIG_CARL9170FW_RELEASE_VERSION,
-       ),
-
-       FILL(usb, USB,
-            .usb_feature_set = cpu_to_le32(BIT(CARL9170FW_USB_DUMMY_FEATURE) |
-                                           BIT(CARL9170FW_USB_RESP_EP2) |
-#ifdef CONFIG_CARL9170FW_USB_INIT_FIRMWARE
-                                           BIT(CARL9170FW_USB_INIT_FIRMWARE) |
-# ifdef CONFIG_CARL9170FW_USB_UP_STREAM
-                                           BIT(CARL9170FW_USB_UP_STREAM) |
-# endif /* CONFIG_CARL9170FW_USB_UP_STREAM */
-# ifdef CONFIG_CARL9170FW_USB_DOWN_STREAM
-                                           BIT(CARL9170FW_USB_DOWN_STREAM) |
-# endif /* CONFIG_CARL9170FW_USB_DOWN_STREAM */
-#endif /* CONFIG_CARL9170FW_USB_INIT_FIRMWARE */
-#ifdef CONFIG_CARL9170FW_USB_WATCHDOG
-                                           BIT(CARL9170FW_USB_WATCHDOG) |
-#endif /* CONFIG_CARL9170FW_USB_WATCHDOG */
-                                           (0)),
 
             .miniboot_size = cpu_to_le16(0),
             .tx_descs = AR9170_TX_BLOCK_NUMBER,
@@ -85,6 +76,10 @@ const struct carl9170_firmware_descriptor __section(fwdsc) carl9170fw_desc = {
             .rx_max_frame_len = cpu_to_le16(CONFIG_CARL9170FW_RX_FRAME_LEN),
             .tx_frag_len = cpu_to_le16(AR9170_BLOCK_SIZE),
             .fw_address = cpu_to_le32(AR9170_PRAM_OFFSET),
+            .bcn_addr = (__le32) cpu_to_le32(&dma_mem.reserved.bcn),
+            .bcn_len = (__le16) cpu_to_le16(sizeof(dma_mem.reserved.bcn)),
+            .vif_num = CARL9170_INTF_NUM,
+            .api_ver = CONFIG_CARL9170FW_RELEASE_VERSION,
        ),
 
        FILL(motd, MOTD,