Home
last modified time | relevance | path

Searched full:bt (Results 1 – 25 of 822) sorted by relevance

12345678910>>...33

/linux/sound/soc/mediatek/common/
H A Dmtk-btcvsd.c3 // Mediatek ALSA BT SCO CVSD/MSBC Driver
130 spinlock_t tx_lock; /* spinlock for bt tx stream control */
131 spinlock_t rx_lock; /* spinlock for bt rx stream control */
193 static void mtk_btcvsd_snd_irq_enable(struct mtk_btcvsd_snd *bt) in mtk_btcvsd_snd_irq_enable() argument
195 regmap_update_bits(bt->infra, bt->infra_misc_offset, in mtk_btcvsd_snd_irq_enable()
196 bt->conn_bt_cvsd_mask, 0); in mtk_btcvsd_snd_irq_enable()
199 static void mtk_btcvsd_snd_irq_disable(struct mtk_btcvsd_snd *bt) in mtk_btcvsd_snd_irq_disable() argument
201 regmap_update_bits(bt->infra, bt in mtk_btcvsd_snd_irq_disable()
205 mtk_btcvsd_snd_set_state(struct mtk_btcvsd_snd * bt,struct mtk_btcvsd_snd_stream * bt_stream,int state) mtk_btcvsd_snd_set_state() argument
232 mtk_btcvsd_snd_tx_init(struct mtk_btcvsd_snd * bt) mtk_btcvsd_snd_tx_init() argument
245 mtk_btcvsd_snd_rx_init(struct mtk_btcvsd_snd * bt) mtk_btcvsd_snd_rx_init() argument
258 get_tx_time_stamp(struct mtk_btcvsd_snd * bt,struct mtk_btcvsd_snd_time_buffer_info * ts) get_tx_time_stamp() argument
265 get_rx_time_stamp(struct mtk_btcvsd_snd * bt,struct mtk_btcvsd_snd_time_buffer_info * ts) get_rx_time_stamp() argument
318 btcvsd_tx_clean_buffer(struct mtk_btcvsd_snd * bt) btcvsd_tx_clean_buffer() argument
357 mtk_btcvsd_read_from_bt(struct mtk_btcvsd_snd * bt,enum bt_sco_packet_len packet_type,unsigned int packet_length,unsigned int packet_num,unsigned int blk_size,unsigned int control) mtk_btcvsd_read_from_bt() argument
410 mtk_btcvsd_write_to_bt(struct mtk_btcvsd_snd * bt,enum bt_sco_packet_len packet_type,unsigned int packet_length,unsigned int packet_num,unsigned int blk_size) mtk_btcvsd_write_to_bt() argument
483 struct mtk_btcvsd_snd *bt = dev; mtk_btcvsd_snd_irq_handler() local
637 wait_for_bt_irq(struct mtk_btcvsd_snd * bt,struct mtk_btcvsd_snd_stream * bt_stream) wait_for_bt_irq() argument
698 mtk_btcvsd_snd_read(struct mtk_btcvsd_snd * bt,struct iov_iter * buf,size_t count) mtk_btcvsd_snd_read() argument
776 mtk_btcvsd_snd_write(struct mtk_btcvsd_snd * bt,struct iov_iter * buf,size_t count) mtk_btcvsd_snd_write() argument
851 get_bt_stream(struct mtk_btcvsd_snd * bt,struct snd_pcm_substream * substream) get_bt_stream() argument
874 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(component); mtk_pcm_btcvsd_open() local
896 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(component); mtk_pcm_btcvsd_close() local
910 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(component); mtk_pcm_btcvsd_hw_params() local
927 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(component); mtk_pcm_btcvsd_hw_free() local
938 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(component); mtk_pcm_btcvsd_prepare() local
950 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(component); mtk_pcm_btcvsd_trigger() local
981 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(component); mtk_pcm_btcvsd_pointer() local
1031 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(component); mtk_pcm_btcvsd_copy() local
1050 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(cmpnt); btcvsd_band_get() local
1060 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(cmpnt); btcvsd_band_set() local
1075 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(cmpnt); btcvsd_loopback_get() local
1086 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(cmpnt); btcvsd_loopback_set() local
1102 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(cmpnt); btcvsd_tx_mute_get() local
1117 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(cmpnt); btcvsd_tx_mute_set() local
1130 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(cmpnt); btcvsd_rx_irq_received_get() local
1143 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(cmpnt); btcvsd_rx_timeout_get() local
1157 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(cmpnt); btcvsd_rx_timestamp_get() local
1184 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(cmpnt); btcvsd_tx_irq_received_get() local
1197 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(cmpnt); btcvsd_tx_timeout_get() local
1207 struct mtk_btcvsd_snd *bt = snd_soc_component_get_drvdata(cmpnt); btcvsd_tx_timestamp_get() local
[all...]
/linux/drivers/char/ipmi/
H A Dipmi_bt_sm.c5 * The state machine for an Open IPMI BT sub-driver under ipmi_si.c, part
35 * Typical "Get BT Capabilities" values are 2-3 retries, 5-10 seconds,
39 * stage, the queue depth of BT is of no concern.
64 BT_STATE_LONG_BUSY /* BT doesn't get hosed :-) */
72 #define BT_STATE_CHANGE(X, Y) { bt->state = X; return Y; }
78 unsigned char seq; /* BT sequence number */
107 * variable "bt" is hardcoded into these macros.
110 #define BT_STATUS bt->io->inputb(bt->io, 0)
111 #define BT_CONTROL(x) bt->io->outputb(bt->io, 0, x)
113 #define BMC2HOST bt->io->inputb(bt->io, 1)
[all …]
/linux/drivers/media/pci/bt8xx/
H A Dbt878.c51 #define btwrite(dat,adr) bmtwrite((dat), (bt->bt878_mem+(adr)))
52 #define btread(adr) bmtread(bt->bt878_mem+(adr))
67 static void bt878_mem_free(struct bt878 *bt) in bt878_mem_free() argument
69 if (bt->buf_cpu) { in bt878_mem_free()
70 dma_free_coherent(&bt->dev->dev, bt->buf_size, bt->buf_cpu, in bt878_mem_free()
71 bt->buf_dma); in bt878_mem_free()
72 bt->buf_cpu = NULL; in bt878_mem_free()
75 if (bt->risc_cpu) { in bt878_mem_free()
76 dma_free_coherent(&bt->dev->dev, bt->risc_size, bt->risc_cpu, in bt878_mem_free()
77 bt->risc_dma); in bt878_mem_free()
[all …]
H A Ddvb-bt8xx.c44 struct bt878 *bt = from_work(bt, t, bh_work); in dvb_bt8xx_work() local
45 struct dvb_bt8xx_card *card = dev_get_drvdata(&bt->adapter->dev); in dvb_bt8xx_work()
47 dprintk("%d\n", card->bt->finished_block); in dvb_bt8xx_work()
49 while (card->bt->last_block != card->bt->finished_block) { in dvb_bt8xx_work()
50 (card->bt->TS_Size ? dvb_dmx_swfilter_204 : dvb_dmx_swfilter) in dvb_bt8xx_work()
52 &card->bt->buf_cpu[card->bt->last_block * in dvb_bt8xx_work()
53 card->bt->block_bytes], in dvb_bt8xx_work()
54 card->bt->block_bytes); in dvb_bt8xx_work()
55 card->bt->last_block = (card->bt->last_block + 1) % in dvb_bt8xx_work()
56 card->bt->block_count; in dvb_bt8xx_work()
[all …]
/linux/kernel/trace/
H A Dblktrace.c116 static void relay_blktrace_event1(struct blk_trace *bt, unsigned long sequence, in relay_blktrace_event1() argument
124 t = relay_reserve(bt->rchan, trace_len); in relay_blktrace_event1()
132 record_blktrace_event(t, pid, cpu, sector, bytes, what, bt->dev, error, in relay_blktrace_event1()
136 static void relay_blktrace_event2(struct blk_trace *bt, unsigned long sequence, in relay_blktrace_event2() argument
144 t = relay_reserve(bt->rchan, trace_len); in relay_blktrace_event2()
152 record_blktrace_event2(t, pid, cpu, sector, bytes, what, bt->dev, error, in relay_blktrace_event2()
156 static void relay_blktrace_event(struct blk_trace *bt, unsigned long sequence, in relay_blktrace_event() argument
161 if (bt->version == 2) in relay_blktrace_event()
162 return relay_blktrace_event2(bt, sequence, pid, cpu, sector, in relay_blktrace_event()
165 return relay_blktrace_event1(bt, sequence, pid, cpu, sector, bytes, in relay_blktrace_event()
[all …]
/linux/Documentation/devicetree/bindings/net/bluetooth/
H A Dqualcomm-bluetooth.yaml19 - qcom,qca2066-bt
20 - qcom,qca6174-bt
21 - qcom,qca9377-bt
22 - qcom,wcn3950-bt
23 - qcom,wcn3988-bt
24 - qcom,wcn3990-bt
25 - qcom,wcn3991-bt
26 - qcom,wcn3998-bt
27 - qcom,qca6390-bt
28 - qcom,wcn6750-bt
[all …]
H A Drealtek,bluetooth.yaml14 RTL8723BS/RTL8723CS/RTL8821CS/RTL8822CS is a WiFi + BT chip. WiFi part
15 is connected over SDIO, while BT is connected over serial. It speaks
23 - realtek,rtl8723bs-bt
24 - realtek,rtl8723cs-bt
25 - realtek,rtl8723ds-bt
26 - realtek,rtl8822cs-bt
29 - realtek,rtl8821cs-bt
30 - const: realtek,rtl8723bs-bt
34 description: GPIO specifier, used to wakeup the BT module
38 description: GPIO specifier, used to enable the BT module
[all …]
H A Damlogic,w155s2-bt.yaml5 $id: http://devicetree.org/schemas/net/bluetooth/amlogic,w155s2-bt.yaml#
23 - amlogic,w265s1-bt
24 - amlogic,w265p1-bt
25 - const: amlogic,w155s2-bt
27 - amlogic,w155s2-bt
28 - amlogic,w265s2-bt
57 compatible = "amlogic,w155s2-bt";
/linux/drivers/net/wireless/ti/wl12xx/
H A Dconf.h38 * Configure the min and max time BT gains the antenna
39 * in WLAN / BT master basic rate
47 * Configure the min and max time BT gains the antenna
48 * in WLAN / BT slave basic rate
56 * Configure the min and max time BT gains the antenna
57 * in WLAN / BT master EDR
65 * Configure the min and max time BT gains the antenna
66 * in WLAN / BT slave EDR
75 * in WLAN PSM / BT master/slave BR
84 * in WLAN PSM / BT master/slave EDR
[all …]
/linux/drivers/media/i2c/
H A Dths8200.c214 static void ths8200_setup(struct v4l2_subdev *sd, struct v4l2_bt_timings *bt) in ths8200_setup() argument
217 uint16_t line_start_active_video = (bt->vsync + bt->vbackporch); in ths8200_setup()
218 uint16_t line_start_front_porch = (vtotal(bt) - bt->vfrontporch); in ths8200_setup()
225 ths8200_write(sd, THS8200_DTG1_SPEC_A, bt->hsync); in ths8200_setup()
226 ths8200_write(sd, THS8200_DTG1_SPEC_B, bt->hfrontporch); in ths8200_setup()
229 if (!bt->interlaced) in ths8200_setup()
236 (bt->hbackporch + bt->hsync) & 0xff); in ths8200_setup()
244 ((bt->hbackporch + bt->hsync) & 0x100) >> 1); in ths8200_setup()
247 ths8200_write(sd, THS8200_DTG1_SPEC_K_LSB, (bt->hfrontporch) & 0xff); in ths8200_setup()
249 ((bt->hfrontporch) & 0x700) >> 8); in ths8200_setup()
[all …]
/linux/arch/powerpc/boot/
H A Dmktree.c48 boot_block_t bt; in main() local
62 bt.bb_magic = htonl(0x0052504F); in main()
65 bt.bb_dest = htonl(strtoul(argv[3], NULL, 0)); in main()
66 bt.bb_entry_point = htonl(strtoul(argv[4], NULL, 0)); in main()
72 bt.bb_num_512blocks = htonl(nblks); in main()
73 bt.bb_debug_flag = 0; in main()
75 bt.bb_checksum = 0; in main()
79 bt.reserved[0] = 0; in main()
80 bt.reserved[1] = 0; in main()
93 cp = (void *)&bt; in main()
[all …]
/linux/drivers/net/wireless/realtek/rtlwifi/rtl8723ae/
H A Dhal_bt_coexist.c106 "[DM][BT], RSSI_1 state switch to High\n"); in rtl8723e_dm_bt_check_coex_rssi_state1()
110 "[DM][BT], RSSI_1 state stay at Low\n"); in rtl8723e_dm_bt_check_coex_rssi_state1()
120 "[DM][BT], RSSI_1 state switch to Low\n"); in rtl8723e_dm_bt_check_coex_rssi_state1()
124 "[DM][BT], RSSI_1 state stay at High\n"); in rtl8723e_dm_bt_check_coex_rssi_state1()
130 "[DM][BT], RSSI_1 thresh error!!\n"); in rtl8723e_dm_bt_check_coex_rssi_state1()
148 "[DM][BT], RSSI_1 state switch to Medium\n"); in rtl8723e_dm_bt_check_coex_rssi_state1()
152 "[DM][BT], RSSI_1 state stay at Low\n"); in rtl8723e_dm_bt_check_coex_rssi_state1()
168 "[DM][BT], RSSI_1 state switch to High\n"); in rtl8723e_dm_bt_check_coex_rssi_state1()
178 "[DM][BT], RSSI_1 state switch to Low\n"); in rtl8723e_dm_bt_check_coex_rssi_state1()
182 "[DM][BT], RSSI_1 state stay at Medium\n"); in rtl8723e_dm_bt_check_coex_rssi_state1()
[all …]
H A Dhal_btc.c24 "[BT][DM], Before enter IPS, turn off all Coexist DM\n"); in rtl8723e_dm_bt_turn_off_bt_coexist_before_enter_lps()
116 "Need to decrease bt power\n"); in rtl8723e_dm_bt_need_to_dec_bt_pwr()
135 "[DM][BT], Coexist state do not change!!\n"); in rtl8723e_dm_bt_is_same_coexist_state()
139 "[DM][BT], Coexist state changed!!\n"); in rtl8723e_dm_bt_is_same_coexist_state()
169 /* Enable GPIO 0/1/2/3/8 pins for bt */ in rtl8723e_dm_bt_set_hw_pta_mode()
284 "Wifi idle + Bt idle, bt coex mechanism always off!!\n"); in rtl8723e_dm_bt_is_2_ant_common_action()
290 "Wifi non-idle + Bt disabled/idle!!\n"); in rtl8723e_dm_bt_is_2_ant_common_action()
312 "Bt non-idle!\n"); in rtl8723e_dm_bt_is_2_ant_common_action()
389 "[BTCoex], decrease Bt Power : %s, write 0x21=0x%x\n", in rtl8723e_dm_bt_set_fw_dec_bt_pwr()
429 "[BTCoex], set BT PTA update manager to trigger update!!\n"); in rtl8723e_dm_bt_set_fw_tdma_ctrl()
[all …]
/linux/drivers/media/pci/mgb4/
H A Dmgb4_io.h46 struct v4l2_bt_timings *bt = &timings->bt; in pixel_size() local
48 u32 height = bt->height + bt->vfrontporch + bt->vsync + bt->vbackporch; in pixel_size()
49 u32 width = bt->width + bt->hfrontporch + bt->hsync + bt->hbackporch; in pixel_size()
/linux/arch/sh/lib/
H A Dmemcpy.S18 bt/s 9f ! if n=0, do nothing
24 bt/s 7f ! if it's too small, copy a byte at once
58 bt/s 8b ! while (r0>r2)
72 bt/s 2f
86 bt/s 3b
91 bt/s 9b
104 bt/s 2f
126 bt/s 3b
137 bt/s 3b
143 bt/s 9b
[all …]
H A Dmemcpy-sh4.S53 bt/s 3b ! 109 BR
70 bt/s 3b ! 109 BR
80 bt 9f ! 109 BR
85 bt/s 8b ! 109 BR
126 bt/s 3b ! 109 BR
138 bt/s 3b
148 bt 9f ! 109 BR
153 bt/s 8b ! 109 BR
181 bt/s 99f ! 111 BR (zero len)
188 bt/s .Lcase00 ! 111 BR (aligned)
[all …]
H A Dstrlen.S17 bt/s 1f
28 bt 8f
33 bt 8f
38 bt 8f
57 bt/s 8f
62 bt/s 8f
67 bt 8f
/linux/Documentation/scsi/
H A DBusLogic.rst57 BT-948/958/958D, will always be available from my Linux Home Page at URL
69 the BT-948 PCI Ultra SCSI Host Adapter, and then again for the BT-958 PCI Wide
198 The ISA compatible I/O port is disabled by default on the BT-948/958/958D.
225 FlashPoint LT (BT-930) Ultra SCSI-3
226 FlashPoint LT (BT-930R) Ultra SCSI-3 with RAIDPlus
227 FlashPoint LT (BT-920) Ultra SCSI-3 (BT-930 without BIOS)
228 FlashPoint DL (BT-932) Dual Channel Ultra SCSI-3
229 FlashPoint DL (BT-932R) Dual Channel Ultra SCSI-3 with RAIDPlus
230 FlashPoint LW (BT-950) Wide Ultra SCSI-3
231 FlashPoint LW (BT-950R) Wide Ultra SCSI-3 with RAIDPlus
[all …]
H A DFlashPoint.rst78 BusLogic FlashPoint LT/BT-948 Upgrade Program
82 BusLogic FlashPoint LW/BT-958 Upgrade Program
99 customers to make sure the BT-946C/956C MultiMaster cards would still be
101 the FlashPoint would be able to upgrade to the BT-946C. While this helped
135 to trade in their FlashPoint LT for the new BT-948 MultiMaster PCI Ultra
136 SCSI Host Adapter. The BT-948 is the Ultra SCSI successor to the BT-946C
137 and has all the best features of both the BT-946C and FlashPoint LT,
145 As of 14 June 1996, the original BusLogic FlashPoint LT to BT-948 upgrade
148 LW (BT-950) for a BT-958 MultiMaster PCI Ultra SCSI Host Adapter. The
151 I was a beta test site for the BT-948/958, and versions 1.2.1 and 1.3.1 of
[all …]
/linux/Documentation/devicetree/bindings/arm/ti/
H A Dk3.yaml82 - const: toradex,verdin-am62-nonwifi # Verdin AM62 Module without Wi-Fi / BT
86 - description: K3 AM62x SoC Toradex Verdin Modules and Carrier Boards with Wi-Fi / BT
89 - toradex,verdin-am62-wifi-dahlia # Verdin AM62 Wi-Fi / BT Module on Dahlia
90 - toradex,verdin-am62-wifi-dev # Verdin AM62 Wi-Fi / BT M. on Verdin Development B.
91 - toradex,verdin-am62-wifi-ivy # Verdin AM62 Wi-Fi / BT Module on Ivy
92 - toradex,verdin-am62-wifi-mallow # Verdin AM62 Wi-Fi / BT Module on Mallow
93 - toradex,verdin-am62-wifi-yavia # Verdin AM62 Wi-Fi / BT Module on Yavia
94 - const: toradex,verdin-am62-wifi # Verdin AM62 Wi-Fi / BT Module
106 - const: toradex,verdin-am62p-nonwifi # Verdin AM62P Module without Wi-Fi / BT
110 - description: K3 AM62P5 SoC Toradex Verdin Modules and Carrier Boards with Wi-Fi / BT
[all …]
/linux/block/
H A Dblk-mq-tag.c110 struct sbitmap_queue *bt) in __blk_mq_get_tag() argument
113 !hctx_may_queue(data->hctx, bt)) in __blk_mq_get_tag()
117 return sbitmap_queue_get_shallow(bt, data->shallow_depth); in __blk_mq_get_tag()
119 return __sbitmap_queue_get(bt); in __blk_mq_get_tag()
126 struct sbitmap_queue *bt = &tags->bitmap_tags; in blk_mq_get_tags() local
132 ret = __sbitmap_queue_get_batch(bt, nr_tags, offset); in blk_mq_get_tags()
140 struct sbitmap_queue *bt; in blk_mq_get_tag() local
151 bt = &tags->breserved_tags; in blk_mq_get_tag()
154 bt = &tags->bitmap_tags; in blk_mq_get_tag()
158 tag = __blk_mq_get_tag(data, bt); in blk_mq_get_tag()
[all …]
/linux/tools/testing/selftests/net/tcp_ao/
H A Dbench-lookups.c214 struct bench_tests *bt = &bench_results[i]; in server_fn() local
233 bench_delete(lsk, &bt->add_key, &bt->delete_last_key, in server_fn()
236 nr_keys[i], &bt->add_key); in server_fn()
238 nr_keys[i], &bt->delete_last_key); in server_fn()
240 bench_delete(lsk, &bt->add_key, &bt->delete_rand_key, in server_fn()
243 nr_keys[i], &bt->delete_rand_key); in server_fn()
245 bench_delete(lsk, &bt->add_key, &bt->delete_async, in server_fn()
247 test_print_stats("Delete: async", nr_keys[i], &bt->delete_async); in server_fn()
292 static void bench_connect_client(size_t port_off, struct bench_tests *bt, in bench_connect_client() argument
300 con = &bt->connect_rand_key; in bench_connect_client()
[all …]
/linux/drivers/net/wireless/rsi/
H A Drsi_hal.h33 __stringify(DEV_OPMODE_BT_ALONE) "[BT classic alone], " \
34 __stringify(DEV_OPMODE_BT_LE_ALONE) "[BT LE alone], " \
35 __stringify(DEV_OPMODE_BT_DUAL) "[BT classic + BT LE alone], " \
36 __stringify(DEV_OPMODE_STA_BT) "[Wi-Fi STA + BT classic], " \
37 __stringify(DEV_OPMODE_STA_BT_LE) "[Wi-Fi STA + BT LE], " \
38 __stringify(DEV_OPMODE_STA_BT_DUAL) "[Wi-Fi STA + BT classic + BT LE], " \
39 __stringify(DEV_OPMODE_AP_BT) "[Wi-Fi AP + BT classic], " \
40 __stringify(DEV_OPMODE_AP_BT_DUAL) "[Wi-Fi AP + BT classic + BT LE]"
/linux/net/bluetooth/
H A DKconfig6 menuconfig BT config
49 depends on BT
67 depends on BT
92 depends on BT
101 depends on BT
108 depends on BT
115 depends on BT && DEBUG_FS
123 depends on BT && DEBUG_KERNEL
150 depends on BT && !DYNAMIC_DEBUG
/linux/drivers/net/wireless/broadcom/brcm80211/brcmfmac/
H A Dbtcoex.c23 /* BT registers values during DHCP */
37 * enum brcmf_btcoex_state - BT coex DHCP state machine states
54 * struct brcmf_btcoex_info - BT coex related information
130 * brcmf_btcoex_boost_wifi() - control BT SCO/eSCO parameters
131 * @btci: BT coex info
137 * Enhanced BT COEX settings for eSCO compatibility during DHCP window
171 /* restore previously saved bt params */ in brcmf_btcoex_boost_wifi()
271 * brcmf_btcoex_timerfunc() - BT coex timer callback
284 * brcmf_btcoex_handler() - BT coex state machine work handler
319 /* DHCP is not over yet, start lowering BT priority */ in brcmf_btcoex_handler()
[all …]

12345678910>>...33