New config option for optical out on iriver

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6960 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Linus Nielsen Feltzing 2005-07-01 09:42:39 +00:00
parent e02a1a534d
commit 8782bc8392
6 changed files with 39 additions and 4 deletions

View file

@ -3136,3 +3136,9 @@ desc: in onplay menu. insert a track/playlist randomly into dynamic playlist
eng: "Insert shuffled" eng: "Insert shuffled"
voice: voice:
new: new:
id: LANG_SPDIF_ENABLE
desc: in playback settings menu. enable/disable the optical out
eng: "Optical output"
voice:
new:

View file

@ -400,7 +400,11 @@ static const struct bit_entry hd_bits[] =
{3, S_O(backlight_fade_out), 3, "backlight fade out", {3, S_O(backlight_fade_out), 3, "backlight fade out",
"off,500ms,1s,2s,3s,4s,5s,10s"}, "off,500ms,1s,2s,3s,4s,5s,10s"},
#endif #endif
#ifdef HAVE_SPDIF_POWER
{1, S_O(spdif_enable), false, "spdif enable", off_on},
#endif
/* new stuff to be added at the end */ /* new stuff to be added at the end */
/* Sum of all bit sizes must not grow beyond 0xB8*8 = 1472 */ /* Sum of all bit sizes must not grow beyond 0xB8*8 = 1472 */
@ -840,6 +844,10 @@ void settings_apply(void)
#if CONFIG_HWCODEC == MASNONE && !defined(SIMULATOR) #if CONFIG_HWCODEC == MASNONE && !defined(SIMULATOR)
pcm_crossfade_enable(global_settings.crossfade); pcm_crossfade_enable(global_settings.crossfade);
#endif #endif
#ifdef HAVE_SPDIF_POWER
spdif_power_enable(global_settings.spdif_enable);
#endif
} }

View file

@ -204,6 +204,10 @@ struct user_settings
int battery_capacity; /* in mAh */ int battery_capacity; /* in mAh */
int battery_type; /* for units which can take multiple types (Ondio). */ int battery_type; /* for units which can take multiple types (Ondio). */
#ifdef HAVE_SPDIF_POWER
bool spdif_enable; /* S/PDIF power on/off */
#endif
/* resume settings */ /* resume settings */
bool resume; /* resume option: 0=off, 1=on */ bool resume; /* resume option: 0=off, 1=on */

View file

@ -45,6 +45,8 @@
#include "talk.h" #include "talk.h"
#include "timefuncs.h" #include "timefuncs.h"
#include "misc.h" #include "misc.h"
#include "power.h"
#ifdef HAVE_LCD_BITMAP #ifdef HAVE_LCD_BITMAP
#include "peakmeter.h" #include "peakmeter.h"
#endif #endif
@ -659,6 +661,18 @@ static bool resume(void)
return set_bool( str(LANG_RESUME), &global_settings.resume); return set_bool( str(LANG_RESUME), &global_settings.resume);
} }
#ifdef HAVE_SPDIF_POWER
static bool spdif(void)
{
bool rc = set_bool_options(str(LANG_SPDIF_ENABLE),
&global_settings.spdif_enable,
STR(LANG_ON),
STR(LANG_OFF),
spdif_power_enable);
return rc;
}
#endif
static bool autocreatebookmark(void) static bool autocreatebookmark(void)
{ {
bool retval = false; bool retval = false;
@ -1120,6 +1134,9 @@ static bool playback_settings_menu(void)
{ ID2P(LANG_FADE_ON_STOP), set_fade_on_stop }, { ID2P(LANG_FADE_ON_STOP), set_fade_on_stop },
#if CONFIG_HWCODEC == MASNONE #if CONFIG_HWCODEC == MASNONE
{ ID2P(LANG_CROSSFADE), crossfade }, { ID2P(LANG_CROSSFADE), crossfade },
#endif
#ifdef HAVE_SPDIF_POWER
{ ID2P(LANG_SPDIF_ENABLE), spdif },
#endif #endif
{ ID2P(LANG_ID3_ORDER), id3_order }, { ID2P(LANG_ID3_ORDER), id3_order },
}; };

View file

@ -71,7 +71,7 @@ void power_init(void)
GPIO_ENABLE |= 0x80000000; GPIO_ENABLE |= 0x80000000;
GPIO_FUNCTION |= 0x80000000; GPIO_FUNCTION |= 0x80000000;
#ifdef HAVE_SPDIF_POWER #ifdef HAVE_SPDIF_POWER
spdif_power_enable(true); spdif_power_enable(false);
#endif #endif
#else #else
#ifdef HAVE_POWEROFF_ON_PB5 #ifdef HAVE_POWEROFF_ON_PB5

View file

@ -79,7 +79,7 @@
#define BOOTFILE_EXT ".iriver" #define BOOTFILE_EXT ".iriver"
#define BOOTFILE "rockbox" BOOTFILE_EXT #define BOOTFILE "rockbox" BOOTFILE_EXT
#endif
/* Define this if you can control the S/PDIF power */ /* Define this if you can control the S/PDIF power */
#define HAVE_SPDIF_POWER #define HAVE_SPDIF_POWER
#endif