summaryrefslogtreecommitdiff
path: root/sys/dev/ic/bwfmreg.h
diff options
context:
space:
mode:
authorPatrick Wildt <patrick@cvs.openbsd.org>2020-05-15 14:09:15 +0000
committerPatrick Wildt <patrick@cvs.openbsd.org>2020-05-15 14:09:15 +0000
commit4784011b1e948f83361f2ad8d5a5eac50ecb32a5 (patch)
tree22a2a8ed760ed8d719ab13eac907f70e54784313 /sys/dev/ic/bwfmreg.h
parent1d4dcc75c6c88f9d2b6578ff786009da0467bf42 (diff)
Some newer bwfm(4) chips from Cypress hold their regulatory
constraints in a separate blob, instead of in the firmware. This .clm_blob needs to be loaded as well.
Diffstat (limited to 'sys/dev/ic/bwfmreg.h')
-rw-r--r--sys/dev/ic/bwfmreg.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/sys/dev/ic/bwfmreg.h b/sys/dev/ic/bwfmreg.h
index 0824ad1fd0b..04fcd752b93 100644
--- a/sys/dev/ic/bwfmreg.h
+++ b/sys/dev/ic/bwfmreg.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: bwfmreg.h,v 1.18 2019/11/09 20:53:55 patrick Exp $ */
+/* $OpenBSD: bwfmreg.h,v 1.19 2020/05/15 14:09:14 patrick Exp $ */
/*
* Copyright (c) 2010-2016 Broadcom Corporation
* Copyright (c) 2016,2017 Patrick Wildt <patrick@blueri.se>
@@ -752,3 +752,17 @@ struct bwfm_event {
struct bwfm_ethhdr hdr;
struct bwfm_event_msg msg;
} __packed;
+
+struct bwfm_dload_data {
+ uint16_t flag;
+#define BWFM_DLOAD_FLAG_BEGIN (1 << 1)
+#define BWFM_DLOAD_FLAG_END (1 << 2)
+#define BWFM_DLOAD_FLAG_HANDLER_VER_1 (1 << 12)
+#define BWFM_DLOAD_FLAG_HANDLER_VER_MASK (0xf << 12)
+ uint16_t type;
+#define BWFM_DLOAD_TYPE_CLM 2
+ uint32_t len;
+#define BWFM_DLOAD_MAX_LEN 1400
+ uint32_t crc;
+ uint8_t data[];
+} __packed;