summaryrefslogtreecommitdiffstats
path: root/firmware/export
diff options
context:
space:
mode:
authorAmaury Pouly <amaury.pouly@gmail.com>2017-11-03 20:14:01 +0100
committerAmaury Pouly <amaury.pouly@gmail.com>2017-11-06 21:37:06 +0100
commit0fe7b8becf26816eb303626addc8d34821e361f3 (patch)
treecb8fcd990d5aa3a55212b60e2a3d2282f8f92bff /firmware/export
parentee2eb13b7407841e9c0dbc76d18878b241d3e9f2 (diff)
downloadrockbox-0fe7b8becf26816eb303626addc8d34821e361f3.tar.gz
rockbox-0fe7b8becf26816eb303626addc8d34821e361f3.zip
nwzlinux: add support for radio
None of the Sony up to A15 seem to support RDS (they use either Si4702 or Si4708), thus I did not add any code to support RDS. Change-Id: I64838993b9705b36b94665f8470c7a89c772c961
Diffstat (limited to 'firmware/export')
-rw-r--r--firmware/export/config/sonynwzlinux.h4
-rw-r--r--firmware/export/nwzlinux_codec.h9
2 files changed, 13 insertions, 0 deletions
diff --git a/firmware/export/config/sonynwzlinux.h b/firmware/export/config/sonynwzlinux.h
index 3ca0e014cb..00b606b1e3 100644
--- a/firmware/export/config/sonynwzlinux.h
+++ b/firmware/export/config/sonynwzlinux.h
@@ -62,9 +62,13 @@
/* Define this if you do software codec */
#define CONFIG_CODEC SWCODEC
+#define CONFIG_TUNER SI4700
+
/* There is no hardware tone control */
#define HAVE_SW_TONE_CONTROLS
+#define INPUT_SRC_CAPS SRC_CAP_FMRADIO
+
/* The A15 and A25 support more sampling rates, in fact they support crazy high bit-rates such
* as 176.4 and 192 kHz but Rockbox does not support those */
#if defined(SONY_NWZA10) || defined(SONY_NWA20)
diff --git a/firmware/export/nwzlinux_codec.h b/firmware/export/nwzlinux_codec.h
index dae8cca76f..06557ea1ca 100644
--- a/firmware/export/nwzlinux_codec.h
+++ b/firmware/export/nwzlinux_codec.h
@@ -26,11 +26,20 @@
/* Ranges from -100dB to 4dB */
AUDIOHW_SETTING(VOLUME, "dB", 0, 1, -100, 4, -10)
+enum nwz_src_t
+{
+ NWZ_PLAYBACK,
+ NWZ_RADIO,
+ NWZ_MIC,
+};
+
/* enable/disable Sony's "acoustic" mode */
bool audiohw_acoustic_enabled(void);
void audiohw_enable_acoustic(bool en);
/* enable/disable Sony's "cuerev" mode */
bool audiohw_cuerev_enabled(void);
void audiohw_enable_cuerev(bool en);
+/* select playback source */
+void audiohw_set_playback_src(enum nwz_src_t src);
#endif /* __NWZLINUX_CODEC_H__ */