rockbox/firmware/export/config/samsungyh920.h
Torne Wuff 533cf7737b Enable ATA DMA on pp5020 based players with ATA drives.
DMA is only used for reading because writing seems to be slower with DMA.
Only requests which are cacheline aligned (16 bytes) will use DMA, so many
requests will still use PIO at this point; a later change will align more
reads.

Part of FS#9708, original DMA code by Boris Gjenero (dreamlayers).


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24405 a1c6a512-1295-4272-9138-f99709370657
2010-01-31 11:07:29 +00:00

194 lines
5.5 KiB
C

/*
* This config file is for the Samsung YH-920
*/
#define TARGET_TREE /* this target is using the target tree system */
/* For Rolo and boot loader */
#define MODEL_NUMBER 58
#define MODEL_NAME "Samsung YH-920"
/* define this if you have recording possibility */
/* todo #define HAVE_RECORDING */
/* Define bitmask of input sources - recordable bitmask can be defined
explicitly if different */
#define INPUT_SRC_CAPS (SRC_CAP_MIC | SRC_CAP_LINEIN )
/* define the bitmask of hardware sample rates */
#define HW_SAMPR_CAPS (SAMPR_CAP_48 | SAMPR_CAP_44 | SAMPR_CAP_32 | \
SAMPR_CAP_24 | SAMPR_CAP_22 | SAMPR_CAP_16 | \
SAMPR_CAP_11 | SAMPR_CAP_8)
/* define the bitmask of recording sample rates */
#define REC_SAMPR_CAPS (SAMPR_CAP_48 | SAMPR_CAP_44 | SAMPR_CAP_32 | \
SAMPR_CAP_24 | SAMPR_CAP_22 | SAMPR_CAP_16 | \
SAMPR_CAP_11 | SAMPR_CAP_8)
/* Type of LCD */
#define CONFIG_LCD LCD_S1D15E06
/* LCD dimensions */
#define LCD_WIDTH 160
#define LCD_HEIGHT 128
#define LCD_DEPTH 2
#define LCD_PIXELFORMAT VERTICAL_PACKING
/* Display colours, for screenshots and sim (0xRRGGBB) */
#define LCD_DARKCOLOR 0x000000
#define LCD_BRIGHTCOLOR 0x5a915a
#define LCD_BL_DARKCOLOR 0x000000
#define LCD_BL_BRIGHTCOLOR 0xadd8e6
/* todo */
/* #ifndef BOOTLOADER */
#if 0
/* Define this if your LCD can be enabled/disabled */
#define HAVE_LCD_ENABLE
/* Define this if your LCD can be put to sleep. HAVE_LCD_ENABLE
* should be defined as well.
* We can currently put the lcd to sleep but it won't wake up properly */
#define HAVE_LCD_SLEEP
#define HAVE_LCD_SLEEP_SETTING
#endif
/* Define this for LCD backlight available */
#define HAVE_BACKLIGHT
/* Define this if your LCD can set contrast */
/* todo #define HAVE_LCD_CONTRAST */
#define MIN_CONTRAST_SETTING 0
#define MAX_CONTRAST_SETTING 30
#define DEFAULT_CONTRAST_SETTING 14 /* Match boot contrast */
/* define this if you can flip your LCD */
/* todo #define HAVE_LCD_FLIP */
/* define this if you can invert the colours on your LCD */
/* todo #define HAVE_LCD_INVERT */
/* put the lcd frame buffer in IRAM */
/* #define IRAM_LCDFRAMEBUFFER IDATA_ATTR */
/* define this if you have a bitmap LCD display */
#define HAVE_LCD_BITMAP
/* 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 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
#define CONFIG_KEYPAD SAMSUNG_YH_PAD
/* Define this if you do software codec */
#define CONFIG_CODEC SWCODEC
/* define this if you have a real-time clock */
#ifndef BOOTLOADER
#define CONFIG_RTC RTC_E8564
/* TODO ??? */
//#define HAVE_RTC_ALARM
#endif
/* define this if you have a disk storage, i.e. something
that needs spinups and can cause skips when shaked */
#define HAVE_DISK_STORAGE
/* define this if you use an ATA controller */
#define CONFIG_STORAGE STORAGE_ATA
/* We're able to shut off power to the HDD */
/* todo #define HAVE_ATA_POWER_OFF */
/* Define this if you have a software controlled poweroff */
#define HAVE_SW_POWEROFF
/* 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 this if you have the AK4537 audio codec */
#define HAVE_AK4537
/* AK4537 has no tone controls, so we use the software ones */
#define HAVE_SW_TONE_CONTROLS
#define AB_REPEAT_ENABLE 1
#define BATTERY_CAPACITY_DEFAULT 1550 /* default battery capacity */
#define BATTERY_CAPACITY_MIN 1500 /* 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 */
/* Hardware controlled charging */
#define CONFIG_CHARGING CHARGING_SIMPLE
/* define this if the unit can be powered or charged via USB */
#define HAVE_USB_POWER
/* Define this if you have a PortalPlayer PP5020 */
#define CONFIG_CPU PP5020
/* Define this if you want to use the PP5020 i2c interface */
#define CONFIG_I2C I2C_PP5020
/* define this if the hardware can be powered off while charging */
#define HAVE_POWEROFF_WHILE_CHARGING
/* The start address index for ROM builds */
#define ROM_START 0x00000000
/* The size of the flash ROM */
#define FLASH_SIZE 0x100000
/* Define this to the CPU frequency */
#define CPU_FREQ 75000000
/* 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 0x04e8
#define USB_PRODUCT_ID 0x5022
/* 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"
/* Offset ( in the firmware file's header ) to the file CRC */
#define FIRMWARE_OFFSET_FILE_CRC 0x00
/* Offset ( in the firmware file's header ) to the real data */
#define FIRMWARE_OFFSET_FILE_DATA 0x00
#define ICODE_ATTR_TREMOR_NOT_MDCT
/* DMA is used only for reading on PP502x because although reads are ~8x faster
* writes appear to be ~25% slower.
*/
#define HAVE_ATA_DMA