Commit fs#9404 (iAudio 7 updates by vitja). Also fixes play/pause behaviour on D2.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18528 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
9cf7ef68c9
commit
1a08f46329
11 changed files with 62 additions and 33 deletions
|
@ -43,6 +43,7 @@ static const struct button_mapping button_context_standard[] = {
|
|||
{ ACTION_STD_OK, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY },
|
||||
{ ACTION_STD_OK, BUTTON_PLAY, BUTTON_NONE },
|
||||
{ ACTION_STD_CANCEL, BUTTON_STOP, BUTTON_NONE },
|
||||
{ ACTION_STD_CANCEL, BUTTON_POWER, BUTTON_NONE },
|
||||
|
||||
{ ACTION_STD_MENU, BUTTON_MENU|BUTTON_REL, BUTTON_MENU },
|
||||
{ ACTION_STD_CONTEXT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY },
|
||||
|
@ -69,6 +70,7 @@ static const struct button_mapping button_context_wps[] = {
|
|||
{ ACTION_WPS_SEEKFWD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
|
||||
{ ACTION_WPS_STOPSEEK, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT|BUTTON_REPEAT },
|
||||
|
||||
{ ACTION_WPS_PLAY, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY },
|
||||
{ ACTION_WPS_STOP, BUTTON_STOP, BUTTON_NONE },
|
||||
|
||||
LAST_ITEM_IN_LIST
|
||||
|
|
|
@ -268,6 +268,15 @@ void I_ShutdownGraphics(void)
|
|||
#define DOOMBUTTON_ESC BUTTON_POWER
|
||||
#define DOOMBUTTON_ENTER BUTTON_MENU
|
||||
#define DOOMBUTTON_WEAPON BUTTON_DISPLAY
|
||||
#elif CONFIG_KEYPAD == IAUDIO67_PAD
|
||||
#define DOOMBUTTON_ESC BUTTON_POWER
|
||||
#define DOOMBUTTON_UP BUTTON_STOP
|
||||
#define DOOMBUTTON_DOWN BUTTON_PLAY
|
||||
#define DOOMBUTTON_LEFT BUTTON_LEFT
|
||||
#define DOOMBUTTON_RIGHT BUTTON_RIGHT
|
||||
#define DOOMBUTTON_SHOOT BUTTON_VOLUP
|
||||
#define DOOMBUTTON_OPEN BUTTON_VOLDOWN
|
||||
#define DOOMBUTTON_ENTER BUTTON_MENU
|
||||
#else
|
||||
#error Keymap not defined!
|
||||
#endif
|
||||
|
|
|
@ -31,6 +31,9 @@
|
|||
/* define this if you can invert the colours on your LCD */
|
||||
//#define HAVE_LCD_INVERT
|
||||
|
||||
/* define this if you want album art for this target */
|
||||
#define HAVE_ALBUMART
|
||||
|
||||
/* define this if you have access to the quickscreen */
|
||||
#define HAVE_QUICKSCREEN
|
||||
|
||||
|
@ -100,11 +103,8 @@
|
|||
/* Codec is slave on serial bus */
|
||||
#define CODEC_SLAVE
|
||||
|
||||
/* Define this if you have the TLV320 audio codec */
|
||||
//#define HAVE_TLV320
|
||||
|
||||
/* TLV320 has no tone controls, so we use the software ones */
|
||||
//#define HAVE_SW_TONE_CONTROLS
|
||||
/* WM8731 has no tone controls, so we use the software ones */
|
||||
#define HAVE_SW_TONE_CONTROLS
|
||||
|
||||
/* Define this for LCD backlight available */
|
||||
#define HAVE_BACKLIGHT
|
||||
|
@ -132,9 +132,6 @@
|
|||
/* Define this to the CPU frequency */
|
||||
#define CPU_FREQ 120000000
|
||||
|
||||
/* Offset ( in the firmware file's header ) to the file length */
|
||||
//#define FIRMWARE_OFFSET_FILE_LENGTH 0
|
||||
|
||||
/* Offset ( in the firmware file's header ) to the file CRC */
|
||||
#define FIRMWARE_OFFSET_FILE_CRC 0
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
* \/ \/ \/ \/ \/
|
||||
* $Id$
|
||||
*
|
||||
* Copyright (C) 2008 Vitja Makarov
|
||||
* Copyright (C) 2004 by Linus Nielsen Feltzing
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
|
|
|
@ -207,7 +207,11 @@ void pcm_play_unlock(void)
|
|||
|
||||
void pcm_play_dma_pause(bool pause)
|
||||
{
|
||||
(void) pause;
|
||||
if (pause) {
|
||||
play_stop_pcm();
|
||||
} else {
|
||||
play_start_pcm();
|
||||
}
|
||||
}
|
||||
|
||||
size_t pcm_get_bytes_waiting(void)
|
||||
|
@ -251,11 +255,12 @@ const void * pcm_rec_dma_get_peak_buffer(int *count)
|
|||
|
||||
void pcm_record_more(void *start, size_t size)
|
||||
{
|
||||
(void) start;
|
||||
(void) size;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(COWON_D2)
|
||||
/* TODO: hardcoded hex values differs for tcc7xx and tcc8xx */
|
||||
#if defined(CPU_TCC77X) || defined(CPU_TCC780X)
|
||||
void fiq_handler(void) ICODE_ATTR __attribute__((naked));
|
||||
void fiq_handler(void)
|
||||
{
|
||||
|
@ -266,10 +271,14 @@ void fiq_handler(void)
|
|||
* r0-r3 and r12 is a working register.
|
||||
*/
|
||||
asm volatile (
|
||||
#if defined(CPU_TCC780X)
|
||||
"mov r8, #0xc000 \n" /* DAI_TX_IRQ_MASK | DAI_RX_IRQ_MASK */
|
||||
"ldr r9, =0xf3001004 \n" /* CREQ */
|
||||
#elif defined(CPU_TCC77X)
|
||||
"mov r8, #0x0030 \n" /* DAI_TX_IRQ_MASK | DAI_RX_IRQ_MASK */
|
||||
"ldr r9, =0x80000104 \n" /* CREQ */
|
||||
#endif
|
||||
"str r8, [r9] \n" /* clear DAI IRQs */
|
||||
|
||||
"ldmia r11, { r8-r9 } \n" /* r8 = p, r9 = size */
|
||||
"cmp r9, #0x10 \n" /* is size <16? */
|
||||
"blt .more_data \n" /* if so, ask pcmbuf for more data */
|
||||
|
|
|
@ -131,6 +131,15 @@ copied_start:
|
|||
msr cpsr, r0
|
||||
ldr sp, =fiq_stack
|
||||
|
||||
#ifndef BOOTLOADER
|
||||
/* Load the banked FIQ mode registers with useful values here.
|
||||
These values will be used in the FIQ handler in pcm-telechips.c */
|
||||
.equ DADO_BASE, 0x80000020
|
||||
|
||||
ldr r10, =DADO_BASE
|
||||
ldr r11, =dma_play_data
|
||||
#endif
|
||||
|
||||
/* Let abort and undefined modes use IRQ stack */
|
||||
mov r0,#0xd7
|
||||
msr cpsr, r0
|
||||
|
|
|
@ -86,7 +86,7 @@ unsigned short ata2501_read(void)
|
|||
return ret;
|
||||
}
|
||||
|
||||
#define ATA2501_TEST
|
||||
//#define ATA2501_TEST
|
||||
#ifdef ATA2501_TEST
|
||||
#include "lcd.h"
|
||||
#include "sprintf.h"
|
||||
|
@ -108,7 +108,7 @@ void ata2501_test(void)
|
|||
|
||||
while (1) {
|
||||
unsigned short data;
|
||||
int i, line = 0;
|
||||
int line = 0;
|
||||
|
||||
data = ata2501_read();
|
||||
lcd_clear_display();
|
||||
|
|
|
@ -31,6 +31,7 @@
|
|||
#include <cpu.h>
|
||||
#include <lcd.h>
|
||||
#include <system-target.h>
|
||||
#include <panic.h>
|
||||
|
||||
#include "hd66789r.h"
|
||||
|
||||
|
@ -142,7 +143,7 @@ void lcd_enable(bool on)
|
|||
|
||||
if (on) {
|
||||
_display_on();
|
||||
// lcd_call_enable_hook();
|
||||
lcd_call_enable_hook();
|
||||
} else {
|
||||
/** Off sequence according to datasheet, p. 130 **/
|
||||
lcd_write_reg(R_FRAME_CYCLE_CONTROL, 0x0002); /* EQ=0, 18 clks/line */
|
||||
|
@ -242,6 +243,13 @@ void lcd_blit_yuv(unsigned char *const src[3],
|
|||
int src_x, int src_y, int stride,
|
||||
int x, int y, int width, int height)
|
||||
{
|
||||
(void) src;
|
||||
(void) src_x;
|
||||
(void) src_y;
|
||||
(void) stride;
|
||||
(void) x;
|
||||
(void) y;
|
||||
|
||||
if (!display_on)
|
||||
return;
|
||||
|
||||
|
|
|
@ -73,6 +73,7 @@ void power_touch_panel(bool on)
|
|||
|
||||
void ide_power_enable(bool on)
|
||||
{
|
||||
(void) on;
|
||||
}
|
||||
|
||||
bool ide_powered(void)
|
||||
|
|
|
@ -777,13 +777,7 @@ static inline void core_sleep(void)
|
|||
"msr cpsr_c, r0 \n" /* Enable IRQ, restore FIQ */
|
||||
: : : "r0", "r1", "r2");
|
||||
}
|
||||
#elif defined(CPU_TCC77X)
|
||||
static inline void core_sleep(void)
|
||||
{
|
||||
#warning TODO: Implement core_sleep
|
||||
enable_irq();
|
||||
}
|
||||
#elif defined(CPU_TCC780X)
|
||||
#elif defined(CPU_TCC780X) || defined(CPU_TCC77X)
|
||||
static inline void core_sleep(void)
|
||||
{
|
||||
/* Single core only for now. Use the generic ARMv5 wait for IRQ */
|
||||
|
|
2
tools/configure
vendored
2
tools/configure
vendored
|
@ -1294,7 +1294,7 @@ fi
|
|||
tool="$rootdir/tools/scramble -add=i7"
|
||||
boottool="$rootdir/tools/scramble -tcc=crc"
|
||||
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
||||
bmp2rb_native="$rootdir/tools/bmp2rb -f 5"
|
||||
bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
|
||||
output="rockbox.iaudio"
|
||||
appextra="recorder:gui"
|
||||
plugins="yes"
|
||||
|
|
Loading…
Reference in a new issue