diff options
Diffstat (limited to 'firmware/export')
| -rw-r--r-- | firmware/export/audiohw.h | 4 | ||||
| -rw-r--r-- | firmware/export/config/ibassodx50.h | 82 | ||||
| -rw-r--r-- | firmware/export/config/ibassodx90.h | 61 | ||||
| -rw-r--r-- | firmware/export/hosted_codec.h | 2 | ||||
| -rw-r--r-- | firmware/export/pcm_mixer.h | 6 | ||||
| -rw-r--r-- | firmware/export/rbpaths.h | 7 |
6 files changed, 91 insertions, 71 deletions
diff --git a/firmware/export/audiohw.h b/firmware/export/audiohw.h index 7c5424a..d7bc3dd 100644 --- a/firmware/export/audiohw.h +++ b/firmware/export/audiohw.h @@ -114,6 +114,10 @@ struct sound_settings_info #elif (CONFIG_PLATFORM & (PLATFORM_ANDROID | PLATFORM_MAEMO\ | PLATFORM_PANDORA | PLATFORM_SDL)) #include "hosted_codec.h" +#elif defined(DX50) +#include "codec-dx50.h" +#elif defined(DX90) +#include "codec-dx90.h" #endif /* convert caps into defines */ diff --git a/firmware/export/config/ibassodx50.h b/firmware/export/config/ibassodx50.h index 5bbb515..e26d43c 100644 --- a/firmware/export/config/ibassodx50.h +++ b/firmware/export/config/ibassodx50.h @@ -1,14 +1,35 @@ -/* - * This config file is for Rockbox as an application on Android - */ +/*************************************************************************** + * __________ __ ___ + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * + * Copyright (C) 2014 by Ilia Sergachev: Initial Rockbox port to iBasso DX50 + * Copyright (C) 2014 by Mario Basister: iBasso DX90 port + * Copyright (C) 2014 by Simon Rothen: Initial Rockbox repository submission, additional features + * Copyright (C) 2014 by Udo Schläpfer: Code clean up, additional features + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ + +/* This config file is for Rockbox as an application on Android without JVM. */ /* We don't run on hardware directly */ -#define CONFIG_PLATFORM (PLATFORM_HOSTED|PLATFORM_ANDROID) +#define CONFIG_PLATFORM PLATFORM_HOSTED /* For Rolo and boot loader */ #define MODEL_NUMBER 94 -#define MODEL_NAME "iBasso DX50" +#define MODEL_NAME "iBasso DX50" #define USB_NONE @@ -41,16 +62,15 @@ #define LCD_PIXELFORMAT RGB565 #define HAVE_LCD_ENABLE +#define HAVE_LCD_SLEEP +#define HAVE_LCD_SLEEP_SETTING +/*#define HAVE_LCD_FLIP*/ +#define HAVE_LCD_SHUTDOWN /* define this to indicate your device's keypad */ #define HAVE_TOUCHSCREEN #define HAVE_BUTTON_DATA - -/* define this if you have RTC RAM available for settings */ -//#define HAVE_RTC_RAM - -/* define this if you have a real-time clock */ -//#define CONFIG_RTC APPLICATION +#define HAS_BUTTON_HOLD /* Define this if you have a software controlled poweroff */ #define HAVE_SW_POWEROFF @@ -77,6 +97,10 @@ /* Define this if you do software codec */ #define CONFIG_CODEC SWCODEC +#define HAVE_SW_TONE_CONTROLS +#define HAVE_SW_VOLUME_CONTROL +#define HW_SAMPR_CAPS SAMPR_CAP_ALL +#define HAVE_PLAY_FREQ //#define HAVE_MULTIMEDIA_KEYS #define CONFIG_KEYPAD DX50_PAD @@ -84,39 +108,26 @@ /* define this if the target has volume keys which can be used in the lists */ #define HAVE_VOLUME_IN_LIST -/* define this if the host platform can change volume outside of rockbox */ -//#define PLATFORM_HAS_VOLUME_CHANGE - -#define HAVE_SW_TONE_CONTROLS - -#define HAVE_SW_VOLUME_CONTROL - #define BATTERY_CAPACITY_DEFAULT 2100 /* default battery capacity */ -#define BATTERY_CAPACITY_MIN 1700 /* min. capacity selectable */ -#define BATTERY_CAPACITY_MAX 3200 /* max. capacity selectable */ -#define BATTERY_CAPACITY_INC 50 /* capacity increment */ -#define BATTERY_TYPES_COUNT 1 /* only one type */ +#define BATTERY_CAPACITY_MIN 1700 /* min. capacity selectable */ +#define BATTERY_CAPACITY_MAX 3200 /* max. capacity selectable */ +#define BATTERY_CAPACITY_INC 50 /* capacity increment */ +#define BATTERY_TYPES_COUNT 1 /* only one type */ #define CONFIG_BATTERY_MEASURE VOLTAGE_MEASURE +#define CONFIG_CHARGING CHARGING_MONITOR -#define CONFIG_CHARGING CHARGING_MONITOR - -#define NO_LOW_BATTERY_SHUTDOWN - -/* Define current usage levels. */ -#define CURRENT_NORMAL 210 /* 10 hours from a 2100 mAh battery */ -#define CURRENT_BACKLIGHT 30 /* TBD */ -#define CURRENT_RECORD 0 /* no recording */ - -/* Define this to the CPU frequency */ /* -#define CPU_FREQ 48000000 + 10 hours from a 2100 mAh battery + Based on battery bench with stock Samsung battery. */ +#define CURRENT_NORMAL 210 +#define CURRENT_BACKLIGHT 30 /* TBD */ +#define CURRENT_RECORD 0 /* no recording */ /* define this if the hardware can be powered off while charging */ #define HAVE_POWEROFF_WHILE_CHARGING - /* Offset ( in the firmware file's header ) to the file CRC */ #define FIRMWARE_OFFSET_FILE_CRC 0 @@ -128,9 +139,6 @@ /* Define this if a programmable hotkey is mapped */ #define HAVE_HOTKEY -#define BOOTDIR "/.rockbox" - /* No special storage */ #define CONFIG_STORAGE STORAGE_HOSTFS #define HAVE_STORAGE_FLUSH - diff --git a/firmware/export/config/ibassodx90.h b/firmware/export/config/ibassodx90.h index 68a728e..6de06d9 100644 --- a/firmware/export/config/ibassodx90.h +++ b/firmware/export/config/ibassodx90.h @@ -1,9 +1,30 @@ -/* - * This config file is for Rockbox as an application on Android - */ +/*************************************************************************** + * __________ __ ___ + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * + * Copyright (C) 2014 by Ilia Sergachev: Initial Rockbox port to iBasso DX50 + * Copyright (C) 2014 by Mario Basister: iBasso DX90 port + * Copyright (C) 2014 by Simon Rothen: Initial Rockbox repository submission, additional features + * Copyright (C) 2014 by Udo Schläpfer: Code clean up, additional features + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ + +/* This config file is for Rockbox as an application on Android without JVM. */ /* We don't run on hardware directly */ -#define CONFIG_PLATFORM (PLATFORM_HOSTED|PLATFORM_ANDROID) +#define CONFIG_PLATFORM PLATFORM_HOSTED /* For Rolo and boot loader */ #define MODEL_NUMBER 95 @@ -41,16 +62,14 @@ #define LCD_PIXELFORMAT RGB565 #define HAVE_LCD_ENABLE +#define HAVE_LCD_SHUTDOWN +#define HAVE_LCD_SLEEP +#define HAVE_LCD_SLEEP_SETTING /* define this to indicate your device's keypad */ #define HAVE_TOUCHSCREEN #define HAVE_BUTTON_DATA - -/* define this if you have RTC RAM available for settings */ -//#define HAVE_RTC_RAM - -/* define this if you have a real-time clock */ -//#define CONFIG_RTC APPLICATION +#define HAS_BUTTON_HOLD /* Define this if you have a software controlled poweroff */ #define HAVE_SW_POWEROFF @@ -77,6 +96,10 @@ /* Define this if you do software codec */ #define CONFIG_CODEC SWCODEC +#define HAVE_SW_TONE_CONTROLS +#define HAVE_SW_VOLUME_CONTROL +#define HW_SAMPR_CAPS SAMPR_CAP_ALL +#define HAVE_PLAY_FREQ //#define HAVE_MULTIMEDIA_KEYS #define CONFIG_KEYPAD DX50_PAD @@ -84,13 +107,6 @@ /* define this if the target has volume keys which can be used in the lists */ #define HAVE_VOLUME_IN_LIST -/* define this if the host platform can change volume outside of rockbox */ -//#define PLATFORM_HAS_VOLUME_CHANGE - -#define HAVE_SW_TONE_CONTROLS - -#define HAVE_SW_VOLUME_CONTROL - #define BATTERY_CAPACITY_DEFAULT 2100 /* default battery capacity */ #define BATTERY_CAPACITY_MIN 1700 /* min. capacity selectable */ #define BATTERY_CAPACITY_MAX 3200 /* max. capacity selectable */ @@ -101,22 +117,14 @@ #define CONFIG_CHARGING CHARGING_MONITOR -#define NO_LOW_BATTERY_SHUTDOWN - /* Define current usage levels. */ #define CURRENT_NORMAL 210 /* 10 hours from a 2100 mAh battery */ #define CURRENT_BACKLIGHT 30 /* TBD */ #define CURRENT_RECORD 0 /* no recording */ -/* Define this to the CPU frequency */ -/* -#define CPU_FREQ 48000000 -*/ - /* define this if the hardware can be powered off while charging */ #define HAVE_POWEROFF_WHILE_CHARGING - /* Offset ( in the firmware file's header ) to the file CRC */ #define FIRMWARE_OFFSET_FILE_CRC 0 @@ -128,9 +136,6 @@ /* Define this if a programmable hotkey is mapped */ #define HAVE_HOTKEY -#define BOOTDIR "/.rockbox" - /* No special storage */ #define CONFIG_STORAGE STORAGE_HOSTFS #define HAVE_STORAGE_FLUSH - diff --git a/firmware/export/hosted_codec.h b/firmware/export/hosted_codec.h index 00ab099..5391ca8 100644 --- a/firmware/export/hosted_codec.h +++ b/firmware/export/hosted_codec.h @@ -25,9 +25,7 @@ && !(CONFIG_PLATFORM & PLATFORM_MAEMO5) AUDIOHW_SETTING(VOLUME, "dB", 0, 1, -80, 0, 0) #else -#if !defined(DX50) && !defined(DX90) #define AUDIOHW_CAPS (MONO_VOL_CAP) -#endif AUDIOHW_SETTING(VOLUME, "dB", 0, 1, -99, 0, 0) #endif /* CONFIG_PLATFORM & PLATFORM_SDL */ diff --git a/firmware/export/pcm_mixer.h b/firmware/export/pcm_mixer.h index f7f869e..b418a5d 100644 --- a/firmware/export/pcm_mixer.h +++ b/firmware/export/pcm_mixer.h @@ -30,13 +30,15 @@ #if CONFIG_CPU == PP5002 /* There's far less time to do mixing because HW FIFOs are short */ #define MIX_FRAME_SAMPLES 64 -#elif (CONFIG_PLATFORM & PLATFORM_MAEMO5) +#elif (CONFIG_PLATFORM & PLATFORM_MAEMO5) || defined(DX50) || defined(DX90) /* Maemo 5 needs 2048 samples for decent performance. Otherwise the locking overhead inside gstreamer costs too much */ +/* iBasso Devices: Match Rockbox PCM buffer size to ALSA PCM buffer size + to minimize memory transfers. */ #define MIX_FRAME_SAMPLES 2048 +#else /* Assume HW DMA engine is available or sufficient latency exists in the PCM pathway */ -#else #define MIX_FRAME_SAMPLES 256 #endif diff --git a/firmware/export/rbpaths.h b/firmware/export/rbpaths.h index b04d669..fdbf081 100644 --- a/firmware/export/rbpaths.h +++ b/firmware/export/rbpaths.h @@ -40,10 +40,13 @@ #define ROCKBOX_DIR_LEN (sizeof(ROCKBOX_DIR)-1) #endif /* def __PCTOOL__ */ -#if !defined(APPLICATION) || defined(SAMSUNG_YPR0) || defined(SAMSUNG_YPR1) +#if !defined(APPLICATION) || defined(SAMSUNG_YPR0) || defined(SAMSUNG_YPR1) || defined(DX50) || defined(DX90) #if defined(SAMSUNG_YPR0) || defined(SAMSUNG_YPR1) #define HOME_DIR "/mnt/media0" +#elif defined(DX50) || defined(DX90) +/* Where to put save files like recordings, playlists, screen dumps ...*/ +#define HOME_DIR "/mnt/sdcard" #else #define HOME_DIR "/" #endif @@ -80,7 +83,7 @@ #define PLUGIN_DEMOS_DIR PLUGIN_DIR "/demos" #define VIEWERS_DIR PLUGIN_DIR "/viewers" -#if defined(APPLICATION) && !(defined(SAMSUNG_YPR0) || defined(SAMSUNG_YPR1)) +#if defined(APPLICATION) && !(defined(SAMSUNG_YPR0) || defined(SAMSUNG_YPR1) || defined(DX50) || defined(DX90)) #define PLUGIN_DATA_DIR ROCKBOX_DIR "/rocks.data" #define PLUGIN_GAMES_DATA_DIR PLUGIN_DATA_DIR #define PLUGIN_APPS_DATA_DIR PLUGIN_DATA_DIR |