diff options
| author | Jens Arnold <amiconn@rockbox.org> | 2004-11-22 01:54:26 +0000 |
|---|---|---|
| committer | Jens Arnold <amiconn@rockbox.org> | 2004-11-22 01:54:26 +0000 |
| commit | dbd11c9b42f760a464e89de0f8aff328c43b4de7 (patch) | |
| tree | 98283f1a68cd76aca11c753979c12bd97c4978e0 | |
| parent | 67b17e118f40c80e7fb260f401cb61c7e733e5de (diff) | |
| download | rockbox-dbd11c9b42f760a464e89de0f8aff328c43b4de7.zip rockbox-dbd11c9b42f760a464e89de0f8aff328c43b4de7.tar.gz rockbox-dbd11c9b42f760a464e89de0f8aff328c43b4de7.tar.bz2 rockbox-dbd11c9b42f760a464e89de0f8aff328c43b4de7.tar.xz | |
The player also has MAS poweron reset, handle it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5456 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | firmware/drivers/mas.c | 15 | ||||
| -rw-r--r-- | firmware/mp3_playback.c | 4 |
2 files changed, 15 insertions, 4 deletions
diff --git a/firmware/drivers/mas.c b/firmware/drivers/mas.c index 52a91c5..95697a7 100644 --- a/firmware/drivers/mas.c +++ b/firmware/drivers/mas.c @@ -266,11 +266,18 @@ static int mas_devread(unsigned long *dest, int len) return ret; } -#if (CONFIG_HWCODEC == MAS3587F) || (CONFIG_HWCODEC == MAS3539F) void mas_reset(void) { or_b(0x01, &PAIORH); - + +#if CONFIG_HWCODEC == MAS3507D + or_b(0x01, &PAIORH); + and_b(~0x01, &PADRH); + sleep(HZ/100); + or_b(0x01, &PADRH); + sleep(HZ/5); + +#elif (CONFIG_HWCODEC == MAS3587F) || (CONFIG_HWCODEC == MAS3539F) if(old_recorder) { /* Older recorder models don't invert the POR signal */ @@ -285,9 +292,11 @@ void mas_reset(void) sleep(HZ/100); or_b(0x01, &PADRH); sleep(HZ/5); - } + } +#endif } +#if (CONFIG_HWCODEC == MAS3587F) || (CONFIG_HWCODEC == MAS3539F) int mas_direct_config_read(unsigned char reg) { int ret = 0; diff --git a/firmware/mp3_playback.c b/firmware/mp3_playback.c index a7284ae..cc02505 100644 --- a/firmware/mp3_playback.c +++ b/firmware/mp3_playback.c @@ -938,7 +938,9 @@ void mp3_init(int volume, int bass, int treble, int balance, int loudness, or_b(0x01, &PBIORH); /* output for PB8 */ #endif -#if CONFIG_HWCODEC == MAS3587F +#if CONFIG_HWCODEC == MAS3507D + mas_reset(); +#elif CONFIG_HWCODEC == MAS3587F or_b(0x08, &PAIORH); /* output for /PR */ init_playback(); |