summaryrefslogtreecommitdiff
path: root/firmware
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2005-07-08 06:31:13 +0000
committerDaniel Stenberg <daniel@haxx.se>2005-07-08 06:31:13 +0000
commit8493ccb285937b54ddc8a50ae092c7a9a044b2a3 (patch)
treece6000516ac0023fc223a046e9df2fb34a9a26a8 /firmware
parentc28969d11f16b53c50918b06dbe9e545e33ce323 (diff)
downloadrockbox-8493ccb285937b54ddc8a50ae092c7a9a044b2a3.tar.gz
rockbox-8493ccb285937b54ddc8a50ae092c7a9a044b2a3.zip
Renamed the iriver h120 defines and configs to "h120"! Added initial support
for the h100 series. Please re-run configure. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7062 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r--firmware/crt0.S2
-rw-r--r--firmware/export/adc.h13
-rw-r--r--firmware/export/config-h100.h5
-rw-r--r--firmware/export/config-h120.h92
-rw-r--r--firmware/export/config.h2
-rw-r--r--firmware/usb.c4
6 files changed, 113 insertions, 5 deletions
diff --git a/firmware/crt0.S b/firmware/crt0.S
index 589e8f5432..978510aecb 100644
--- a/firmware/crt0.S
+++ b/firmware/crt0.S
@@ -116,7 +116,7 @@ irq_handler:
116 pop r1, r0 116 pop r1, r0
117 ret_irq 117 ret_irq
118 118
119#elif defined(IRIVER_H100) 119#elif defined(IRIVER_H100_SERIES)
120 /* Platform: iRiver H120/H140 */ 120 /* Platform: iRiver H120/H140 */
121 move.w #0x2700,%sr 121 move.w #0x2700,%sr
122 122
diff --git a/firmware/export/adc.h b/firmware/export/adc.h
index 40bc3e108a..18b0c3d578 100644
--- a/firmware/export/adc.h
+++ b/firmware/export/adc.h
@@ -21,7 +21,7 @@
21 21
22#include "config.h" 22#include "config.h"
23 23
24#ifdef IRIVER_H100 24#ifdef IRIVER_H100_SERIES
25#define NUM_ADC_CHANNELS 4 25#define NUM_ADC_CHANNELS 4
26 26
27#define ADC_BUTTONS 0 27#define ADC_BUTTONS 0
@@ -30,6 +30,15 @@
30#define ADC_UNREG_POWER ADC_BATTERY /* For compatibility */ 30#define ADC_UNREG_POWER ADC_BATTERY /* For compatibility */
31 31
32#else 32#else
33#ifdef IRIVER_H300
34/* TODO: we don't have enough info about the ADC for the H3x0 for now, so this
35 stuff is only added here for now to make things compile. */
36#define ADC_BUTTONS -2
37#define ADC_REMOTE -3
38unsigned char adc_scan(int channel);
39
40#endif
41
33#define NUM_ADC_CHANNELS 8 42#define NUM_ADC_CHANNELS 8
34 43
35#ifdef HAVE_ONDIO_ADC 44#ifdef HAVE_ONDIO_ADC
@@ -73,7 +82,7 @@
73unsigned short adc_read(int channel); 82unsigned short adc_read(int channel);
74void adc_init(void); 83void adc_init(void);
75 84
76#ifdef IRIVER_H100 85#ifdef IRIVER_H120
77unsigned char adc_scan(int channel); 86unsigned char adc_scan(int channel);
78#endif 87#endif
79 88
diff --git a/firmware/export/config-h100.h b/firmware/export/config-h100.h
index 7971a2e6c7..9ea8401e3b 100644
--- a/firmware/export/config-h100.h
+++ b/firmware/export/config-h100.h
@@ -1,3 +1,8 @@
1/*
2 * This config file is for iriver iHP-100, iHP-110, iHP-115
3 */
4#define IRIVER_H100_SERIES 1
5
1/* define this if you have recording possibility */ 6/* define this if you have recording possibility */
2/*#define HAVE_RECORDING 1*/ 7/*#define HAVE_RECORDING 1*/
3 8
diff --git a/firmware/export/config-h120.h b/firmware/export/config-h120.h
new file mode 100644
index 0000000000..90a676f4dd
--- /dev/null
+++ b/firmware/export/config-h120.h
@@ -0,0 +1,92 @@
1/*
2 * This config file is for iriver H120 and H140
3 */
4#define IRIVER_H100_SERIES 1
5
6/* define this if you have recording possibility */
7/*#define HAVE_RECORDING 1*/
8
9/* define this if you have a bitmap LCD display */
10#define HAVE_LCD_BITMAP 1
11
12/* LCD dimensions */
13#define LCD_WIDTH 160
14#define LCD_HEIGHT 128
15#define LCD_DEPTH 2
16
17/* remote LCD */
18#define LCD_REMOTE_WIDTH 128
19#define LCD_REMOTE_HEIGHT 64
20#define LCD_REMOTE_DEPTH 1
21
22#define CONFIG_KEYPAD IRIVER_H100_PAD
23
24#define CONFIG_REMOTE_KEYPAD H100_REMOTE
25
26/* Define this if you do software codec */
27#define CONFIG_HWCODEC MASNONE
28
29/* Define this if you have an remote lcd */
30#define HAVE_REMOTE_LCD
31
32#define CONFIG_LCD LCD_S1D15E06
33
34/* Define this if you have a software controlled poweroff */
35#define HAVE_SW_POWEROFF
36
37/* The number of bytes reserved for loadable codecs */
38#define CODEC_SIZE 0x40000
39
40/* The number of bytes reserved for loadable plugins */
41#define PLUGIN_BUFFER_SIZE 0xC0000
42
43#ifndef SIMULATOR
44
45/* Define this if you have a Motorola SCF5249 */
46#define CONFIG_CPU MCF5249
47
48#define CONFIG_I2C I2C_H100
49
50#define HAVE_UDA1380
51
52/* Type of mobile power */
53#define CONFIG_BATTERY BATT_LIPOL1300
54
55#define BATTERY_SCALE_FACTOR 16665 /* FIX: this value is picked at random */
56
57/* Define this if the platform can charge batteries */
58#define HAVE_CHARGING 1
59
60/* define this if the hardware can be powered off while charging */
61#define HAVE_POWEROFF_WHILE_CHARGING
62
63/* The start address index for ROM builds */
64#define ROM_START 0x11010
65
66/* Define this for LCD backlight available */
67#define CONFIG_BACKLIGHT BL_IRIVER /* port controlled */
68
69/* Define this to the CPU frequency */
70#define CPU_FREQ 11289600
71
72/* Define this if you have ATA power-off control */
73#define HAVE_ATA_POWER_OFF
74
75/* Offset ( in the firmware file's header ) to the file CRC */
76#define FIRMWARE_OFFSET_FILE_CRC 0
77
78/* Offset ( in the firmware file's header ) to the real data */
79#define FIRMWARE_OFFSET_FILE_DATA 8
80
81#define USB_IRIVERSTYLE
82
83/* Define this if you have adjustable CPU frequency */
84#define HAVE_ADJUSTABLE_CPU_FREQ
85
86#define BOOTFILE_EXT ".iriver"
87#define BOOTFILE "rockbox" BOOTFILE_EXT
88
89#endif
90
91/* Define this if you can control the S/PDIF power */
92#define HAVE_SPDIF_POWER
diff --git a/firmware/export/config.h b/firmware/export/config.h
index 7e95d23ab6..a232709a4f 100644
--- a/firmware/export/config.h
+++ b/firmware/export/config.h
@@ -98,6 +98,8 @@
98#include "config-ondiofm.h" 98#include "config-ondiofm.h"
99#elif defined(IRIVER_H100) 99#elif defined(IRIVER_H100)
100#include "config-h100.h" 100#include "config-h100.h"
101#elif defined(IRIVER_H120)
102#include "config-h120.h"
101#elif defined(IRIVER_H300) 103#elif defined(IRIVER_H300)
102#include "config-h300.h" 104#include "config-h300.h"
103#elif defined(ARCHOS_GMINI120) 105#elif defined(ARCHOS_GMINI120)
diff --git a/firmware/usb.c b/firmware/usb.c
index 44e359f8e9..a3fc1967c2 100644
--- a/firmware/usb.c
+++ b/firmware/usb.c
@@ -349,7 +349,7 @@ bool usb_detect(void)
349#ifdef USB_PLAYERSTYLE 349#ifdef USB_PLAYERSTYLE
350 current_status = (PADR & 0x8000)?false:true; 350 current_status = (PADR & 0x8000)?false:true;
351#endif 351#endif
352#ifdef IRIVER_H100 352#ifdef IRIVER_H120
353 current_status = (GPIO1_READ & 0x80)?true:false; 353 current_status = (GPIO1_READ & 0x80)?true:false;
354#endif 354#endif
355#ifdef USB_GMINISTYLE 355#ifdef USB_GMINISTYLE
@@ -428,7 +428,7 @@ void usb_init(void)
428 usb_monitor_enabled = false; 428 usb_monitor_enabled = false;
429 countdown = -1; 429 countdown = -1;
430 430
431#ifdef IRIVER_H100 431#ifdef IRIVER_H120
432 GPIO_OUT &= ~0x01000000; /* GPIO24 is the Cypress chip power */ 432 GPIO_OUT &= ~0x01000000; /* GPIO24 is the Cypress chip power */
433 GPIO_ENABLE |= 0x01000000; 433 GPIO_ENABLE |= 0x01000000;
434 GPIO_FUNCTION |= 0x01000000; 434 GPIO_FUNCTION |= 0x01000000;