Fix the Gigabeat red and move it's hw specific code into the target tree
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15562 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
0082da7515
commit
d185f9eba8
6 changed files with 119 additions and 53 deletions
|
@ -88,7 +88,7 @@
|
|||
#endif
|
||||
#include "hwcompat.h"
|
||||
|
||||
#if CONFIG_CPU == DM320
|
||||
#if CONFIG_CPU == DM320 || CONFIG_CPU == S3C2440
|
||||
#include "debug-target.h"
|
||||
#endif
|
||||
|
||||
|
@ -984,16 +984,13 @@ static bool dbg_spdif(void)
|
|||
#elif CONFIG_KEYPAD == IAUDIO_X5M5_PAD
|
||||
# define DEBUG_CANCEL BUTTON_REC
|
||||
|
||||
#elif CONFIG_KEYPAD == GIGABEAT_PAD
|
||||
# define DEBUG_CANCEL BUTTON_A
|
||||
|
||||
#elif CONFIG_KEYPAD == IRIVER_H10_PAD
|
||||
# define DEBUG_CANCEL BUTTON_REW
|
||||
|
||||
#elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \
|
||||
(CONFIG_KEYPAD == SANSA_C200_PAD)
|
||||
# define DEBUG_CANCEL BUTTON_LEFT
|
||||
#endif /* key definitios */
|
||||
#endif /* key definitions */
|
||||
|
||||
/* Test code!!! */
|
||||
bool dbg_ports(void)
|
||||
|
@ -1265,54 +1262,8 @@ bool dbg_ports(void)
|
|||
if (button_get_w_tmo(HZ/10) == (DEBUG_CANCEL|BUTTON_REL))
|
||||
return false;
|
||||
}
|
||||
#elif CONFIG_CPU == S3C2440
|
||||
char buf[50];
|
||||
int line;
|
||||
|
||||
lcd_setmargins(0, 0);
|
||||
lcd_clear_display();
|
||||
lcd_setfont(FONT_SYSFIXED);
|
||||
|
||||
while(1)
|
||||
{
|
||||
line = 0;
|
||||
snprintf(buf, sizeof(buf), "[Ports and Registers]"); lcd_puts(0, line++, buf);
|
||||
|
||||
snprintf(buf, sizeof(buf), "GPACON: %08x GPBCON: %08x", GPACON, GPBCON); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPADAT: %08x GPBDAT: %08x", GPADAT, GPBDAT); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPAUP: %08x GPBUP: %08x", 0, GPBUP); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPCCON: %08x GPDCON: %08x", GPCCON, GPDCON); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPCDAT: %08x GPDDAT: %08x", GPCDAT, GPDDAT); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPCUP: %08x GPDUP: %08x", GPCUP, GPDUP); lcd_puts(0, line++, buf);
|
||||
|
||||
snprintf(buf, sizeof(buf), "GPCCON: %08x GPDCON: %08x", GPCCON, GPDCON); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPCDAT: %08x GPDDAT: %08x", GPCDAT, GPDDAT); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPCUP: %08x GPDUP: %08x", GPCUP, GPDUP); lcd_puts(0, line++, buf);
|
||||
|
||||
snprintf(buf, sizeof(buf), "GPECON: %08x GPFCON: %08x", GPECON, GPFCON); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPEDAT: %08x GPFDAT: %08x", GPEDAT, GPFDAT); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPEUP: %08x GPFUP: %08x", GPEUP, GPFUP); lcd_puts(0, line++, buf);
|
||||
|
||||
snprintf(buf, sizeof(buf), "GPGCON: %08x GPHCON: %08x", GPGCON, GPHCON); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPGDAT: %08x GPHDAT: %08x", GPGDAT, GPHDAT); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPGUP: %08x GPHUP: %08x", GPGUP, GPHUP); lcd_puts(0, line++, buf);
|
||||
|
||||
snprintf(buf, sizeof(buf), "GPJCON: %08x", GPJCON); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPJDAT: %08x", GPJDAT); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPJUP: %08x", GPJUP); lcd_puts(0, line++, buf);
|
||||
|
||||
line++;
|
||||
|
||||
snprintf(buf, sizeof(buf), "SRCPND: %08x INTMOD: %08x", SRCPND, INTMOD); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "INTMSK: %08x INTPND: %08x", INTMSK, INTPND); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "CLKCON: %08x CLKSLOW: %08x", CLKCON, CLKSLOW); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "MPLLCON: %08x UPLLCON: %08x", MPLLCON, UPLLCON); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "CLKDIVN: %08x", CLKDIVN); lcd_puts(0, line++, buf);
|
||||
|
||||
lcd_update();
|
||||
if (button_get_w_tmo(HZ/10) == (DEBUG_CANCEL|BUTTON_REL))
|
||||
return false;
|
||||
}
|
||||
#else
|
||||
return __dbg_ports();
|
||||
#endif /* CPU */
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -584,6 +584,7 @@ target/arm/usb-fw-pp502x.c
|
|||
#ifndef SIMULATOR
|
||||
target/arm/lcd-as-memframe.S
|
||||
target/arm/mmu-arm.c
|
||||
target/arm/s3c2440/debug-s3c2440.c
|
||||
target/arm/s3c2440/gigabeat-fx/adc-meg-fx.c
|
||||
target/arm/s3c2440/gigabeat-fx/ata-meg-fx.c
|
||||
target/arm/s3c2440/gigabeat-fx/backlight-meg-fx.c
|
||||
|
|
85
firmware/target/arm/s3c2440/debug-s3c2440.c
Executable file
85
firmware/target/arm/s3c2440/debug-s3c2440.c
Executable file
|
@ -0,0 +1,85 @@
|
|||
/***************************************************************************
|
||||
* __________ __ ___.
|
||||
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
|
||||
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
|
||||
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
|
||||
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
|
||||
* \/ \/ \/ \/ \/
|
||||
* $Id$
|
||||
*
|
||||
* Copyright (C) 2007 by Karl Kurbjun
|
||||
*
|
||||
* All files in this archive are subject to the GNU General Public License.
|
||||
* See the file COPYING in the source tree root for full license agreement.
|
||||
*
|
||||
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||
* KIND, either express or implied.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#include "config.h"
|
||||
#include "cpu.h"
|
||||
#include "system.h"
|
||||
#include "string.h"
|
||||
#include <stdbool.h>
|
||||
#include "button.h"
|
||||
#include "lcd.h"
|
||||
#include "sprintf.h"
|
||||
#include "font.h"
|
||||
#include "debug-target.h"
|
||||
|
||||
bool __dbg_hw_info(void)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
bool __dbg_ports(void)
|
||||
{
|
||||
char buf[50];
|
||||
int line;
|
||||
|
||||
lcd_setmargins(0, 0);
|
||||
lcd_clear_display();
|
||||
lcd_setfont(FONT_SYSFIXED);
|
||||
|
||||
while(1)
|
||||
{
|
||||
line = 0;
|
||||
snprintf(buf, sizeof(buf), "[Ports and Registers]"); lcd_puts(0, line++, buf);
|
||||
|
||||
snprintf(buf, sizeof(buf), "GPACON: %08x GPBCON: %08x", GPACON, GPBCON); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPADAT: %08x GPBDAT: %08x", GPADAT, GPBDAT); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPAUP: %08x GPBUP: %08x", 0, GPBUP); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPCCON: %08x GPDCON: %08x", GPCCON, GPDCON); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPCDAT: %08x GPDDAT: %08x", GPCDAT, GPDDAT); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPCUP: %08x GPDUP: %08x", GPCUP, GPDUP); lcd_puts(0, line++, buf);
|
||||
|
||||
snprintf(buf, sizeof(buf), "GPCCON: %08x GPDCON: %08x", GPCCON, GPDCON); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPCDAT: %08x GPDDAT: %08x", GPCDAT, GPDDAT); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPCUP: %08x GPDUP: %08x", GPCUP, GPDUP); lcd_puts(0, line++, buf);
|
||||
|
||||
snprintf(buf, sizeof(buf), "GPECON: %08x GPFCON: %08x", GPECON, GPFCON); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPEDAT: %08x GPFDAT: %08x", GPEDAT, GPFDAT); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPEUP: %08x GPFUP: %08x", GPEUP, GPFUP); lcd_puts(0, line++, buf);
|
||||
|
||||
snprintf(buf, sizeof(buf), "GPGCON: %08x GPHCON: %08x", GPGCON, GPHCON); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPGDAT: %08x GPHDAT: %08x", GPGDAT, GPHDAT); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPGUP: %08x GPHUP: %08x", GPGUP, GPHUP); lcd_puts(0, line++, buf);
|
||||
|
||||
snprintf(buf, sizeof(buf), "GPJCON: %08x", GPJCON); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPJDAT: %08x", GPJDAT); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "GPJUP: %08x", GPJUP); lcd_puts(0, line++, buf);
|
||||
|
||||
line++;
|
||||
|
||||
snprintf(buf, sizeof(buf), "SRCPND: %08x INTMOD: %08x", SRCPND, INTMOD); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "INTMSK: %08x INTPND: %08x", INTMSK, INTPND); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "CLKCON: %08x CLKSLOW: %08x", CLKCON, CLKSLOW); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "MPLLCON: %08x UPLLCON: %08x", MPLLCON, UPLLCON); lcd_puts(0, line++, buf);
|
||||
snprintf(buf, sizeof(buf), "CLKDIVN: %08x", CLKDIVN); lcd_puts(0, line++, buf);
|
||||
|
||||
lcd_update();
|
||||
if (button_get_w_tmo(HZ/10) == (DEBUG_CANCEL|BUTTON_REL))
|
||||
return false;
|
||||
}
|
||||
}
|
23
firmware/target/arm/s3c2440/debug-target.h
Executable file
23
firmware/target/arm/s3c2440/debug-target.h
Executable file
|
@ -0,0 +1,23 @@
|
|||
/***************************************************************************
|
||||
* __________ __ ___.
|
||||
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
|
||||
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
|
||||
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
|
||||
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
|
||||
* \/ \/ \/ \/ \/
|
||||
* $Id$
|
||||
*
|
||||
* Copyright (C) 2007 by Karl Kurbjun
|
||||
*
|
||||
* All files in this archive are subject to the GNU General Public License.
|
||||
* See the file COPYING in the source tree root for full license agreement.
|
||||
*
|
||||
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||
* KIND, either express or implied.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
#define DEBUG_CANCEL BUTTON_A
|
||||
bool __dbg_hw_info(void);
|
||||
bool __dbg_ports(void);
|
||||
|
|
@ -28,6 +28,11 @@
|
|||
#include "font.h"
|
||||
#include "debug-target.h"
|
||||
|
||||
bool __dbg_ports(void)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
bool __dbg_hw_info(void)
|
||||
{
|
||||
int line = 0, button;
|
||||
|
|
|
@ -18,3 +18,4 @@
|
|||
****************************************************************************/
|
||||
|
||||
bool __dbg_hw_info(void);
|
||||
bool __dbg_ports(void);
|
||||
|
|
Loading…
Reference in a new issue