From: Eero Nurkkala <ext-eero.nurkkala@xxxxxxxxx> This patchset adds the BCM2048 radio driver code. BCM2048 is radio is integrated in the BCM2048 chipset that contains the Bluetooth also. There's quite some sysfs entries introduced here; But only a very few of them is meant to be used besides debugging/experimental purposes: "rds" (rds switch, off/on) "fm_search_rssi_threshold" (threshold for V4L2_CAP_HW_FREQ_SEEK) "region" (current region information) "region_bottom_frequency" "region_top_frequency" Unlike V4L2 suggests, the code has also a reference implementation for a partial RDS decoder; I understand that this should be done in userspace. However, the decoded RDS data may be read off from the sysfs nodes also: "rds_pi" (RDS PI code) "rds_rt" (RDS Radio Text) "rds_ps" (RDS PS) It would be nice to know, how RDS enabling/disabling takes place in V4L2. Below is the list of all sysfs entries; However, like mentioned, only the above (8) sysfs nodes should be used along with the V4L2. The sysfs nodes below, with the exception of the 8 ones above, should only be used for debugging/experiments only. And they do a good job for such purposes ;) audio_route (DAC, I2S) dac_output (OFF, LEFT, RIGHT, LEFT/RIGHT) fm_af_frequency (Alternate Frequency) fm_best_tune_mode (Best tune mode; tuning method) fm_carrier_error (FM carrier error) fm_deemphasis (De-emphasis) fm_frequency (frequency) fm_hi_lo_injection (Injection control) fm_rds_flags (RDS IRQ flags) fm_rds_mask (RDS IRQ Mask) fm_rssi (Current channel RSSI level) fm_search_mode_direction (UP, DOWN) fm_search_rssi_threshold (HW seek threshold search level) fm_search_tune_mode (stop all, preset, hw seek, AF jump) mute (off, on) power_state (off, on) rds (off, on) rds_b_block_mask (RDS b block IRQ mask) rds_b_block_match (RDS b block IRQ match) rds_data (Raw RDS data for debugging) rds_pi (RDS PI code) rds_pi_mask (RDS PI mask) rds_pi_match (RDS PI match) rds_ps (RDS PS) rds_rt (RDS radiotext) rds_wline (RDS FIFO watermark level) region region_bottom_frequency region_top_frequency All comments are very welcome! Like mentioned, I'm aware of the somewhat ugly set of syfs nodes. For debugging/experiments, I would guess they're not that bad; but for real usage, they should be integrated into the V4L2? Eero Nurkkala (2): V4L: Add BCM2048 radio driver V4L: Add BCM2048 radio driver Makefile and Kconfig dependencies drivers/media/radio/Kconfig | 10 + drivers/media/radio/Makefile | 1 + drivers/media/radio/radio-bcm2048.c | 2613 +++++++++++++++++++++++++++++++++++ include/media/radio-bcm2048.h | 30 + 4 files changed, 2654 insertions(+), 0 deletions(-) create mode 100644 drivers/media/radio/radio-bcm2048.c create mode 100644 include/media/radio-bcm2048.h -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html