Onda VX747:

* Rework battery reading
 * Get power off back working
 * Add time to debug view
 * Convert TABs to spaces in firmware/export/mips*.h


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20024 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Maurus Cuelenaere 2009-02-16 22:49:58 +00:00
parent 67a5c56103
commit 360d3d720b
7 changed files with 2165 additions and 2163 deletions

View file

@ -85,9 +85,14 @@
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT
#define HAVE_BACKLIGHT_BRIGHTNESS
/* define this if the backlight can be set to a brightness */
#define __BACKLIGHT_INIT
/* Which backlight fading type? */
//#define CONFIG_BACKLIGHT_FADING BACKLIGHT_FADING_PWM
/* Main LCD backlight brightness range and defaults */
#define MIN_BRIGHTNESS_SETTING 100
#define MAX_BRIGHTNESS_SETTING 300
@ -95,7 +100,7 @@
#define DEFAULT_DIMNESS_SETTING 100 /* "most dim" */
/* Define this if you have a software controlled poweroff */
//#define HAVE_SW_POWEROFF
#define HAVE_SW_POWEROFF
/* The number of bytes reserved for loadable codecs */
#define CODEC_SIZE 0x100000
@ -108,7 +113,7 @@
#define CONFIG_I2C I2C_JZ47XX
/* TLV320 has no tone controls, so we use the software ones */
/* has no tone controls, so we use the software ones */
//#define HAVE_SW_TONE_CONTROLS
/*#define HW_SAMPR_CAPS (SAMPR_CAP_88 | SAMPR_CAP_44 | SAMPR_CAP_22 | \
@ -141,9 +146,6 @@
/* Virtual LED (icon) */
#define CONFIG_LED LED_VIRTUAL
/* define this if the backlight can be set to a brightness */
#define __BACKLIGHT_INIT
/* Offset ( in the firmware file's header ) to the file CRC */
#define FIRMWARE_OFFSET_FILE_CRC 0

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -28,6 +28,7 @@
#include "kernel.h"
#include "font.h"
#include "button.h"
#include "timefuncs.h"
static int line = 0;
static void printf(const char *format, ...)
@ -150,6 +151,7 @@ bool __dbg_ports(void)
bool __dbg_hw_info(void)
{
int btn = 0, touch;
struct tm *cur_time;
lcd_setfont(FONT_SYSFIXED);
while(btn ^ BUTTON_POWER)
@ -159,7 +161,11 @@ bool __dbg_hw_info(void)
display_clocks();
display_enabled_clocks();
btn = button_read_device(&touch);
cur_time = get_time();
printf("X: %d Y: %d BTN: 0x%X", touch>>16, touch&0xFFFF, btn);
printf("%02d/%02d/%04d %02d:%02d:%02d", cur_time->tm_mday,
cur_time->tm_mon, cur_time->tm_year, cur_time->tm_hour,
cur_time->tm_min, cur_time->tm_sec);
lcd_update();
sleep(HZ/16);
}

View file

@ -108,34 +108,25 @@ const unsigned short percent_to_volt_charge[11] =
/* Returns battery voltage from ADC [millivolts] */
unsigned int battery_adc_voltage(void)
{
unsigned int val, i;
unsigned int dummy, timeout=1000;
mutex_lock(&battery_mtx);
val = REG_SADC_BATDAT;
val = REG_SADC_BATDAT;
dummy = REG_SADC_BATDAT;
dummy = REG_SADC_BATDAT;
REG_SADC_ENA |= SADC_ENA_PBATEN;
for(i=0; i<4; i++)
{
bat_val = 0;
/* primitive wakeup event */
while(bat_val == 0)
sleep(0);
val += bat_val;
}
REG_SADC_ENA &= ~SADC_ENA_PBATEN;
bat_val = 0;
val /= 4;
/* primitive wakeup event */
while(bat_val == 0 && timeout--)
sleep(0);
logf("%d %d %d", val, (val*BATTERY_SCALE_FACTOR)>>12,
(val*0xAAAAAAAB >> 32) >> 1);
logf("%d %d", bat_val, (bat_val*BATTERY_SCALE_FACTOR)>>12);
mutex_unlock(&battery_mtx);
return (val*BATTERY_SCALE_FACTOR)>>12;
return (bat_val*BATTERY_SCALE_FACTOR)>>12;
}
void button_init_device(void)

View file

@ -509,6 +509,9 @@ void system_exception_wait(void)
void power_off(void)
{
/* Enable RTC clock */
__cpm_start_rtc();
/* Put system into hibernate mode */
__rtc_clear_alarm_flag();
__rtc_clear_hib_stat_all();