1
0
Fork 0
forked from len0rd/rockbox

D2: Add the tuner_power() function which was missing from the previous FM commit.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17999 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Rob Purchase 2008-07-09 20:42:47 +00:00
parent 34216463be
commit 0eb51e8a73

View file

@ -99,6 +99,55 @@ bool charger_inserted(void)
}
#endif
#if CONFIG_TUNER
/** Tuner **/
static bool powered = false;
bool tuner_power(bool status)
{
bool old_status;
lv24020lp_lock();
old_status = powered;
if (status != old_status)
{
if (status)
{
/* When power up, host should initialize the 3-wire bus
in host read mode: */
/* 1. Set direction of the DATA-line to input-mode. */
GPIOC_DIR &= ~(1 << 30);
/* 2. Drive NR_W low */
GPIOC_CLEAR = (1 << 31);
GPIOC_DIR |= (1 << 31);
/* 3. Drive CLOCK high */
GPIOC_SET = (1 << 29);
GPIOC_DIR |= (1 << 29);
lv24020lp_power(true);
}
else
{
lv24020lp_power(false);
/* set all as inputs */
GPIOC_DIR &= ~((1 << 29) | (1 << 30) | (1 << 31));
}
powered = status;
}
lv24020lp_unlock();
return old_status;
}
#endif /* CONFIG_TUNER */
#else /* SIMULATOR */
bool charger_inserted(void)