From b422be9bd0ddf517c6e7b804cb161f843939b1e0 Mon Sep 17 00:00:00 2001 From: Amaury Pouly Date: Sat, 19 May 2012 13:48:43 +0200 Subject: Add stub STFM1000 tuner driver Change-Id: I7f82f7b8971de75c92f84d12aaddccc50f3e47b1 --- firmware/drivers/tuner/stfm1000.c | 49 +++++++++++++++++++++++++++++++++++++++ firmware/export/config.h | 2 ++ firmware/export/stfm1000.h | 42 +++++++++++++++++++++++++++++++++ firmware/export/tuner.h | 5 ++++ firmware/tuner.c | 6 +++++ 5 files changed, 104 insertions(+) create mode 100644 firmware/drivers/tuner/stfm1000.c create mode 100644 firmware/export/stfm1000.h diff --git a/firmware/drivers/tuner/stfm1000.c b/firmware/drivers/tuner/stfm1000.c new file mode 100644 index 0000000000..ae96993285 --- /dev/null +++ b/firmware/drivers/tuner/stfm1000.c @@ -0,0 +1,49 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * $Id$ + * + * Copyright (C) 2012 by amaury Pouly + * + * Based on Rockbox iriver bootloader by Linus Nielsen Feltzing + * and the ipodlinux bootloader by Daniel Palffy and Bernard Leach + * + * 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 +#include "kernel.h" +#include "power.h" +#include "tuner.h" /* tuner abstraction interface */ +#include "fmradio.h" +#include "fmradio_i2c.h" /* physical interface driver */ +#include "stfm1000.h" + +void stfm1000_init(void) +{ +} + +int stfm1000_set(int setting, int value) +{ + (void) setting; + (void) value; + return -1; +} + +int stfm1000_get(int setting) +{ + (void) setting; + return -1; +} \ No newline at end of file diff --git a/firmware/export/config.h b/firmware/export/config.h index edd3bb2ba5..e17b152e39 100644 --- a/firmware/export/config.h +++ b/firmware/export/config.h @@ -42,6 +42,7 @@ #define LV240000 0x20 /* Sanyo */ #define IPOD_REMOTE_TUNER 0x40 /* Apple */ #define RDA5802 0x80 /* RDA Microelectronics */ +#define STFM1000 0x100 /* Sigmatel */ /* CONFIG_CODEC */ #define MAS3587F 3587 @@ -294,6 +295,7 @@ Lyre prototype 1 */ #define NAND_SAMSUNG 3 #define NAND_CC 4 /* ChinaChip */ #define NAND_RK27XX 5 +#define NAND_IMX233 6 /* CONFIG_RTC */ #define RTC_M41ST84W 1 /* Archos Recorder */ diff --git a/firmware/export/stfm1000.h b/firmware/export/stfm1000.h new file mode 100644 index 0000000000..2143a81ad4 --- /dev/null +++ b/firmware/export/stfm1000.h @@ -0,0 +1,42 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * + * $Id$ + * + * Tuner header for the STFM1000 + * + * Copyright (C) 2012 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. + * + ****************************************************************************/ + +#ifndef __STFM1000__ +#define __STFM1000__ +#include + +#define HAVE_RADIO_REGION +#define HAVE_RADIO_RSSI + +bool stfm1000_detect(void); +void stfm1000_init(void); +int stfm1000_set(int setting, int value); +int stfm1000_get(int setting); + +#ifndef CONFIG_TUNER_MULTI +#define tuner_set stfm1000_set +#define tuner_get stfm1000_get +#endif + +#endif /* __STFM1000__ */ diff --git a/firmware/export/tuner.h b/firmware/export/tuner.h index 694da7cc6c..050bbd0f33 100644 --- a/firmware/export/tuner.h +++ b/firmware/export/tuner.h @@ -139,6 +139,11 @@ extern int (*tuner_get)(int setting); #include "ipod_remote_tuner.h" #endif +/* SigmaTel/Freescale STFM1000 */ +#if (CONFIG_TUNER & STFM1000) +#include "stfm1000.h" +#endif + #if defined(SIMULATOR) #undef tuner_set int tuner_set(int setting, int value); diff --git a/firmware/tuner.c b/firmware/tuner.c index 278584264b..c9c5bc0639 100644 --- a/firmware/tuner.c +++ b/firmware/tuner.c @@ -94,6 +94,12 @@ void tuner_init(void) rda5802_get, rda5802_init()) #endif + #if (CONFIG_TUNER & STFM1000) + TUNER_TYPE_CASE(STFM1000, + stfm1000_set, + stfm1000_get, + stfm1000_init()) + #endif } } #endif /* SIMULATOR */ -- cgit v1.2.3