summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcoen Hirschberg <marcoen@gmail.com>2008-09-17 23:22:11 +0000
committerMarcoen Hirschberg <marcoen@gmail.com>2008-09-17 23:22:11 +0000
commit48e45f57516d24d8cf24f632ecf73fec95e3a785 (patch)
tree1f3df5f1557070f30dc1195f58524870c0411bf2
parent9407ae838e7696cd5f55c7a22b7cabb8d403fc17 (diff)
downloadrockbox-48e45f57516d24d8cf24f632ecf73fec95e3a785.tar.gz
rockbox-48e45f57516d24d8cf24f632ecf73fec95e3a785.zip
add Meizu M6SP and M3 ports
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18544 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--bootloader/SOURCES4
-rw-r--r--bootloader/meizu_m3.c142
-rw-r--r--bootloader/meizu_m6sp.c123
-rw-r--r--firmware/SOURCES22
-rw-r--r--firmware/export/config-meizu-m3.h175
-rw-r--r--firmware/export/config-meizu-m6sp.h175
-rw-r--r--firmware/export/config.h6
-rw-r--r--firmware/target/arm/s5l8700/meizu-m3/adc-target.h35
-rw-r--r--firmware/target/arm/s5l8700/meizu-m3/backlight-target.h29
-rw-r--r--firmware/target/arm/s5l8700/meizu-m3/button-target.h54
-rw-r--r--firmware/target/arm/s5l8700/meizu-m3/lcd-m3.c135
-rw-r--r--firmware/target/arm/s5l8700/meizu-m6sp/adc-target.h35
-rw-r--r--firmware/target/arm/s5l8700/meizu-m6sp/backlight-target.h29
-rw-r--r--firmware/target/arm/s5l8700/meizu-m6sp/button-target.h54
-rw-r--r--firmware/target/arm/s5l8700/meizu-m6sp/lcd-m6sp.c135
-rwxr-xr-xtools/configure49
-rw-r--r--utils/meizu_dfu/Makefile2
17 files changed, 1200 insertions, 4 deletions
diff --git a/bootloader/SOURCES b/bootloader/SOURCES
index c1771ff24f..c54d1e16b1 100644
--- a/bootloader/SOURCES
+++ b/bootloader/SOURCES
@@ -31,6 +31,10 @@ mrobe500.c
31telechips.c 31telechips.c
32#elif defined(MEIZU_M6SL) 32#elif defined(MEIZU_M6SL)
33meizu_m6sl.c 33meizu_m6sl.c
34#elif defined(MEIZU_M6SP)
35meizu_m6sp.c
36#elif defined(MEIZU_M3)
37meizu_m3.c
34#elif defined(ONDA_VX747) || defined(ONDA_VX767) 38#elif defined(ONDA_VX747) || defined(ONDA_VX767)
35ondavx747.c 39ondavx747.c
36#elif defined(CREATIVE_ZVx) 40#elif defined(CREATIVE_ZVx)
diff --git a/bootloader/meizu_m3.c b/bootloader/meizu_m3.c
new file mode 100644
index 0000000000..cc9fbab88d
--- /dev/null
+++ b/bootloader/meizu_m3.c
@@ -0,0 +1,142 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2006 by Greg White
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
16 *
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
19 *
20 ****************************************************************************/
21#include "config.h"
22
23#include <stdlib.h>
24#include <stdio.h>
25#include "inttypes.h"
26#include "string.h"
27#include "cpu.h"
28#include "system.h"
29#include "lcd.h"
30#include "kernel.h"
31#include "thread.h"
32#include "ata.h"
33#include "fat.h"
34#include "disk.h"
35#include "font.h"
36#include "adc.h"
37#include "backlight.h"
38#include "backlight-target.h"
39#include "button.h"
40#include "panic.h"
41#include "power.h"
42#include "file.h"
43#include "common.h"
44#include "rbunicode.h"
45#include "usb.h"
46#include "qt1106.h"
47
48#include <stdarg.h>
49
50char version[] = APPSVERSION;
51#define LONG_DELAY 200000
52#define SHORT_DELAY 50000
53#define PAUSE_DELAY 50000
54
55static inline void delay(int duration)
56{
57 volatile int i;
58 for(i=0;i<duration;i++);
59}
60
61
62void bl_debug(bool bit)
63{
64 if (bit)
65 {
66 PDAT0 ^= (1 << 2); //Toggle backlight
67 delay(LONG_DELAY);
68 PDAT0 ^= (1 << 2); //Toggle backlight
69 delay(LONG_DELAY);
70 }
71 else
72 {
73 PDAT0 ^= (1 << 2); //Toggle backlight
74 delay(SHORT_DELAY);
75 PDAT0 ^= (1 << 2); //Toggle backlight
76 delay(SHORT_DELAY);
77 }
78}
79
80void bl_debug_count(unsigned int input)
81{
82 unsigned int i;
83 delay(SHORT_DELAY*3);
84 for (i = 0; i < input; i++)
85 {
86 PDAT0 ^= (1 << 2); //Toggle backlight
87 delay(SHORT_DELAY);
88 PDAT0 ^= (1 << 2); //Toggle backlight
89 delay(2*SHORT_DELAY);
90 }
91}
92void bl_debug_int(unsigned int input,unsigned int count)
93{
94 unsigned int i;
95 for (i = 0; i < count; i++)
96 {
97 bl_debug(input>>i & 1);
98 }
99 delay(SHORT_DELAY*6);
100}
101
102void main(void)
103{
104 //Set backlight pin to output and enable
105 int oldval = PCON0;
106 PCON0 = ((oldval & ~(3 << 4)) | (1 << 4));
107 PDAT0 |= (1 << 2);
108
109 //Set PLAY to input
110 oldval = PCON1;
111 PCON1 = ((oldval & ~(0xf << 16)) | (0 << 16));
112
113 init_qt1106();
114
115 // Wait for play to be pressed
116 while(!(PDAT1 & (1 << 4)));
117 // Wait for play to be released
118 while((PDAT1 & (1 << 4)));
119 PDAT0 ^= (1 << 2); //Toggle backlight
120 delay(LONG_DELAY);
121
122 /* Calibrate the lot */
123 qt1106_io(QT1106_MODE_FREE | QT1106_MOD_INF | QT1106_DI \
124 | QT1106_SLD_SLIDER | QT1106_CAL_WHEEL | QT1106_CAL_KEYS | QT1106_RES_4);
125
126 /* Set to maximum sensitivity */
127 qt1106_io(QT1106_CT | (0x00 << 8) );
128
129 while(true)
130 {
131 qt1106_wait();
132
133 int slider = qt1106_io(QT1106_MODE_FREE | QT1106_MOD_INF \
134 | QT1106_DI | QT1106_SLD_SLIDER | QT1106_RES_4);
135 if(slider & 0x008000)
136 bl_debug_count(((slider&0xff)) + 1);
137 }
138
139 //power off
140 PDAT1&=~(1<<3);
141}
142
diff --git a/bootloader/meizu_m6sp.c b/bootloader/meizu_m6sp.c
new file mode 100644
index 0000000000..7608c9bd30
--- /dev/null
+++ b/bootloader/meizu_m6sp.c
@@ -0,0 +1,123 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2006 by Greg White
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
16 *
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
19 *
20 ****************************************************************************/
21#include "config.h"
22
23#include <stdlib.h>
24#include <stdio.h>
25#include "inttypes.h"
26#include "string.h"
27#include "cpu.h"
28#include "system.h"
29#include "lcd.h"
30#include "kernel.h"
31#include "thread.h"
32#include "ata.h"
33#include "fat.h"
34#include "disk.h"
35#include "font.h"
36#include "adc.h"
37#include "backlight.h"
38#include "backlight-target.h"
39#include "button.h"
40#include "panic.h"
41#include "power.h"
42#include "file.h"
43#include "common.h"
44#include "rbunicode.h"
45#include "usb.h"
46#include "qt1106.h"
47
48#include <stdarg.h>
49
50char version[] = APPSVERSION;
51#define LONG_DELAY 200000
52#define SHORT_DELAY 50000
53#define PAUSE_DELAY 50000
54
55static inline void delay(int duration)
56{
57 volatile int i;
58 for(i=0;i<duration;i++);
59}
60
61
62void bl_debug(bool bit)
63{
64 if (bit)
65 {
66 PDAT0 ^= (1 << 2); //Toggle backlight
67 delay(LONG_DELAY);
68 PDAT0 ^= (1 << 2); //Toggle backlight
69 delay(LONG_DELAY);
70 }
71 else
72 {
73 PDAT0 ^= (1 << 2); //Toggle backlight
74 delay(SHORT_DELAY);
75 PDAT0 ^= (1 << 2); //Toggle backlight
76 delay(SHORT_DELAY);
77 }
78}
79
80void bl_debug_count(unsigned int input)
81{
82 unsigned int i;
83 delay(SHORT_DELAY*3);
84 for (i = 0; i < input; i++)
85 {
86 PDAT0 ^= (1 << 2); //Toggle backlight
87 delay(SHORT_DELAY);
88 PDAT0 ^= (1 << 2); //Toggle backlight
89 delay(2*SHORT_DELAY);
90 }
91}
92void bl_debug_int(unsigned int input,unsigned int count)
93{
94 unsigned int i;
95 for (i = 0; i < count; i++)
96 {
97 bl_debug(input>>i & 1);
98 }
99 delay(SHORT_DELAY*6);
100}
101
102void main(void)
103{
104 //Set backlight pin to output and enable
105 int oldval = PCON0;
106 PCON0 = ((oldval & ~(3 << 4)) | (1 << 4));
107 PDAT0 |= (1 << 2);
108
109 //Set PLAY to input
110 oldval = PCON1;
111 PCON1 = ((oldval & ~(0xf << 16)) | (0 << 16));
112
113 // Wait for play to be pressed
114 while(!(PDAT1 & (1 << 4)));
115 // Wait for play to be released
116 while((PDAT1 & (1 << 4)));
117 PDAT0 ^= (1 << 2); //Toggle backlight
118 delay(LONG_DELAY);
119
120 //power off
121 PDAT1&=~(1<<3);
122}
123
diff --git a/firmware/SOURCES b/firmware/SOURCES
index d000447b6b..a120c88fa2 100644
--- a/firmware/SOURCES
+++ b/firmware/SOURCES
@@ -1082,9 +1082,12 @@ target/arm/tcc780x/cowond2/audio-cowond2.c
1082#endif /* SIMULATOR */ 1082#endif /* SIMULATOR */
1083#endif /* COWON_D2 */ 1083#endif /* COWON_D2 */
1084 1084
1085#ifdef MEIZU_M6SL 1085#if CONFIG_CPU==S5L8700
1086target/arm/s5l8700/system-s5l8700.c 1086target/arm/s5l8700/system-s5l8700.c
1087target/arm/s5l8700/ata-nand-s5l8700.c 1087target/arm/s5l8700/ata-nand-s5l8700.c
1088#endif
1089
1090#ifdef MEIZU_M6SL
1088target/arm/s5l8700/meizu-m6sl/lcd-m6sl.c 1091target/arm/s5l8700/meizu-m6sl/lcd-m6sl.c
1089drivers/qt1106.c 1092drivers/qt1106.c
1090#ifndef SIMULATOR 1093#ifndef SIMULATOR
@@ -1093,6 +1096,23 @@ drivers/qt1106.c
1093#endif /* SIMULATOR */ 1096#endif /* SIMULATOR */
1094#endif /* MEIZU_M6SL */ 1097#endif /* MEIZU_M6SL */
1095 1098
1099#ifdef MEIZU_M6SP
1100target/arm/s5l8700/meizu-m6sp/lcd-m6sp.c
1101#ifndef SIMULATOR
1102#ifndef BOOTLOADER
1103#endif /* BOOTLOADER */
1104#endif /* SIMULATOR */
1105#endif /* MEIZU_M6SP */
1106
1107#ifdef MEIZU_M3
1108target/arm/s5l8700/meizu-m3/lcd-m3.c
1109drivers/qt1106.c
1110#ifndef SIMULATOR
1111#ifndef BOOTLOADER
1112#endif /* BOOTLOADER */
1113#endif /* SIMULATOR */
1114#endif /* MEIZU_M3 */
1115
1096#if CONFIG_CPU==JZ4732 1116#if CONFIG_CPU==JZ4732
1097target/mips/ingenic_jz47xx/ata-nand-jz4740.c 1117target/mips/ingenic_jz47xx/ata-nand-jz4740.c
1098target/mips/ingenic_jz47xx/lcd-jz4740.c 1118target/mips/ingenic_jz47xx/lcd-jz4740.c
diff --git a/firmware/export/config-meizu-m3.h b/firmware/export/config-meizu-m3.h
new file mode 100644
index 0000000000..7a07339bcb
--- /dev/null
+++ b/firmware/export/config-meizu-m3.h
@@ -0,0 +1,175 @@
1/*
2 * This config file is for Meizu M3
3 */
4#define TARGET_TREE /* this target is using the target tree system */
5
6/* For Rolo and boot loader */
7#define MODEL_NUMBER 1
8
9#define MODEL_NAME "Meizu M3"
10
11/* define this if you have recording possibility */
12//#define HAVE_RECORDING
13
14/* Define bitmask of input sources - recordable bitmask can be defined
15 explicitly if different */
16#define INPUT_SRC_CAPS (SRC_CAP_MIC | SRC_CAP_LINEIN | SRC_CAP_FMRADIO)
17
18/* define the bitmask of hardware sample rates */
19#define HW_SAMPR_CAPS (SAMPR_CAP_88 | SAMPR_CAP_44 | SAMPR_CAP_22 | SAMPR_CAP_11)
20
21/* define the bitmask of recording sample rates */
22#define REC_SAMPR_CAPS (SAMPR_CAP_88 | SAMPR_CAP_44 | SAMPR_CAP_22 | SAMPR_CAP_11)
23
24/* define this if you have a bitmap LCD display */
25#define HAVE_LCD_BITMAP
26
27/* define this if you can flip your LCD */
28//#define HAVE_LCD_FLIP
29
30/* define this if you have a colour LCD */
31#define HAVE_LCD_COLOR
32
33/* define this if you want album art for this target */
34#define HAVE_ALBUMART
35
36/* define this if you can invert the colours on your LCD */
37//#define HAVE_LCD_INVERT
38
39/* define this if you have access to the quickscreen */
40#define HAVE_QUICKSCREEN
41
42/* define this if you have access to the pitchscreen */
43#define HAVE_PITCHSCREEN
44
45/* define this if you would like tagcache to build on this target */
46#define HAVE_TAGCACHE
47
48/* define this if you have a flash memory storage */
49#define HAVE_FLASH_STORAGE
50
51/* LCD dimensions */
52#define LCD_WIDTH 176
53#define LCD_HEIGHT 132
54#define LCD_DEPTH 16 /* pseudo 262.144 colors */
55#define LCD_PIXELFORMAT RGB565 /* rgb565 */
56
57/* Define this if your LCD can be enabled/disabled */
58//#define HAVE_LCD_ENABLE
59
60/* Define this if your LCD can be put to sleep. HAVE_LCD_ENABLE
61 should be defined as well. */
62//#define HAVE_LCD_SLEEP
63
64#define CONFIG_KEYPAD MEIZU_M3_PAD
65
66//#define AB_REPEAT_ENABLE 1
67//#define ACTION_WPSAB_SINGLE ACTION_WPS_BROWSE
68
69/* Define this if you do software codec */
70#define CONFIG_CODEC SWCODEC
71
72/* define this if you have a real-time clock */
73#define CONFIG_RTC RTC_S5L8700
74//#define CONFIG_RTC RTC_S35390A
75
76#define CONFIG_LCD LCD_MEIZUM6
77
78/* Define this if you have the WM8975 audio codec */
79#define HAVE_WM8751 //FIXME
80
81/* Define this for LCD backlight available */
82#define HAVE_BACKLIGHT
83#define HAVE_BACKLIGHT_BRIGHTNESS
84
85/* Define this if you have a software controlled poweroff */
86#define HAVE_SW_POWEROFF
87
88/* The number of bytes reserved for loadable codecs */
89#define CODEC_SIZE 0x80000
90
91/* The number of bytes reserved for loadable plugins */
92#define PLUGIN_BUFFER_SIZE 0x80000
93
94/* FM Tuner */
95#define CONFIG_TUNER TEA5760
96#define CONFIG_TUNER_XTAL 32768
97
98//#define HAVE_TLV320
99
100/* TLV320 has no tone controls, so we use the software ones */
101#define HAVE_SW_TONE_CONTROLS
102
103#define BATTERY_CAPACITY_DEFAULT 700 /* default battery capacity */
104#define BATTERY_CAPACITY_MIN 500 /* min. capacity selectable */
105#define BATTERY_CAPACITY_MAX 2250 /* max. capacity selectable */
106#define BATTERY_CAPACITY_INC 50 /* capacity increment */
107#define BATTERY_TYPES_COUNT 1 /* only one type */
108
109/* Hardware controlled charging? FIXME */
110#define CONFIG_CHARGING CHARGING_SIMPLE
111
112#ifndef SIMULATOR
113
114/* Define this if your LCD can set contrast */
115//#define HAVE_LCD_CONTRAST
116
117/* Define this if you have a Motorola SCF5250 */
118#define CONFIG_CPU S5L8700
119
120/* Define this if you want to use coldfire's i2c interface */
121#define CONFIG_I2C I2C_S5L8700
122
123/* define this if the hardware can be powered off while charging */
124#define HAVE_POWEROFF_WHILE_CHARGING
125
126/* The size of the flash ROM */
127#define FLASH_SIZE 0x400000
128
129/* Define this to the CPU frequency */
130#define CPU_FREQ 11289600
131
132/* Define this if you have ATA power-off control */
133//#define HAVE_ATA_POWER_OFF
134
135/* Virtual LED (icon) */
136#define CONFIG_LED LED_VIRTUAL
137
138/* Offset ( in the firmware file's header ) to the file CRC */
139#define FIRMWARE_OFFSET_FILE_CRC 0
140
141/* Offset ( in the firmware file's header ) to the real data */
142#define FIRMWARE_OFFSET_FILE_DATA 8
143
144/* USB On-the-go */
145//#define CONFIG_USBOTG USBOTG_M5636
146
147/* Define this if you have adjustable CPU frequency */
148#define HAVE_ADJUSTABLE_CPU_FREQ
149
150#define BOOTFILE_EXT "meizu"
151#define BOOTFILE "rockbox." BOOTFILE_EXT
152#define BOOTDIR "/.rockbox"
153
154#define BOOTLOADER_ENTRYPOINT 0x001F0000
155#define FLASH_ENTRYPOINT 0x00001000
156#define FLASH_MAGIC 0xfbfbfbf1
157
158#endif /* SIMULATOR */
159
160/* Define this for FM radio input available */
161#define HAVE_FMRADIO_IN
162
163/** Port-specific settings **/
164
165/* Main LCD contrast range and defaults */
166#define MIN_CONTRAST_SETTING 1
167#define MAX_CONTRAST_SETTING 30
168#define DEFAULT_CONTRAST_SETTING 19 /* Match boot contrast */
169
170/* Main LCD backlight brightness range and defaults */
171/* PCF50506 can output 0%-100% duty cycle but D305A expects %15-100%. */
172#define MIN_BRIGHTNESS_SETTING 1 /* 15/16 (93.75%) */
173#define MAX_BRIGHTNESS_SETTING 13 /* 3/16 (18.75%) */
174#define DEFAULT_BRIGHTNESS_SETTING 8 /* 8/16 (50.00%) = x5 boot default */
175
diff --git a/firmware/export/config-meizu-m6sp.h b/firmware/export/config-meizu-m6sp.h
new file mode 100644
index 0000000000..4867904f4d
--- /dev/null
+++ b/firmware/export/config-meizu-m6sp.h
@@ -0,0 +1,175 @@
1/*
2 * This config file is for Meizu M6SP
3 */
4#define TARGET_TREE /* this target is using the target tree system */
5
6/* For Rolo and boot loader */
7#define MODEL_NUMBER 1
8
9#define MODEL_NAME "Meizu M6SP"
10
11/* define this if you have recording possibility */
12//#define HAVE_RECORDING
13
14/* Define bitmask of input sources - recordable bitmask can be defined
15 explicitly if different */
16#define INPUT_SRC_CAPS (SRC_CAP_MIC | SRC_CAP_LINEIN | SRC_CAP_FMRADIO)
17
18/* define the bitmask of hardware sample rates */
19#define HW_SAMPR_CAPS (SAMPR_CAP_88 | SAMPR_CAP_44 | SAMPR_CAP_22 | SAMPR_CAP_11)
20
21/* define the bitmask of recording sample rates */
22#define REC_SAMPR_CAPS (SAMPR_CAP_88 | SAMPR_CAP_44 | SAMPR_CAP_22 | SAMPR_CAP_11)
23
24/* define this if you have a bitmap LCD display */
25#define HAVE_LCD_BITMAP
26
27/* define this if you can flip your LCD */
28//#define HAVE_LCD_FLIP
29
30/* define this if you have a colour LCD */
31#define HAVE_LCD_COLOR
32
33/* define this if you want album art for this target */
34#define HAVE_ALBUMART
35
36/* define this if you can invert the colours on your LCD */
37//#define HAVE_LCD_INVERT
38
39/* define this if you have access to the quickscreen */
40#define HAVE_QUICKSCREEN
41
42/* define this if you have access to the pitchscreen */
43#define HAVE_PITCHSCREEN
44
45/* define this if you would like tagcache to build on this target */
46#define HAVE_TAGCACHE
47
48/* define this if you have a flash memory storage */
49#define HAVE_FLASH_STORAGE
50
51/* LCD dimensions */
52#define LCD_WIDTH 320
53#define LCD_HEIGHT 240
54#define LCD_DEPTH 16 /* pseudo 262.144 colors */
55#define LCD_PIXELFORMAT RGB565 /* rgb565 */
56
57/* Define this if your LCD can be enabled/disabled */
58//#define HAVE_LCD_ENABLE
59
60/* Define this if your LCD can be put to sleep. HAVE_LCD_ENABLE
61 should be defined as well. */
62//#define HAVE_LCD_SLEEP
63
64#define CONFIG_KEYPAD MEIZU_M6SP_PAD
65
66//#define AB_REPEAT_ENABLE 1
67//#define ACTION_WPSAB_SINGLE ACTION_WPS_BROWSE
68
69/* Define this if you do software codec */
70#define CONFIG_CODEC SWCODEC
71
72/* define this if you have a real-time clock */
73#define CONFIG_RTC RTC_S5L8700
74//#define CONFIG_RTC RTC_S35390A
75
76#define CONFIG_LCD LCD_MEIZUM6
77
78/* Define this if you have the WM8975 audio codec */
79#define HAVE_WM8751 //FIXME
80
81/* Define this for LCD backlight available */
82#define HAVE_BACKLIGHT
83#define HAVE_BACKLIGHT_BRIGHTNESS
84
85/* Define this if you have a software controlled poweroff */
86#define HAVE_SW_POWEROFF
87
88/* The number of bytes reserved for loadable codecs */
89#define CODEC_SIZE 0x80000
90
91/* The number of bytes reserved for loadable plugins */
92#define PLUGIN_BUFFER_SIZE 0x80000
93
94/* FM Tuner */
95#define CONFIG_TUNER TEA5760
96#define CONFIG_TUNER_XTAL 32768
97
98//#define HAVE_TLV320
99
100/* TLV320 has no tone controls, so we use the software ones */
101#define HAVE_SW_TONE_CONTROLS
102
103#define BATTERY_CAPACITY_DEFAULT 700 /* default battery capacity */
104#define BATTERY_CAPACITY_MIN 500 /* min. capacity selectable */
105#define BATTERY_CAPACITY_MAX 2250 /* max. capacity selectable */
106#define BATTERY_CAPACITY_INC 50 /* capacity increment */
107#define BATTERY_TYPES_COUNT 1 /* only one type */
108
109/* Hardware controlled charging? FIXME */
110#define CONFIG_CHARGING CHARGING_SIMPLE
111
112#ifndef SIMULATOR
113
114/* Define this if your LCD can set contrast */
115//#define HAVE_LCD_CONTRAST
116
117/* Define this if you have a Motorola SCF5250 */
118#define CONFIG_CPU S5L8700
119
120/* Define this if you want to use coldfire's i2c interface */
121#define CONFIG_I2C I2C_S5L8700
122
123/* define this if the hardware can be powered off while charging */
124#define HAVE_POWEROFF_WHILE_CHARGING
125
126/* The size of the flash ROM */
127#define FLASH_SIZE 0x400000
128
129/* Define this to the CPU frequency */
130#define CPU_FREQ 11289600
131
132/* Define this if you have ATA power-off control */
133//#define HAVE_ATA_POWER_OFF
134
135/* Virtual LED (icon) */
136#define CONFIG_LED LED_VIRTUAL
137
138/* Offset ( in the firmware file's header ) to the file CRC */
139#define FIRMWARE_OFFSET_FILE_CRC 0
140
141/* Offset ( in the firmware file's header ) to the real data */
142#define FIRMWARE_OFFSET_FILE_DATA 8
143
144/* USB On-the-go */
145//#define CONFIG_USBOTG USBOTG_M5636
146
147/* Define this if you have adjustable CPU frequency */
148#define HAVE_ADJUSTABLE_CPU_FREQ
149
150#define BOOTFILE_EXT "meizu"
151#define BOOTFILE "rockbox." BOOTFILE_EXT
152#define BOOTDIR "/.rockbox"
153
154#define BOOTLOADER_ENTRYPOINT 0x001F0000
155#define FLASH_ENTRYPOINT 0x00001000
156#define FLASH_MAGIC 0xfbfbfbf1
157
158#endif /* SIMULATOR */
159
160/* Define this for FM radio input available */
161#define HAVE_FMRADIO_IN
162
163/** Port-specific settings **/
164
165/* Main LCD contrast range and defaults */
166#define MIN_CONTRAST_SETTING 1
167#define MAX_CONTRAST_SETTING 30
168#define DEFAULT_CONTRAST_SETTING 19 /* Match boot contrast */
169
170/* Main LCD backlight brightness range and defaults */
171/* PCF50506 can output 0%-100% duty cycle but D305A expects %15-100%. */
172#define MIN_BRIGHTNESS_SETTING 1 /* 15/16 (93.75%) */
173#define MAX_BRIGHTNESS_SETTING 13 /* 3/16 (18.75%) */
174#define DEFAULT_BRIGHTNESS_SETTING 8 /* 8/16 (50.00%) = x5 boot default */
175
diff --git a/firmware/export/config.h b/firmware/export/config.h
index fe2cff0ea6..f6ec686b1f 100644
--- a/firmware/export/config.h
+++ b/firmware/export/config.h
@@ -95,6 +95,8 @@
95#define MEIZU_M6SL_PAD 30 95#define MEIZU_M6SL_PAD 30
96#define ONDAVX747_PAD 31 96#define ONDAVX747_PAD 31
97#define ONDAVX767_PAD 32 97#define ONDAVX767_PAD 32
98#define MEIZU_M6SP_PAD 33
99#define MEIZU_M3_PAD 34
98 100
99/* CONFIG_REMOTE_KEYPAD */ 101/* CONFIG_REMOTE_KEYPAD */
100#define H100_REMOTE 1 102#define H100_REMOTE 1
@@ -291,6 +293,10 @@
291#include "config-c100.h" 293#include "config-c100.h"
292#elif defined(MEIZU_M6SL) 294#elif defined(MEIZU_M6SL)
293#include "config-meizu-m6sl.h" 295#include "config-meizu-m6sl.h"
296#elif defined(MEIZU_M6SP)
297#include "config-meizu-m6sp.h"
298#elif defined(MEIZU_M3)
299#include "config-meizu-m3.h"
294#elif defined(ONDA_VX747) 300#elif defined(ONDA_VX747)
295#include "config-ondavx747.h" 301#include "config-ondavx747.h"
296#elif defined(ONDA_VX767) 302#elif defined(ONDA_VX767)
diff --git a/firmware/target/arm/s5l8700/meizu-m3/adc-target.h b/firmware/target/arm/s5l8700/meizu-m3/adc-target.h
new file mode 100644
index 0000000000..d21d401735
--- /dev/null
+++ b/firmware/target/arm/s5l8700/meizu-m3/adc-target.h
@@ -0,0 +1,35 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2006 by Barry Wardell
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
16 *
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
19 *
20 ****************************************************************************/
21#ifndef _ADC_TARGET_H_
22#define _ADC_TARGET_H_
23
24/* only two channels used by the Gigabeat */
25#define NUM_ADC_CHANNELS 1
26
27#define ADC_UNKNOWN_1 0
28#define ADC_UNKNOWN_2 1
29#define ADC_BATTERY 2
30#define ADC_UNKNOWN_4 3
31
32#define ADC_UNREG_POWER ADC_BATTERY /* For compatibility */
33#define ADC_READ_ERROR 0xFFFF
34
35#endif
diff --git a/firmware/target/arm/s5l8700/meizu-m3/backlight-target.h b/firmware/target/arm/s5l8700/meizu-m3/backlight-target.h
new file mode 100644
index 0000000000..91579b080d
--- /dev/null
+++ b/firmware/target/arm/s5l8700/meizu-m3/backlight-target.h
@@ -0,0 +1,29 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2008 by Marcoen Hirschberg
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
16 *
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
19 *
20 ****************************************************************************/
21#ifndef BACKLIGHT_TARGET_H
22#define BACKLIGHT_TARGET_H
23
24bool _backlight_init(void);
25void _backlight_on(void);
26void _backlight_off(void);
27void _backlight_set_brightness(int brightness);
28
29#endif
diff --git a/firmware/target/arm/s5l8700/meizu-m3/button-target.h b/firmware/target/arm/s5l8700/meizu-m3/button-target.h
new file mode 100644
index 0000000000..7fab9c4d64
--- /dev/null
+++ b/firmware/target/arm/s5l8700/meizu-m3/button-target.h
@@ -0,0 +1,54 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2006 by Linus Nielsen Feltzing
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
16 *
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
19 *
20 ****************************************************************************/
21#ifndef _BUTTON_TARGET_H_
22#define _BUTTON_TARGET_H_
23
24#include <stdbool.h>
25#include "config.h"
26
27#define HAS_BUTTON_HOLD
28
29bool button_hold(void);
30void button_init_device(void);
31int button_read_device(void);
32
33/* Toshiba Gigabeat specific button codes */
34
35#define BUTTON_LEFT 0x00000001
36#define BUTTON_RIGHT 0x00000002
37#define BUTTON_UP 0x00000004
38#define BUTTON_DOWN 0x00000008
39
40#define BUTTON_SELECT 0x00000010
41
42#define BUTTON_MENU 0x00000020
43#define BUTTON_PLAY 0x00000040
44
45
46#define BUTTON_MAIN (BUTTON_MENU|BUTTON_LEFT|BUTTON_RIGHT\
47 |BUTTON_UP|BUTTON_DOWN|BUTTON_SELECT|BUTTON_PLAY)
48
49#define BUTTON_REMOTE 0
50
51#define POWEROFF_BUTTON BUTTON_PLAY
52#define POWEROFF_COUNT 10
53
54#endif /* _BUTTON_TARGET_H_ */
diff --git a/firmware/target/arm/s5l8700/meizu-m3/lcd-m3.c b/firmware/target/arm/s5l8700/meizu-m3/lcd-m3.c
new file mode 100644
index 0000000000..1affab3b01
--- /dev/null
+++ b/firmware/target/arm/s5l8700/meizu-m3/lcd-m3.c
@@ -0,0 +1,135 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2002 by Alan Korr
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
16 *
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
19 *
20 ****************************************************************************/
21#include "config.h"
22
23#include "hwcompat.h"
24#include "kernel.h"
25#include "lcd.h"
26#include "system.h"
27#include "cpu.h"
28
29/*** definitions ***/
30
31
32/** globals **/
33
34static int xoffset; /* needed for flip */
35
36/*** hardware configuration ***/
37
38int lcd_default_contrast(void)
39{
40 return 0x1f;
41}
42
43void lcd_set_contrast(int val)
44{
45}
46
47void lcd_set_invert_display(bool yesno)
48{
49}
50
51/* turn the display upside down (call lcd_update() afterwards) */
52void lcd_set_flip(bool yesno)
53{
54 /* TODO: flip mode isn't working. The commands in the else part of
55 this function are how the original firmware inits the LCD */
56
57 if (yesno)
58 {
59 xoffset = 132 - LCD_WIDTH; /* 132 colums minus the 128 we have */
60 }
61 else
62 {
63 xoffset = 0;
64 }
65}
66
67
68/* LCD init */
69void lcd_init_device(void)
70{
71}
72
73/*** Update functions ***/
74
75/* Performance function that works with an external buffer
76 note that by and bheight are in 8-pixel units! */
77void lcd_blit_mono(const unsigned char *data, int x, int by, int width,
78 int bheight, int stride)
79{
80 /* Copy display bitmap to hardware */
81 while (bheight--)
82 {
83 }
84}
85
86
87/* Performance function that works with an external buffer
88 note that by and bheight are in 8-pixel units! */
89void lcd_blit_grey_phase_blit(unsigned char *values, unsigned char *phases,
90 int x, int by, int width, int bheight, int stride)
91{
92 (void)values;
93 (void)phases;
94 (void)x;
95 (void)by;
96 (void)width;
97 (void)bheight;
98 (void)stride;
99}
100
101/* Update the display.
102 This must be called after all other LCD functions that change the display. */
103void lcd_update(void) ICODE_ATTR;
104void lcd_update(void)
105{
106 int y;
107
108 /* Copy display bitmap to hardware */
109 for (y = 0; y < LCD_FBHEIGHT; y++)
110 {
111 }
112}
113
114/* Update a fraction of the display. */
115void lcd_update_rect(int, int, int, int) ICODE_ATTR;
116void lcd_update_rect(int x, int y, int width, int height)
117{
118 int ymax;
119
120 /* The Y coordinates have to work on even 8 pixel rows */
121 ymax = (y + height-1) >> 3;
122 y >>= 3;
123
124 if(x + width > LCD_WIDTH)
125 width = LCD_WIDTH - x;
126 if (width <= 0)
127 return; /* nothing left to do, 0 is harmful to lcd_write_data() */
128 if(ymax >= LCD_FBHEIGHT)
129 ymax = LCD_FBHEIGHT-1;
130
131 /* Copy specified rectange bitmap to hardware */
132 for (; y <= ymax; y++)
133 {
134 }
135}
diff --git a/firmware/target/arm/s5l8700/meizu-m6sp/adc-target.h b/firmware/target/arm/s5l8700/meizu-m6sp/adc-target.h
new file mode 100644
index 0000000000..d21d401735
--- /dev/null
+++ b/firmware/target/arm/s5l8700/meizu-m6sp/adc-target.h
@@ -0,0 +1,35 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2006 by Barry Wardell
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
16 *
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
19 *
20 ****************************************************************************/
21#ifndef _ADC_TARGET_H_
22#define _ADC_TARGET_H_
23
24/* only two channels used by the Gigabeat */
25#define NUM_ADC_CHANNELS 1
26
27#define ADC_UNKNOWN_1 0
28#define ADC_UNKNOWN_2 1
29#define ADC_BATTERY 2
30#define ADC_UNKNOWN_4 3
31
32#define ADC_UNREG_POWER ADC_BATTERY /* For compatibility */
33#define ADC_READ_ERROR 0xFFFF
34
35#endif
diff --git a/firmware/target/arm/s5l8700/meizu-m6sp/backlight-target.h b/firmware/target/arm/s5l8700/meizu-m6sp/backlight-target.h
new file mode 100644
index 0000000000..91579b080d
--- /dev/null
+++ b/firmware/target/arm/s5l8700/meizu-m6sp/backlight-target.h
@@ -0,0 +1,29 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2008 by Marcoen Hirschberg
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
16 *
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
19 *
20 ****************************************************************************/
21#ifndef BACKLIGHT_TARGET_H
22#define BACKLIGHT_TARGET_H
23
24bool _backlight_init(void);
25void _backlight_on(void);
26void _backlight_off(void);
27void _backlight_set_brightness(int brightness);
28
29#endif
diff --git a/firmware/target/arm/s5l8700/meizu-m6sp/button-target.h b/firmware/target/arm/s5l8700/meizu-m6sp/button-target.h
new file mode 100644
index 0000000000..7fab9c4d64
--- /dev/null
+++ b/firmware/target/arm/s5l8700/meizu-m6sp/button-target.h
@@ -0,0 +1,54 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2006 by Linus Nielsen Feltzing
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
16 *
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
19 *
20 ****************************************************************************/
21#ifndef _BUTTON_TARGET_H_
22#define _BUTTON_TARGET_H_
23
24#include <stdbool.h>
25#include "config.h"
26
27#define HAS_BUTTON_HOLD
28
29bool button_hold(void);
30void button_init_device(void);
31int button_read_device(void);
32
33/* Toshiba Gigabeat specific button codes */
34
35#define BUTTON_LEFT 0x00000001
36#define BUTTON_RIGHT 0x00000002
37#define BUTTON_UP 0x00000004
38#define BUTTON_DOWN 0x00000008
39
40#define BUTTON_SELECT 0x00000010
41
42#define BUTTON_MENU 0x00000020
43#define BUTTON_PLAY 0x00000040
44
45
46#define BUTTON_MAIN (BUTTON_MENU|BUTTON_LEFT|BUTTON_RIGHT\
47 |BUTTON_UP|BUTTON_DOWN|BUTTON_SELECT|BUTTON_PLAY)
48
49#define BUTTON_REMOTE 0
50
51#define POWEROFF_BUTTON BUTTON_PLAY
52#define POWEROFF_COUNT 10
53
54#endif /* _BUTTON_TARGET_H_ */
diff --git a/firmware/target/arm/s5l8700/meizu-m6sp/lcd-m6sp.c b/firmware/target/arm/s5l8700/meizu-m6sp/lcd-m6sp.c
new file mode 100644
index 0000000000..1affab3b01
--- /dev/null
+++ b/firmware/target/arm/s5l8700/meizu-m6sp/lcd-m6sp.c
@@ -0,0 +1,135 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
9 *
10 * Copyright (C) 2002 by Alan Korr
11 *
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
16 *
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
19 *
20 ****************************************************************************/
21#include "config.h"
22
23#include "hwcompat.h"
24#include "kernel.h"
25#include "lcd.h"
26#include "system.h"
27#include "cpu.h"
28
29/*** definitions ***/
30
31
32/** globals **/
33
34static int xoffset; /* needed for flip */
35
36/*** hardware configuration ***/
37
38int lcd_default_contrast(void)
39{
40 return 0x1f;
41}
42
43void lcd_set_contrast(int val)
44{
45}
46
47void lcd_set_invert_display(bool yesno)
48{
49}
50
51/* turn the display upside down (call lcd_update() afterwards) */
52void lcd_set_flip(bool yesno)
53{
54 /* TODO: flip mode isn't working. The commands in the else part of
55 this function are how the original firmware inits the LCD */
56
57 if (yesno)
58 {
59 xoffset = 132 - LCD_WIDTH; /* 132 colums minus the 128 we have */
60 }
61 else
62 {
63 xoffset = 0;
64 }
65}
66
67
68/* LCD init */
69void lcd_init_device(void)
70{
71}
72
73/*** Update functions ***/
74
75/* Performance function that works with an external buffer
76 note that by and bheight are in 8-pixel units! */
77void lcd_blit_mono(const unsigned char *data, int x, int by, int width,
78 int bheight, int stride)
79{
80 /* Copy display bitmap to hardware */
81 while (bheight--)
82 {
83 }
84}
85
86
87/* Performance function that works with an external buffer
88 note that by and bheight are in 8-pixel units! */
89void lcd_blit_grey_phase_blit(unsigned char *values, unsigned char *phases,
90 int x, int by, int width, int bheight, int stride)
91{
92 (void)values;
93 (void)phases;
94 (void)x;
95 (void)by;
96 (void)width;
97 (void)bheight;
98 (void)stride;
99}
100
101/* Update the display.
102 This must be called after all other LCD functions that change the display. */
103void lcd_update(void) ICODE_ATTR;
104void lcd_update(void)
105{
106 int y;
107
108 /* Copy display bitmap to hardware */
109 for (y = 0; y < LCD_FBHEIGHT; y++)
110 {
111 }
112}
113
114/* Update a fraction of the display. */
115void lcd_update_rect(int, int, int, int) ICODE_ATTR;
116void lcd_update_rect(int x, int y, int width, int height)
117{
118 int ymax;
119
120 /* The Y coordinates have to work on even 8 pixel rows */
121 ymax = (y + height-1) >> 3;
122 y >>= 3;
123
124 if(x + width > LCD_WIDTH)
125 width = LCD_WIDTH - x;
126 if (width <= 0)
127 return; /* nothing left to do, 0 is harmful to lcd_write_data() */
128 if(ymax >= LCD_FBHEIGHT)
129 ymax = LCD_FBHEIGHT-1;
130
131 /* Copy specified rectange bitmap to hardware */
132 for (; y <= ymax; y++)
133 {
134 }
135}
diff --git a/tools/configure b/tools/configure
index 2cb50a940b..3dee5155db 100755
--- a/tools/configure
+++ b/tools/configure
@@ -693,10 +693,11 @@ cat <<EOF
693 ==Tatung== ==Olympus== ==Logik== 693 ==Tatung== ==Olympus== ==Logik==
694 60) Elio TPJ-1022 70) M:Robe 500 80) DAX 1GB MP3/DAB 694 60) Elio TPJ-1022 70) M:Robe 500 80) DAX 1GB MP3/DAB
695 71) M:Robe 100 695 71) M:Robe 100
696
696 ==Creative== ==Philips== ==Meizu== 697 ==Creative== ==Philips== ==Meizu==
697 90) Zen Vision:M 30GB 100) GoGear SA9200 110) M6SL 698 90) Zen Vision:M 30GB 100) GoGear SA9200 110) M6SL
698 91) Zen Vision:M 60GB 101) GoGear HDD1630 699 91) Zen Vision:M 60GB 101) GoGear HDD1630 111) M6SP
699 92) Zen Vision 700 92) Zen Vision 112) M3
700 701
701 ==Onda== 702 ==Onda==
702 120) VX747 703 120) VX747
@@ -1761,6 +1762,50 @@ fi
1761 t_model="meizu-m6sl" 1762 t_model="meizu-m6sl"
1762 ;; 1763 ;;
1763 1764
1765 111|meizum6sp)
1766 target_id=46
1767 modelname="meizum6sp"
1768 target="-DMEIZU_M6SP"
1769 memory=16 # always
1770 arm940tbecc
1771 tool="cp"
1772 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1773 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1774 output="rockbox.meizu"
1775 appextra="recorder:gui"
1776 plugins="no" #FIXME
1777 swcodec="yes"
1778 toolset=$genericbitmaptools
1779 boottool="cp"
1780 bootoutput="rockboot.ebn"
1781 # architecture, manufacturer and model for the target-tree build
1782 t_cpu="arm"
1783 t_manufacturer="s5l8700"
1784 t_model="meizu-m6sp"
1785 ;;
1786
1787 112|meizum3)
1788 target_id=47
1789 modelname="meizum3"
1790 target="-DMEIZU_M3"
1791 memory=16 # always
1792 arm940tbecc
1793 tool="cp"
1794 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1795 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1796 output="rockbox.meizu"
1797 appextra="recorder:gui"
1798 plugins="no" #FIXME
1799 swcodec="yes"
1800 toolset=$genericbitmaptools
1801 boottool="cp"
1802 bootoutput="rockboot.ebn"
1803 # architecture, manufacturer and model for the target-tree build
1804 t_cpu="arm"
1805 t_manufacturer="s5l8700"
1806 t_model="meizu-m3"
1807 ;;
1808
1764 120|ondavx747) 1809 120|ondavx747)
1765 target_id=44 1810 target_id=44
1766 modelname="ondavx747" 1811 modelname="ondavx747"
diff --git a/utils/meizu_dfu/Makefile b/utils/meizu_dfu/Makefile
index 6b368fa21b..6eedaf2667 100644
--- a/utils/meizu_dfu/Makefile
+++ b/utils/meizu_dfu/Makefile
@@ -2,7 +2,7 @@
2all: meizu_dfu 2all: meizu_dfu
3 3
4meizu_dfu: meizu_dfu.c 4meizu_dfu: meizu_dfu.c
5 gcc -o meizu_dfu meizu_dfu.c -lusb 5 gcc -I/usr/local/include -L/usr/local/lib -o meizu_dfu meizu_dfu.c -lusb
6 6
7.PHONY: clean 7.PHONY: clean
8clean: 8clean: