From a924df8d6ddfa4372ce6b49c312e1da1ffceb2ad Mon Sep 17 00:00:00 2001 From: Amaury Pouly Date: Sun, 31 Mar 2013 21:57:53 +0200 Subject: rk27xx: implement radio support Change-Id: I59d3905e9b2a3df8aa235e424c7a6e0eff6d73e9 Reviewed-on: http://gerrit.rockbox.org/427 Reviewed-by: Marcin Bukat Tested-by: Marcin Bukat --- firmware/target/arm/rk27xx/audio-rk27xx.c | 52 ++++++++++++++++++++++ .../rk27xx/rk27generic/fmradio-i2c-rk27generic.c | 39 ++++++++++++++++ .../arm/rk27xx/rk27generic/power-rk27generic.c | 6 +++ 3 files changed, 97 insertions(+) create mode 100644 firmware/target/arm/rk27xx/audio-rk27xx.c create mode 100644 firmware/target/arm/rk27xx/rk27generic/fmradio-i2c-rk27generic.c (limited to 'firmware/target/arm') diff --git a/firmware/target/arm/rk27xx/audio-rk27xx.c b/firmware/target/arm/rk27xx/audio-rk27xx.c new file mode 100644 index 0000000000..76be4a907a --- /dev/null +++ b/firmware/target/arm/rk27xx/audio-rk27xx.c @@ -0,0 +1,52 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * $Id$ + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#include "config.h" +#include "system.h" +#include "audiohw.h" +#include "audio.h" + +static int input_source = AUDIO_SRC_PLAYBACK; +static unsigned input_flags = 0; +static int output_source = AUDIO_SRC_PLAYBACK; + +static void select_audio_path(void) +{ + if(input_source == AUDIO_SRC_PLAYBACK) + audiohw_set_monitor(false); + else + audiohw_set_monitor(true); +} + +void audio_input_mux(int source, unsigned flags) +{ + (void) source; + (void) flags; + input_source = source; + input_flags = flags; + select_audio_path(); +} + +void audio_set_output_source(int source) +{ + (void) source; + output_source = source; + select_audio_path(); +} diff --git a/firmware/target/arm/rk27xx/rk27generic/fmradio-i2c-rk27generic.c b/firmware/target/arm/rk27xx/rk27generic/fmradio-i2c-rk27generic.c new file mode 100644 index 0000000000..4ab171cd5a --- /dev/null +++ b/firmware/target/arm/rk27xx/rk27generic/fmradio-i2c-rk27generic.c @@ -0,0 +1,39 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * $Id$ + * + * Copyright (C) 2013 by Amaury Pouly + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ + +#include "config.h" +#include "system.h" +#include "fmradio_i2c.h" +#include "i2c-rk27xx.h" + +void fmradio_i2c_init(void) +{ +} + +int fmradio_i2c_write(unsigned char address, const unsigned char* buf, int count) +{ + return i2c_write(address, -1, count, buf); +} + +int fmradio_i2c_read(unsigned char address, unsigned char* buf, int count) +{ + return i2c_read(address, -1, count, buf); +} diff --git a/firmware/target/arm/rk27xx/rk27generic/power-rk27generic.c b/firmware/target/arm/rk27xx/rk27generic/power-rk27generic.c index 68594d0f0e..d3feb41597 100644 --- a/firmware/target/arm/rk27xx/rk27generic/power-rk27generic.c +++ b/firmware/target/arm/rk27xx/rk27generic/power-rk27generic.c @@ -38,6 +38,12 @@ void power_init(void) GPIO_PCCON |= (1<<0); } +bool tuner_power(bool status) +{ + (void) status; + return true; +} + unsigned int power_input_status(void) { return (usb_detect() == USB_INSERTED) ? POWER_INPUT_MAIN_CHARGER : POWER_INPUT_NONE; -- cgit v1.2.3