1 /* 2 * Copyright (c) 2026 Ahmad Khalifa <vexeduxr@FreeBSD.org> 3 * 4 * SPDX-License-Identifier: BSD-2-Clause 5 */ 6 7 #ifndef RTL8723B_H 8 #define RTL8723B_H 9 10 /* 11 * Global definitions. 12 */ 13 #define R23B_PUBQ_NPAGES 231 14 #define R23B_HPQ_NPAGES 12 15 #define R23B_LPQ_NPAGES 2 16 #define R23B_NPQ_NPAGES 2 17 18 #define R23B_TX_PAGE_COUNT 247 19 20 #define R23B_RX_DMA_BUFFER_SIZE 0x3f80 21 22 #define R23B_CALIB_THRESHOLD 7 23 24 /* 25 * Function declarations. 26 */ 27 28 /* r23b_calib.c */ 29 void r23b_iq_calib(struct rtwn_softc *); 30 void r23b_lc_calib(struct rtwn_softc *); 31 void r23b_temp_measure(struct rtwn_softc *); 32 33 /* r23b_fw.c */ 34 #ifndef RTWN_WITHOUT_UCODE 35 void r23b_fw_download_enable(struct rtwn_softc *, int); 36 void r23b_fw_reset(struct rtwn_softc *, int); 37 #endif 38 39 /* r23b_init.c */ 40 void r23b_init_antsel(struct rtwn_softc *); 41 void r23b_init_bb_common(struct rtwn_softc *); 42 void r23b_init_rf(struct rtwn_softc *); 43 void r23b_post_init(struct rtwn_softc *); 44 int r23b_set_page_size(struct rtwn_softc *); 45 46 /* r23b_led.c */ 47 void r23b_set_led(struct rtwn_softc *, int, int); 48 49 /* r23b_rf.c */ 50 void r23b_rf_write(struct rtwn_softc *, int, uint8_t, uint32_t); 51 52 /* r23b_rom.c */ 53 int r23b_efuse_preread(struct rtwn_softc *); 54 void r23b_parse_rom(struct rtwn_softc *, uint8_t *); 55 56 /* r23b_rx.c */ 57 int8_t r23b_get_rssi_cck(struct rtwn_softc *, void *); 58 59 #endif /* RTL8723B_H */ 60