X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=carlfw%2Fsrc%2Ffw.c;h=85a03fed99234b4275e7c661fc14148c97c80829;hb=refs%2Fheads%2Fradar;hp=b621813c1e1be339c4ee275dc652bd39e083ddc6;hpb=35cac8dcfa9d01fff0c929f0e2b9cc38fc919589;p=carl9170fw.git diff --git a/carlfw/src/fw.c b/carlfw/src/fw.c index b621813..85a03fe 100644 --- a/carlfw/src/fw.c +++ b/carlfw/src/fw.c @@ -16,11 +16,11 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + * with this program; If not, see . */ #include "carl9170.h" #include "fwdsc.h" +#include "pattern_generator.h" #define FILL(small, big, more...) \ .small = { \ @@ -31,31 +31,31 @@ more \ } -const struct carl9170_firmware_descriptor __section(fwdsc) carl9170fw_desc = { +const struct carl9170_firmware_descriptor __in_section(fwdsc) __visible carl9170fw_desc = { FILL(otus, OTUS, .feature_set = cpu_to_le32(BIT(CARL9170FW_DUMMY_FEATURE) | BIT(CARL9170FW_USB_RESP_EP2) | BIT(CARL9170FW_HANDLE_BACK_REQ) | BIT(CARL9170FW_RX_FILTER) | -#ifdef CONFIG_CARL9170FW_USB_INIT_FIRMWARE + BIT(CARL9170FW_HW_COUNTERS) | + BIT(CARL9170FW_RX_BA_FILTER) | BIT(CARL9170FW_USB_INIT_FIRMWARE) | -# ifdef CONFIG_CARL9170FW_USB_UP_STREAM + BIT(CARL9170FW_HAS_WREGB_CMD) | +#ifdef CONFIG_CARL9170FW_USB_UP_STREAM BIT(CARL9170FW_USB_UP_STREAM) | -# endif /* CONFIG_CARL9170FW_USB_UP_STREAM */ -# ifdef CONFIG_CARL9170FW_USB_DOWN_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 */ +#endif /* CONFIG_CARL9170FW_USB_DOWN_STREAM */ #ifdef CONFIG_CARL9170FW_RADIO_FUNCTIONS BIT(CARL9170FW_COMMAND_PHY) | BIT(CARL9170FW_PSM) | + BIT(CARL9170FW_FIXED_5GHZ_PSM) | #endif /* CONFIG_CARL9170FW_RADIO_FUNCTIONS */ #ifdef CONFIG_CARL9170FW_SECURITY_ENGINE BIT(CARL9170FW_COMMAND_CAM) | #endif /* CONFIG_CARL9170FW_SECURITY_ENGINE */ -#ifdef CONFIG_CARL9170FW_CAB_QUEUE BIT(CARL9170FW_WLANTX_CAB) | -#endif /* CONFIG_CARL9170FW_CAB_QUEUE */ #ifdef CONFIG_CARL9170FW_UNUSABLE BIT(CARL9170FW_UNUSABLE) | #endif /* CONFIG_CARL9170FW_UNUSABLE */ @@ -65,6 +65,9 @@ const struct carl9170_firmware_descriptor __section(fwdsc) carl9170fw_desc = { #ifdef CONFIG_CARL9170FW_WOL BIT(CARL9170FW_WOL) | #endif /* CONFIG_CARL9170FW_WOL */ +#if defined(CONFIG_CARL9170FW_PATTERN_GENERATOR) + BIT(CARL9170FW_PATTERN_GENERATOR) | +#endif /* CONFIG_CARL9170FW_PATTERN_GENERATOR */ (0)), .miniboot_size = cpu_to_le16(0), @@ -90,7 +93,6 @@ const struct carl9170_firmware_descriptor __section(fwdsc) carl9170fw_desc = { ), #endif /* CONFIG_CARL9170FW_WOL */ - FILL(motd, MOTD, .fw_year_month_day = cpu_to_le32( CARL9170FW_SET_DAY(CARL9170FW_VERSION_DAY) + @@ -99,11 +101,19 @@ const struct carl9170_firmware_descriptor __section(fwdsc) carl9170fw_desc = { .desc = "Community AR9170 Linux", .release = CARL9170FW_VERSION_GIT), +#if defined(CONFIG_CARL9170FW_PATTERN_GENERATOR) + FILL(pattern, PATTERN, + .soft_pattern = cpu_to_le32(&fw.wlan.soft_pattern), + .num_patterns = __CARL9170FW_NUM_PATTERNS, + .patterns = { /* filled by the fwprepare tool */ }, + ), +#endif /* CONFIG_CARL9170FW_RADAR */ + FILL(dbg, DBG, .bogoclock_addr = cpu_to_le32(0), .counter_addr = cpu_to_le32(&fw.counter), - .rx_total_addr = cpu_to_le32(&fw.wlan.rx_total), - .rx_overrun_addr = cpu_to_le32(&fw.wlan.rx_overruns), + .rx_total_addr = cpu_to_le32(0), + .rx_overrun_addr = cpu_to_le32(0), .rx_filter = cpu_to_le32(&fw.wlan.rx_filter), ),