Skip to content

Commit eba2980

Browse files
csr: Add some PSKEYs for CSR8811 on lc823450-xgevk
Signed-off-by: Masayuki Ishikawa <[email protected]>
1 parent 4ee0d1a commit eba2980

File tree

2 files changed

+71
-1
lines changed

2 files changed

+71
-1
lines changed

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ CFLAGS += -I${BTSTACK_ROOT}/3rd-party/tinydir
5858
CFLAGS += -I${BTSTACK_ROOT}/platform/posix
5959
CFLAGS += -I${BTSTACK_ROOT}/platform/embedded
6060
CFLAGS += -I..
61-
CFLAGS += -DNUTTX -DCSR_ONLY
61+
CFLAGS += -DNUTTX -DCSR_ONLY -DCSR8811_PSKEYS
6262

6363
ASRCS =
6464

chipset/csr/btstack_chipset_csr.c

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,13 @@
4444
* SCO over HCI doesn't work over H4 connection and BTM805 module from Microchip Bluetooth Audio Developer Kit (CSR8811)
4545
*/
4646

47+
/*
48+
* Copyright 2018 Sony Video & Sound Products Inc.
49+
*
50+
* Added some PSKEYs for CSR8811 on lc823450-xgevk
51+
*
52+
*/
53+
4754
#include "btstack_chipset_csr.h"
4855

