diff options
| author | Robert Keevil <rkeevil+rockbox@gmail.com> | 2009-07-13 21:09:39 +0000 |
|---|---|---|
| committer | Robert Keevil <rkeevil+rockbox@gmail.com> | 2009-07-13 21:09:39 +0000 |
| commit | eea149bd1399e749a6dae8b3a6fe5ff076ead985 (patch) | |
| tree | a131998421757859c25c567c657223ece0430c31 /firmware/export | |
| parent | 5f6998bde9b8a7a7aa61df602202ff41feb13ea1 (diff) | |
| download | rockbox-eea149bd1399e749a6dae8b3a6fe5ff076ead985.zip rockbox-eea149bd1399e749a6dae8b3a6fe5ff076ead985.tar.gz rockbox-eea149bd1399e749a6dae8b3a6fe5ff076ead985.tar.bz2 rockbox-eea149bd1399e749a6dae8b3a6fe5ff076ead985.tar.xz | |
FS#10436 - add the Sansa View to the build system. The bootloader builds but doesn't do anything useful yet.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21848 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/export')
| -rw-r--r-- | firmware/export/config-view.h | 207 | ||||
| -rw-r--r-- | firmware/export/config.h | 11 | ||||
| -rw-r--r-- | firmware/export/cpu.h | 3 | ||||
| -rw-r--r-- | firmware/export/pp6100.h | 31 |
4 files changed, 249 insertions, 3 deletions
diff --git a/firmware/export/config-view.h b/firmware/export/config-view.h new file mode 100644 index 0000000..8170684 --- /dev/null +++ b/firmware/export/config-view.h @@ -0,0 +1,207 @@ +/* + * This config file is for the Sandisk Sansa View + */ +#define TARGET_TREE /* this target is using the target tree system */ + +/* For Rolo and boot loader */ +#define MODEL_NUMBER 63 +#define MODEL_NAME "Sandisk View" + +#define HW_SAMPR_CAPS (SAMPR_CAP_44) + +/* define this if you have recording possibility */ +/* #define HAVE_RECORDING */ + +#define REC_SAMPR_CAPS (SAMPR_CAP_22) +#define REC_FREQ_DEFAULT REC_FREQ_22 /* Default is not 44.1kHz */ +#define REC_SAMPR_DEFAULT SAMPR_22 + +/* Define bitmask of input sources - recordable bitmask can be defined + explicitly if different */ +#define INPUT_SRC_CAPS (SRC_CAP_MIC | SRC_CAP_FMRADIO) + +/* define this if you have a bitmap LCD display */ +#define HAVE_LCD_BITMAP + +/* define this if you have a colour LCD */ +#define HAVE_LCD_COLOR + +/* define this if you want album art for this target */ +#define HAVE_ALBUMART + +/* define this to enable bitmap scaling */ +#define HAVE_BMP_SCALING + +/* define this to enable JPEG decoding */ +#define HAVE_JPEG + +/* define this if you have a light associated with the buttons */ +#define HAVE_BUTTON_LIGHT + +/* define this if you have access to the quickscreen */ +#define HAVE_QUICKSCREEN + +/* define this if you have access to the pitchscreen */ +#define HAVE_PITCHSCREEN + +/* define this if you would like tagcache to build on this target */ +#define HAVE_TAGCACHE + +/* LCD dimensions */ +#define LCD_WIDTH 240 +#define LCD_HEIGHT 320 +#define LCD_DEPTH 16 /* 65536 colours */ +#define LCD_PIXELFORMAT RGB565 /* rgb565 */ + +#ifndef BOOTLOADER +/* define this if you have LCD enable function */ +/* #define HAVE_LCD_ENABLE */ + +/* Define this if your LCD can be put to sleep. HAVE_LCD_ENABLE + should be defined as well. */ +/* #define HAVE_LCD_SLEEP */ +/* #define HAVE_LCD_SLEEP_SETTING */ +#endif + +/* define this if you can flip your LCD */ +#define HAVE_LCD_FLIP + +/* define this if you can invert the colours on your LCD */ +#define HAVE_LCD_INVERT + +/* #define IRAM_LCDFRAMEBUFFER IDATA_ATTR *//* put the lcd frame buffer in IRAM */ + +/* The only difference is that the power/hold is on the left instead of right on Fuze */ +#define CONFIG_KEYPAD SANSA_FUZE_PAD + +/* Define this if you do software codec */ +#define CONFIG_CODEC SWCODEC +/* There is no hardware tone control */ +#define HAVE_SW_TONE_CONTROLS + +/* define this if you have a real-time clock */ +#ifndef BOOTLOADER +/* #define CONFIG_RTC RTC_ */ +#endif + +/* Define this if you have a software controlled poweroff */ +#define HAVE_SW_POWEROFF + +/* Required for MicroSD cards */ +#define HAVE_FAT16SUPPORT + +/* The number of bytes reserved for loadable codecs */ +#define CODEC_SIZE 0x100000 + +/* The number of bytes reserved for loadable plugins */ +#define PLUGIN_BUFFER_SIZE 0x80000 + +#define AB_REPEAT_ENABLE 1 + +/* Define this for LCD backlight available */ +#define HAVE_BACKLIGHT +/* #define HAVE_BACKLIGHT_BRIGHTNESS */ + +/* define this if the unit uses a scrollwheel for navigation */ +#define HAVE_SCROLLWHEEL +/* define to activate advanced wheel acceleration code */ +#define HAVE_WHEEL_ACCELERATION +/* define from which rotation speed [degree/sec] on the acceleration starts */ +#define WHEEL_ACCEL_START 540 +/* define type of acceleration (1 = ^2, 2 = ^3, 3 = ^4) */ +#define WHEEL_ACCELERATION 1 + +/* define this if you have a flash memory storage */ +#define HAVE_FLASH_STORAGE + +/* define this if the flash memory uses the SecureDigital Memory Card protocol */ +#define CONFIG_STORAGE STORAGE_SD + +#define BATTERY_CAPACITY_DEFAULT 750 /* default battery capacity */ +#define BATTERY_CAPACITY_MIN 750 /* min. capacity selectable */ +#define BATTERY_CAPACITY_MAX 750 /* max. capacity selectable */ +#define BATTERY_CAPACITY_INC 0 /* capacity increment */ +#define BATTERY_TYPES_COUNT 1 /* only one type */ + +/* Charging implemented in a target-specific algorithm */ +#define CONFIG_CHARGING CHARGING_SIMPLE +#define HAVE_POWEROFF_WHILE_CHARGING + +/* define current usage levels */ +#define CURRENT_NORMAL 30 /* Toni's measurements in Nov 2008 */ +#define CURRENT_BACKLIGHT 40 /* Screen is about 20, blue LEDs are another 20, so 40 if both */ +#define CURRENT_RECORD 30 /* flash player, so this is just unboosted current*/ + +/* define this if the unit can be powered or charged via USB */ +#define HAVE_USB_POWER + +/** Non-simulator section **/ +#ifndef SIMULATOR + +/* Define this if you have a PortalPlayer PP5024 */ +#define CONFIG_CPU PP6100 + +/* Define this if you want to use the PP5024 i2c interface */ +#define CONFIG_I2C I2C_PP5024 + +/* define this if the hardware can be powered off while charging */ +/* Sansa can't be powered off while charging */ +/* #define HAVE_POWEROFF_WHILE_CHARGING */ + +/* The start address index for ROM builds */ +#define ROM_START 0x00000000 + +/* Define this to the CPU frequency */ +#define CPU_FREQ 250000000 + +/* Type of LCD TODO: hopefully the same as the x5 but check this*/ +#define CONFIG_LCD LCD_VIEW + +/* Offset ( in the firmware file's header ) to the file CRC and data. These are + only used when loading the old format rockbox.e200 file + Required for bootloader/common.c to compile */ +#define FIRMWARE_OFFSET_FILE_CRC 0x0 +#define FIRMWARE_OFFSET_FILE_DATA 0x8 + +#ifndef BOOTLOADER +#define HAVE_MULTIVOLUME +#define HAVE_HOTSWAP +#endif + +/* USB On-the-go */ +/* #define CONFIG_USBOTG USBOTG_ARC */ + +/* enable these for the experimental usb stack */ +#define HAVE_USBSTACK +#define USE_ROCKBOX_USB +#define USB_VENDOR_ID 0x0781 +#define USB_PRODUCT_ID 0x74b1 + +/* Virtual LED (icon) */ +#define CONFIG_LED LED_VIRTUAL + +/* Define this if you have adjustable CPU frequency */ +/* #define HAVE_ADJUSTABLE_CPU_FREQ */ + +#define MI4_FORMAT +#define BOOTFILE_EXT "mi4" +#define BOOTFILE "rockbox." BOOTFILE_EXT +#define BOOTDIR "/.rockbox" + +#define ICODE_ATTR_TREMOR_NOT_MDCT + +#define INCLUDE_TIMEOUT_API + +#endif /* SIMULATOR */ + +/** Port-specific settings **/ + +/* Main LCD backlight brightness range and defaults */ +#define MIN_BRIGHTNESS_SETTING 1 +#define MAX_BRIGHTNESS_SETTING 12 +#define DEFAULT_BRIGHTNESS_SETTING 6 + +/* Default recording levels */ +#define DEFAULT_REC_MIC_GAIN 23 +#define DEFAULT_REC_LEFT_GAIN 23 +#define DEFAULT_REC_RIGHT_GAIN 23 diff --git a/firmware/export/config.h b/firmware/export/config.h index 22d7090..aa3f4f8 100644 --- a/firmware/export/config.h +++ b/firmware/export/config.h @@ -57,6 +57,7 @@ #define PP5020 5020 #define PP5022 5022 #define PP5024 5024 +#define PP6100 6100 #define PNX0101 101 #define S3C2440 2440 #define DSC25 25 @@ -188,7 +189,8 @@ #define LCD_FUZE 32 /* as used by the Sansa Fuze */ #define LCD_LYRE_PROTO1 33 /* as used by the Lyre */ #define LCD_YH925 34 /* as used by Samsung YH-925 (similar to the H10 20GB) */ - +#define LCD_VIEW 35 /* as used by the Sansa View */ + /* LCD_PIXELFORMAT */ #define HORIZONTAL_PACKING 1 #define VERTICAL_PACKING 2 @@ -368,6 +370,8 @@ Lyre prototype 1*/ #include "config-fuze.h" #elif defined(SANSA_C200V2) #include "config-c200v2.h" +#elif defined(SANSA_VIEW) +#include "config-view.h" #elif defined(LYRE_PROTO1) #include "config-lyre_proto1.h" #elif defined(SAMSUNG_YH820) @@ -576,7 +580,8 @@ Lyre prototype 1*/ /* define for all cpus from PP family */ #if (CONFIG_CPU == PP5002) #define CPU_PP -#elif (CONFIG_CPU == PP5020) || (CONFIG_CPU == PP5022) || (CONFIG_CPU == PP5024) +#elif (CONFIG_CPU == PP5020) || (CONFIG_CPU == PP5022) \ + || (CONFIG_CPU == PP5024) || (CONFIG_CPU == PP6100) #define CPU_PP #define CPU_PP502x #endif @@ -682,7 +687,7 @@ Lyre prototype 1*/ /* Change this if you want to build a single-core firmware for a multicore * target for debugging */ -#if defined(BOOTLOADER) +#if defined(BOOTLOADER) || (CONFIG_CPU == PP6100) #define FORCE_SINGLE_CORE #endif diff --git a/firmware/export/cpu.h b/firmware/export/cpu.h index 4623f57..6041b38 100644 --- a/firmware/export/cpu.h +++ b/firmware/export/cpu.h @@ -38,6 +38,9 @@ #if CONFIG_CPU == PP5024 #include "pp5024.h" #endif +#if CONFIG_CPU == PP6100 +#include "pp6100.h" +#endif #if CONFIG_CPU == PNX0101 #include "pnx0101.h" #endif diff --git a/firmware/export/pp6100.h b/firmware/export/pp6100.h new file mode 100644 index 0000000..0894aff --- /dev/null +++ b/firmware/export/pp6100.h @@ -0,0 +1,31 @@ +#ifndef __PP6100_H__ +#define __PP6100_H__ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * $Id$ + * + * Copyright (C) 2009 by Robert Keevil + * + * 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. + * + ****************************************************************************/ + +/* We believe this is quite similar to the 5020 and for now we just use that + completely and redefine any minor differences */ +#include "pp5020.h" + +#undef DRAM_START +#define DRAM_START 0x10f00000 + +#endif |