nuttx/drivers/wireless
Chip L. 075215cd5b wireless/cc1101: migrate to wlioc_rx_hdr_s and add operation modes
This commit refactors the CC1101 driver's read interface to comply with
the standard NuttX wireless character driver API and introduces extended
hardware operation modes.

- Migrate `cc1101_file_read` to accept and populate the standard
  `struct wlioc_rx_hdr_s` instead of returning raw byte arrays.
- Implement `cc1101_calc_rssi_dbm_x100` to preserve the hardware's
  0.5 dBm RSSI precision when scaling to 1/100 dBm units, eliminating
  the integer truncation loss present in the legacy calculation.
- Add `CC1101IOC_SETOPMODE` and `CC1101IOC_GETOPMODE` IOCTLs.
- Introduce four RF operation modes (`enum cc1101_opmode_e`):
  1. NORMAL: Standard packet mode with hardware filtering.
  2. PROMISCUOUS: Packet mode bypassing address filtering and retaining
     packets with CRC errors.
  3. SYNC_SERIAL: Bypasses FIFO, routes clock and data to GDO0/GDO2.
  4. ASYNC_SERIAL: Bypasses FIFO, routes async data to GDO2.
- Fix the `GS2200M_FIRST` IOCTL block offset in `wireless/ioctl.h` and
  allocate a dedicated IOCTL block for CC1101.

Signed-off-by: Chip L. <chplee@gmail.com>
2026-03-11 02:25:50 +08:00
..
bluetooth sched/sleep: replace all Signal-based sleep implement to Scheduled sleep 2025-10-17 14:05:02 +08:00
ieee80211 driver/net: replace net_lock with netdev_lock 2026-01-06 16:08:30 +08:00
ieee802154 drivers/xbee: remove nxsig_notification when signal support is disabled 2026-02-26 20:03:05 +08:00
lpwan wireless/lpwan/sx127x: Update default TX power and enable CRC 2026-03-08 16:08:39 -03:00
spirit netdev_driver: add carrier_on to xxx_ifup where carrier_on is absent 2026-02-02 13:23:05 +08:00
cc1101.c wireless/cc1101: migrate to wlioc_rx_hdr_s and add operation modes 2026-03-11 02:25:50 +08:00
CMakeLists.txt drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
gs2200m.c sched/sleep: replace all Signal-based sleep implement to Scheduled sleep 2025-10-17 14:05:02 +08:00
ISM1_868MHzGFSK100kbps.c drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
ISM2_433MHzMSK500kbps.c drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
ISM2_905MHzGFSK250kbps.c drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
Kconfig wireless/cc1101: Add Kconfig option to bypass strict version check 2026-02-27 08:10:04 -03:00
Make.defs drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
nrf24l01.c wireless/nrf24l01: Implement common RF IOCTLs and fix missing register reads. 2026-03-02 08:07:39 -03:00
nrf24l01.h drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00