4956
#include <stddef.h> /* NULL */
@@ -70,9 +77,31 @@ static const uint8_t init_script[] = {
7077
// 0x01fe: Set ANA_Freq to 26MHz
7178
0x00, 0xFC, 0x13, 0xc2, 0x02, 0x00, 0x09, 0x00, 0x01, 0x00, 0x03, 0x70, 0x00, 0x00, 0xfe, 0x01, 0x01, 0x00, 0x08, 0x00, 0x90, 0x65,
7279

80+
#ifdef CSR8811_PSKEYS
81+
// default tx power
82+
0x00, 0xfc, 0x13, 0xc2, 0x02, 0x00, 0x09, 0x00, 0x01, 0x00, 0x03, 0x70, 0x00, 0x00, 0x21, 0x00, 0x01, 0x00, 0x08, 0x00, 0x14, 0x00,
83+
84+
// local supported features
85+
0x00, 0xfc, 0x19, 0xc2, 0x02, 0x00, 0x0c, 0x00, 0x05, 0x00, 0x03, 0x70, 0x00, 0x00, 0xef, 0x00, 0x04, 0x00, 0x08, 0x00, 0xff, 0xff, 0x8f, 0xfe, 0x9b, 0xff, 0x59, 0x87,
86+
87+
// local supported commands
88+
0x00, 0xfc, 0x2f, 0xc2, 0x02, 0x00, 0x17, 0x00, 0x06, 0x00, 0x03, 0x70, 0x00, 0x00, 0x06, 0x01, 0x0f, 0x00, 0x08, 0x00, 0xff, 0xff, 0xff, 0x03, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0x0f, 0xe8, 0xfe, 0x3f, 0xf7, 0x83, 0xff, 0x1c, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
89+
#endif
90+
7391
// 0x00f2: Set HCI_NOP_DISABLE
7492
0x00, 0xFC, 0x13, 0xc2, 0x02, 0x00, 0x09, 0x00, 0x01, 0x00, 0x03, 0x70, 0x00, 0x00, 0xf2, 0x00, 0x01, 0x00, 0x08, 0x00, 0x01, 0x00,
7593

94+
#ifdef CSR8811_PSKEYS
95+
// MAX_SCOS=0 (000e)
96+
0x00, 0xfc, 0x13, 0xc2, 0x02, 0x00, 0x09, 0x00, 0x01, 0x00, 0x03, 0x70, 0x00, 0x00, 0x0e, 0x00, 0x01, 0x00, 0x08, 0x00, 0x00, 0x00,
97+
98+
// MAX_ACL_PKT_LEN
99+
0x00, 0xfc, 0x13, 0xc2, 0x02, 0x00, 0x09, 0x00, 0x02, 0x00, 0x03, 0x70, 0x00, 0x00, 0x11, 0x00, 0x01, 0x00, 0x08, 0x00, 0x53, 0x01,
100+
101+
// MAX_ACK_PKTS
102+
0x00, 0xfc, 0x13, 0xc2, 0x02, 0x00, 0x09, 0x00, 0x03, 0x00, 0x03, 0x70, 0x00, 0x00, 0x13, 0x00, 0x01, 0x00, 0x08, 0x00, 0x0b, 0x00,
103+
#endif
104+
76105
#ifdef ENABLE_SCO_OVER_HCI
77106
// 0x01ab: Set HOSTIO_MAP_SCO_PCM to 0
78107
0x00, 0xFC, 0x13, 0xc2, 0x02, 0x00, 0x09, 0x00, 0x01, 0x00, 0x03, 0x70, 0x00, 0x00, 0xab, 0x01, 0x01, 0x00, 0x08, 0x00, 0x00, 0x00,
@@ -91,6 +120,47 @@ static const uint8_t init_script[] = {
91120
// 0x0001: Set Bluetooth address
92121
0x00, 0xFC, 0x19, 0xc2, 0x02, 0x00, 0x0A, 0x00, 0x03, 0x00, 0x03, 0x70, 0x00, 0x00, 0x01, 0x00, 0x04, 0x00, 0x08, 0x00, 0xf3, 0x00, 0xf5, 0xf4, 0xf2, 0x00, 0xf2, 0xf1,
93122

123+
#ifdef CSR8811_PSKEYS
124+
// xtal evel
125+
0x00, 0xfc, 0x13, 0xc2, 0x02, 0x00, 0x09, 0x00, 0x11, 0x00, 0x03, 0x70, 0x00, 0x00, 0x41, 0x02, 0x01, 0x00, 0x08, 0x00, 0x09, 0x00,
126+
127+
// patch50
128+
0x00, 0xfc, 0x31, 0xc2, 0x02, 0x00, 0x18, 0x00, 0x14, 0x00, 0x03, 0x70, 0x00, 0x00, 0x2c, 0x21, 0x10, 0x00, 0x08, 0x00, 0x00, 0x00, 0x7d, 0xc4, 0x14, 0x57, 0x18, 0x00, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0xd8, 0x18, 0x79, 0x9e, 0x00, 0x18, 0x00, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0xc5, 0x18, 0x80, 0xe2, 0x00, 0x80, 0x70,
129+
130+
// patch51
131+
0x00, 0xfc, 0x43, 0xc2, 0x02, 0x00, 0x21, 0x00, 0x15, 0x00, 0x03, 0x70, 0x00, 0x00, 0x2d, 0x21, 0x19, 0x00, 0x08, 0x00, 0x02, 0x00, 0x79, 0x5b, 0x14, 0x00, 0x00, 0xe7, 0x25, 0x95, 0x1b, 0x01, 0x26, 0x06, 0x9a, 0x08, 0xf4, 0x0a, 0x18, 0x02, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0x5b, 0x18, 0x43, 0x9e, 0x00, 0x14, 0x00, 0x1b, 0x01, 0x26, 0x08, 0x18, 0x02, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0x5c, 0x18, 0x82, 0xe2, 0x00, 0x3a, 0xa6,
132+
133+
// patch52
134+
0x00, 0xfc, 0x5d, 0xc2, 0x02, 0x00, 0x2e, 0x00, 0x16, 0x00, 0x03, 0x70, 0x00, 0x00, 0x2e, 0x21, 0x26, 0x00, 0x08, 0x00, 0x02, 0x00, 0xa7, 0xd0, 0x16, 0x03, 0x18, 0x03, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0x23, 0x18, 0x06, 0x9e, 0x00, 0x99, 0xe1, 0xf4, 0x14, 0x19, 0xe1, 0x12, 0x08, 0x00, 0x80, 0xc0, 0x00, 0xf0, 0x10, 0x1b, 0x06, 0x12, 0x02, 0x00, 0x01, 0xc0, 0xff, 0x80, 0x07, 0xf0, 0x0a, 0x16, 0x03, 0x10, 0x00, 0x18, 0x03, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0x38, 0x18, 0x13, 0x9e, 0x00, 0x0f, 0xf7, 0x18, 0x02, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0xd1, 0x18, 0xac, 0xe2, 0x00, 0x53, 0xcf,
135+
136+
// patch53
137+
0x00, 0xfc, 0x45, 0xc2, 0x02, 0x00, 0x22, 0x00, 0x17, 0x00, 0x03, 0x70, 0x00, 0x00, 0x2f, 0x21, 0x1a, 0x00, 0x08, 0x00, 0x03, 0x00, 0x16, 0xc9, 0x14, 0x01, 0x27, 0x00, 0x17, 0x05, 0x00, 0x2b, 0x84, 0xa4, 0xf0, 0x06, 0x00, 0x2b, 0x14, 0xa9, 0x27, 0x05, 0x14, 0x01, 0xe0, 0x02, 0x14, 0x00, 0x27, 0x01, 0x14, 0x00, 0x27, 0x02, 0x23, 0x03, 0x15, 0xe3, 0x18, 0x03, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0xc9, 0x18, 0x1d, 0xe2, 0x00, 0x5f, 0xcb,
138+
139+
// patch54 (2130)
140+
0x00, 0xfc, 0x41, 0xc2, 0x02, 0x00, 0x20, 0x00, 0x18, 0x00, 0x03, 0x70, 0x00, 0x00, 0x30, 0x21, 0x18, 0x00, 0x08, 0x00, 0x02, 0x00, 0x7a, 0xca, 0x18, 0x00, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0x84, 0x18, 0xcb, 0x9e, 0x00, 0x00, 0xea, 0x11, 0x5f, 0x00, 0x01, 0x80, 0x00, 0x24, 0x05, 0x00, 0x01, 0xb0, 0x00, 0x00, 0xea, 0x21, 0x5f, 0x18, 0x02, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0xca, 0x18, 0x7d, 0xe2, 0x00, 0x13, 0x25,
141+
142+
// patch63 (2139)
143+
0x00, 0xfc, 0x47, 0xc2, 0x02, 0x00, 0x23, 0x00, 0x19, 0x00, 0x03, 0x70, 0x00, 0x00, 0x39, 0x21, 0x1b, 0x00, 0x08, 0x00, 0x01, 0x00, 0x02, 0x8d, 0x18, 0x00, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0xd6, 0x18, 0xcc, 0x9e, 0x00, 0x18, 0x01, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0x79, 0x18, 0x31, 0x9e, 0x00, 0x99, 0xe1, 0xf4, 0x09, 0x00, 0xe1, 0x19, 0xb2, 0x16, 0x03, 0x27, 0xfe, 0x16, 0x02, 0x27, 0xff, 0x0e, 0xff, 0x9f, 0xfe, 0x14, 0x01, 0x0f, 0xf8, 0x6f, 0xd0,
144+
145+
// patch64 (213a)
146+
0x00, 0xfc, 0x5b, 0xc2, 0x02, 0x00, 0x2d, 0x00, 0x1a, 0x00, 0x03, 0x70, 0x00, 0x00, 0x3a, 0x21, 0x25, 0x00, 0x08, 0x00, 0x00, 0x00, 0xae, 0xd5, 0x18, 0x01, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0x6a, 0x18, 0xe4, 0x9e, 0x00, 0x99, 0xe1, 0xf4, 0x15, 0x13, 0x05, 0x00, 0x77, 0x80, 0xb5, 0xf4, 0x02, 0x34, 0x05, 0x19, 0xe1, 0x16, 0x00, 0x34, 0x04, 0x25, 0xf8, 0x16, 0x01, 0xa0, 0x08, 0x35, 0xf8, 0x1b, 0x02, 0x26, 0x01, 0x18, 0x00, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0xd6, 0x18, 0xbf, 0xe2, 0x00, 0x18, 0x00, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0xd6, 0x18, 0xbc, 0xe2, 0x00, 0x2a, 0xc3,
147+
148+
// patch65 (213b)
149+
0x00, 0xfc, 0x4f, 0xc2, 0x02, 0x00, 0x27, 0x00, 0x1b, 0x00, 0x03, 0x70, 0x00, 0x00, 0x3b, 0x21, 0x1f, 0x00, 0x08, 0x00, 0x01, 0x00, 0xae, 0x8c, 0xf0, 0x0a, 0x00, 0xe1, 0x15, 0xa3, 0x18, 0x01, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0x69, 0x18, 0xa5, 0x9e, 0x00, 0x0f, 0xf8, 0x9b, 0x04, 0xf0, 0x0b, 0x00, 0xe1, 0x14, 0xa1, 0x00, 0xe5, 0x10, 0xed, 0x18, 0x00, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0xd6, 0x18, 0x8c, 0x9e, 0x00, 0x18, 0x01, 0x2b, 0xff, 0x0e, 0xff, 0x00, 0x8d, 0x18, 0xcc, 0xe2, 0x00, 0xa7, 0xdf,
150+
151+
// bt_mixer_ctrim_max (216d)
152+
0x00, 0xfc, 0x13, 0xc2, 0x02, 0x00, 0x09, 0x00, 0x1c, 0x00, 0x03, 0x70, 0x00, 0x00, 0x6d, 0x21, 0x01, 0x00, 0x08, 0x00, 0x07, 0x00,
153+
154+
// bt_tx_mixer_ctrim_offset (2175)
155+
0x00, 0xfc, 0x1b, 0xc2, 0x02, 0x00, 0x0d, 0x00, 0x1d, 0x00, 0x03, 0x70, 0x00, 0x00, 0x75, 0x21, 0x05, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xee, 0xee, 0xee, 0xee,
156+
157+
// patch 112 (2200)
158+
0x00, 0xfc, 0x1f, 0xc2, 0x02, 0x00, 0x0f, 0x00, 0x1e, 0x00, 0x03, 0x70, 0x00, 0x00, 0x00, 0x22, 0x07, 0x00, 0x08, 0x00, 0x00, 0xf1, 0x15, 0xcf, 0xb4, 0x01, 0x00, 0xf1, 0x25, 0xcf, 0xe2, 0x00, 0xd1, 0x9d,
159+
160+
// BT power table V0
161+
0x00, 0xfc, 0x57, 0xc2, 0x02, 0x00, 0x2b, 0x00, 0x1f, 0x00, 0x03, 0x70, 0x00, 0x00, 0x1a, 0x24, 0x23, 0x00, 0x08, 0x00, 0x05, 0x27, 0x50, 0x00, 0x05, 0x2c, 0x50, 0x00, 0x00, 0xef, 0x05, 0x29, 0x40, 0x00, 0x05, 0x2e, 0x40, 0x00, 0x00, 0xf3, 0x05, 0x28, 0x30, 0x00, 0x05, 0x2c, 0x30, 0x00, 0x00, 0xf7, 0x05, 0x28, 0x20, 0x00, 0x05, 0x2c, 0x20, 0x00, 0x00, 0xfb, 0x05, 0x29, 0x10, 0x00, 0x05, 0x2d, 0x10, 0x00, 0x00, 0xff, 0x0a, 0x2d, 0x00, 0x00, 0x0a, 0x30, 0x00, 0x00, 0x00, 0x03, 0xba, 0x27, 0x00, 0x00, 0xcc, 0x28, 0x00, 0x00, 0x00, 0x07,
162+
#endif
163+
94164
// WarmReset
95165
0x00, 0xFC, 0x13, 0xc2, 0x02, 0x00, 0x09, 0x00, 0x03, 0x0e, 0x02, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
96166
};

0 commit comments

Comments
 (0)