Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci-2.6.23
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci-2.6.23
Commits
d56c524a
Commit
d56c524a
authored
Nov 04, 2005
by
Russell King
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[PATCH] ARM: Reverted 2918/1: [update] Base port of Comdial MP1000 platfrom
No longer maintained
parent
866237ea
Changes
11
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
2 additions
and
1407 deletions
+2
-1407
arch/arm/Kconfig
arch/arm/Kconfig
+1
-2
arch/arm/boot/compressed/head.S
arch/arm/boot/compressed/head.S
+1
-2
arch/arm/configs/mp1000_defconfig
arch/arm/configs/mp1000_defconfig
+0
-897
arch/arm/mach-clps711x/Kconfig
arch/arm/mach-clps711x/Kconfig
+0
-11
arch/arm/mach-clps711x/Makefile
arch/arm/mach-clps711x/Makefile
+0
-1
arch/arm/mach-clps711x/mp1000-mach.c
arch/arm/mach-clps711x/mp1000-mach.c
+0
-49
arch/arm/mach-clps711x/mp1000-mm.c
arch/arm/mach-clps711x/mp1000-mm.c
+0
-47
arch/arm/mach-clps711x/mp1000-seprom.c
arch/arm/mach-clps711x/mp1000-seprom.c
+0
-195
drivers/serial/clps711x.c
drivers/serial/clps711x.c
+0
-9
include/asm-arm/arch-clps711x/hardware.h
include/asm-arm/arch-clps711x/hardware.h
+0
-117
include/asm-arm/arch-clps711x/mp1000-seprom.h
include/asm-arm/arch-clps711x/mp1000-seprom.h
+0
-77
No files found.
arch/arm/Kconfig
View file @
d56c524a
...
@@ -704,8 +704,7 @@ source "drivers/acorn/block/Kconfig"
...
@@ -704,8 +704,7 @@ source "drivers/acorn/block/Kconfig"
if PCMCIA || ARCH_CLPS7500 || ARCH_IOP3XX || ARCH_IXP4XX \
if PCMCIA || ARCH_CLPS7500 || ARCH_IOP3XX || ARCH_IXP4XX \
|| ARCH_L7200 || ARCH_LH7A40X || ARCH_PXA || ARCH_RPC \
|| ARCH_L7200 || ARCH_LH7A40X || ARCH_PXA || ARCH_RPC \
|| ARCH_S3C2410 || ARCH_SA1100 || ARCH_SHARK || FOOTBRIDGE \
|| ARCH_S3C2410 || ARCH_SA1100 || ARCH_SHARK || FOOTBRIDGE
|| MACH_MP1000
source "drivers/ide/Kconfig"
source "drivers/ide/Kconfig"
endif
endif
...
...
arch/arm/boot/compressed/head.S
View file @
d56c524a
...
@@ -39,8 +39,7 @@
...
@@ -39,8 +39,7 @@
defined
(
CONFIG_ARCH_IXP4XX
)
||
\
defined
(
CONFIG_ARCH_IXP4XX
)
||
\
defined
(
CONFIG_ARCH_IXP2000
)
||
\
defined
(
CONFIG_ARCH_IXP2000
)
||
\
defined
(
CONFIG_ARCH_LH7A40X
)
||
\
defined
(
CONFIG_ARCH_LH7A40X
)
||
\
defined
(
CONFIG_ARCH_OMAP
)
||
\
defined
(
CONFIG_ARCH_OMAP
)
defined
(
CONFIG_MACH_MP1000
)
.
macro
loadsp
,
rb
.
macro
loadsp
,
rb
addruart
\
rb
addruart
\
rb
.
endm
.
endm
...
...
arch/arm/configs/mp1000_defconfig
deleted
100644 → 0
View file @
866237ea
This diff is collapsed.
Click to expand it.
arch/arm/mach-clps711x/Kconfig
View file @
d56c524a
...
@@ -69,17 +69,6 @@ config EP72XX_ROM_BOOT
...
@@ -69,17 +69,6 @@ config EP72XX_ROM_BOOT
You almost surely want to say N here.
You almost surely want to say N here.
config MACH_MP1000
bool "MACH_MP1000"
help
Say Y if you intend to run the kernel on the Comdial MP1000 platform.
config MP1000_90MHZ
bool "MP1000_90MHZ"
depends on MACH_MP1000
help
Say Y if you have the MP1000 configured to be set at 90MHZ rather than 74MHZ
endmenu
endmenu
endif
endif
arch/arm/mach-clps711x/Makefile
View file @
d56c524a
...
@@ -15,7 +15,6 @@ obj-$(CONFIG_ARCH_CDB89712) += cdb89712.o
...
@@ -15,7 +15,6 @@ obj-$(CONFIG_ARCH_CDB89712) += cdb89712.o
obj-$(CONFIG_ARCH_CLEP7312)
+=
clep7312.o
obj-$(CONFIG_ARCH_CLEP7312)
+=
clep7312.o
obj-$(CONFIG_ARCH_EDB7211)
+=
edb7211-arch.o edb7211-mm.o
obj-$(CONFIG_ARCH_EDB7211)
+=
edb7211-arch.o edb7211-mm.o
obj-$(CONFIG_ARCH_FORTUNET)
+=
fortunet.o
obj-$(CONFIG_ARCH_FORTUNET)
+=
fortunet.o
obj-$(CONFIG_MACH_MP1000)
+=
mp1000-mach.o mp1000-mm.o mp1000-seprom.o
obj-$(CONFIG_ARCH_P720T)
+=
p720t.o
obj-$(CONFIG_ARCH_P720T)
+=
p720t.o
leds-$(CONFIG_ARCH_P720T)
+=
p720t-leds.o
leds-$(CONFIG_ARCH_P720T)
+=
p720t-leds.o
obj-$(CONFIG_LEDS)
+=
$
(
leds-y
)
obj-$(CONFIG_LEDS)
+=
$
(
leds-y
)
arch/arm/mach-clps711x/mp1000-mach.c
deleted
100644 → 0
View file @
866237ea
/*
* linux/arch/arm/mach-mp1000/mp1000.c
*
* Copyright (C) 2005 Comdial Corporation
*
* 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 program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include <linux/init.h>
#include <linux/types.h>
#include <linux/string.h>
#include <asm/setup.h>
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/arch/mp1000-seprom.h>
#include "common.h"
extern
void
mp1000_map_io
(
void
);
static
void
__init
mp1000_init
(
void
)
{
seprom_init
();
}
MACHINE_START
(
MP1000
,
"Comdial MP1000"
)
/* Maintainer: Jon Ringle */
.
phys_ram
=
0xc0000000
,
.
phys_io
=
0x80000000
,
.
io_pg_offst
=
((
0xff000000
)
>>
18
)
&
0xfffc
,
.
boot_params
=
0xc0015100
,
.
map_io
=
mp1000_map_io
,
.
init_irq
=
clps711x_init_irq
,
.
init_machine
=
mp1000_init
,
.
timer
=
&
clps711x_timer
,
MACHINE_END
arch/arm/mach-clps711x/mp1000-mm.c
deleted
100644 → 0
View file @
866237ea
/*
* linux/arch/arm/mach-mp1000/mm.c
*
* Extra MM routines for the MP1000
*
* Copyright (C) 2005 Comdial Corporation
*
* 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 program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include <linux/kernel.h>
#include <linux/init.h>
#include <asm/hardware.h>
#include <asm/page.h>
#include <asm/pgtable.h>
#include <asm/sizes.h>
#include <asm/mach/map.h>
extern
void
clps711x_map_io
(
void
);
static
struct
map_desc
mp1000_io_desc
[]
__initdata
=
{
{
MP1000_EIO_BASE
,
MP1000_EIO_START
,
MP1000_EIO_SIZE
,
MT_DEVICE
},
{
MP1000_FIO_BASE
,
MP1000_FIO_START
,
MP1000_FIO_SIZE
,
MT_DEVICE
},
{
MP1000_LIO_BASE
,
MP1000_LIO_START
,
MP1000_LIO_SIZE
,
MT_DEVICE
},
{
MP1000_NIO_BASE
,
MP1000_NIO_START
,
MP1000_NIO_SIZE
,
MT_DEVICE
},
{
MP1000_IDE_BASE
,
MP1000_IDE_START
,
MP1000_IDE_SIZE
,
MT_DEVICE
},
{
MP1000_DSP_BASE
,
MP1000_DSP_START
,
MP1000_DSP_SIZE
,
MT_DEVICE
}
};
void
__init
mp1000_map_io
(
void
)
{
clps711x_map_io
();
iotable_init
(
mp1000_io_desc
,
ARRAY_SIZE
(
mp1000_io_desc
));
}
arch/arm/mach-clps711x/mp1000-seprom.c
deleted
100644 → 0
View file @
866237ea
/*`
* mp1000-seprom.c
*
* This file contains the Serial EEPROM code for the MP1000 board
*
* Copyright (C) 2005 Comdial Corporation
*
* 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 program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
*/
#include <linux/kernel.h>
#include <linux/init.h>
#include <asm/hardware.h>
#include <asm/hardware/clps7111.h>
#include <asm/arch/mp1000-seprom.h>
/* If SepromInit() can initialize and checksum the seprom successfully, */
/* then it will point seprom_data_ptr at the shadow copy. */
static
eeprom_struct
seprom_data
;
/* shadow copy of seprom content */
eeprom_struct
*
seprom_data_ptr
=
0
;
/* 0 => not initialized */
/*
* Port D Bit 5 is Chip Select for EEPROM
* Port E Bit 0 is Input, Data out from EEPROM
* Port E Bit 1 is Output, Data in to EEPROM
* Port E Bit 2 is Output, CLK to EEPROM
*/
static
char
*
port_d_ptr
=
(
char
*
)(
CLPS7111_VIRT_BASE
+
PDDR
);
static
char
*
port_e_ptr
=
(
char
*
)(
CLPS7111_VIRT_BASE
+
PEDR
);
#define NO_OF_SHORTS 64 // Device is 64 x 16 bits
#define ENABLE_RW 0
#define DISABLE_RW 1
static
inline
void
toggle_seprom_clock
(
void
)
{
*
port_e_ptr
|=
HwPortESepromCLK
;
*
port_e_ptr
&=
~
(
HwPortESepromCLK
);
}
static
inline
void
select_eeprom
(
void
)
{
*
port_d_ptr
|=
HwPortDEECS
;
*
port_e_ptr
&=
~
(
HwPortESepromCLK
);
}
static
inline
void
deselect_eeprom
(
void
)
{
*
port_d_ptr
&=
~
(
HwPortDEECS
);
*
port_e_ptr
&=
~
(
HwPortESepromDIn
);
}
/*
* GetSepromDataPtr - returns pointer to shadow (RAM) copy of seprom
* and returns 0 if seprom is not initialized or
* has a checksum error.
*/
eeprom_struct
*
get_seprom_ptr
(
void
)
{
return
seprom_data_ptr
;
}
unsigned
char
*
get_eeprom_mac_address
(
void
)
{
return
seprom_data_ptr
->
variant
.
eprom_struct
.
mac_Address
;
}
/*
* ReadSProm, Physically reads data from the Serial PROM
*/
static
void
read_sprom
(
short
address
,
int
length
,
eeprom_struct
*
buffer
)
{
short
data
=
COMMAND_READ
|
(
address
&
0x3F
);
short
bit
;
int
i
;
select_eeprom
();
// Clock in 9 bits of the command
for
(
i
=
0
,
bit
=
0x100
;
i
<
9
;
i
++
,
bit
>>=
1
)
{
if
(
data
&
bit
)
*
port_e_ptr
|=
HwPortESepromDIn
;
else
*
port_e_ptr
&=
~
(
HwPortESepromDIn
);
toggle_seprom_clock
();
}
//
// Now read one or more shorts of data from the Seprom
//
while
(
length
--
>
0
)
{
data
=
0
;
// Read 16 bits at a time
for
(
i
=
0
;
i
<
16
;
i
++
)
{
data
<<=
1
;
toggle_seprom_clock
();
data
|=
*
port_e_ptr
&
HwPortESepromDOut
;
}
buffer
->
variant
.
eprom_short_data
[
address
++
]
=
data
;
}
deselect_eeprom
();
return
;
}
/*
* ReadSerialPROM
*
* Input: Pointer to array of 64 x 16 Bits
*
* Output: if no problem reading data is filled in
*/
static
void
read_serial_prom
(
eeprom_struct
*
data
)
{
read_sprom
(
0
,
64
,
data
);
}
//
// Compute Serial EEPROM checksum
//
// Input: Pointer to struct with Eprom data
//
// Output: The computed Eprom checksum
//
static
short
compute_seprom_checksum
(
eeprom_struct
*
data
)
{
short
checksum
=
0
;
int
i
;
for
(
i
=
0
;
i
<
126
;
i
++
)
{
checksum
+=
(
short
)
data
->
variant
.
eprom_byte_data
[
i
];
}
return
((
short
)(
0x5555
-
(
checksum
&
0xFFFF
)));
}
//
// Make sure the data port bits for the SEPROM are correctly initialised
//
void
__init
seprom_init
(
void
)
{
short
checksum
;
// Init Port D
*
(
char
*
)(
CLPS7111_VIRT_BASE
+
PDDDR
)
=
0x0
;
*
(
char
*
)(
CLPS7111_VIRT_BASE
+
PDDR
)
=
0x15
;
// Init Port E
*
(
int
*
)(
CLPS7111_VIRT_BASE
+
PEDDR
)
=
0x06
;
*
(
int
*
)(
CLPS7111_VIRT_BASE
+
PEDR
)
=
0x04
;
//
// Make sure that EEPROM struct size never exceeds 128 bytes
//
if
(
sizeof
(
eeprom_struct
)
>
128
)
{
panic
(
"Serial PROM struct size > 128, aborting read
\n
"
);
}
read_serial_prom
(
&
seprom_data
);
checksum
=
compute_seprom_checksum
(
&
seprom_data
);
if
(
checksum
!=
seprom_data
.
variant
.
eprom_short_data
[
63
])
{
panic
(
"Serial EEPROM checksum failed
\n
"
);
}
seprom_data_ptr
=
&
seprom_data
;
}
drivers/serial/clps711x.c
View file @
d56c524a
...
@@ -408,11 +408,7 @@ static struct uart_port clps711x_ports[UART_NR] = {
...
@@ -408,11 +408,7 @@ static struct uart_port clps711x_ports[UART_NR] = {
{
{
.
iobase
=
SYSCON1
,
.
iobase
=
SYSCON1
,
.
irq
=
IRQ_UTXINT1
,
/* IRQ_URXINT1, IRQ_UMSINT */
.
irq
=
IRQ_UTXINT1
,
/* IRQ_URXINT1, IRQ_UMSINT */
#ifdef CONFIG_MP1000_90MHZ
.
uartclk
=
4515840
,
#else
.
uartclk
=
3686400
,
.
uartclk
=
3686400
,
#endif
.
fifosize
=
16
,
.
fifosize
=
16
,
.
ops
=
&
clps711x_pops
,
.
ops
=
&
clps711x_pops
,
.
line
=
0
,
.
line
=
0
,
...
@@ -421,11 +417,7 @@ static struct uart_port clps711x_ports[UART_NR] = {
...
@@ -421,11 +417,7 @@ static struct uart_port clps711x_ports[UART_NR] = {
{
{
.
iobase
=
SYSCON2
,
.
iobase
=
SYSCON2
,
.
irq
=
IRQ_UTXINT2
,
/* IRQ_URXINT2 */
.
irq
=
IRQ_UTXINT2
,
/* IRQ_URXINT2 */
#ifdef CONFIG_MP1000_90MHZ
.
uartclk
=
4515840
,
#else
.
uartclk
=
3686400
,
.
uartclk
=
3686400
,
#endif
.
fifosize
=
16
,
.
fifosize
=
16
,
.
ops
=
&
clps711x_pops
,
.
ops
=
&
clps711x_pops
,
.
line
=
1
,
.
line
=
1
,
...
@@ -559,7 +551,6 @@ console_initcall(clps711xuart_console_init);
...
@@ -559,7 +551,6 @@ console_initcall(clps711xuart_console_init);
static
struct
uart_driver
clps711x_reg
=
{
static
struct
uart_driver
clps711x_reg
=
{
.
driver_name
=
"ttyCL"
,
.
driver_name
=
"ttyCL"
,
.
dev_name
=
"ttyCL"
,
.
dev_name
=
"ttyCL"
,
.
devfs_name
=
"ttyCL"
,
.
major
=
SERIAL_CLPS711X_MAJOR
,
.
major
=
SERIAL_CLPS711X_MAJOR
,
.
minor
=
SERIAL_CLPS711X_MINOR
,
.
minor
=
SERIAL_CLPS711X_MINOR
,
.
nr
=
UART_NR
,
.
nr
=
UART_NR
,
...
...
include/asm-arm/arch-clps711x/hardware.h
View file @
d56c524a
...
@@ -235,121 +235,4 @@
...
@@ -235,121 +235,4 @@
#define CEIVA_PB0_BLK_BTN (1<<0)
#define CEIVA_PB0_BLK_BTN (1<<0)
#endif // #if defined (CONFIG_ARCH_CEIVA)
#endif // #if defined (CONFIG_ARCH_CEIVA)
#if defined (CONFIG_MACH_MP1000)
/* NOR FLASH */
#define MP1000_NIO_BASE 0xf9000000
/* virtual */
#define MP1000_NIO_START CS0_PHYS_BASE
/* physical */
#define MP1000_NIO_SIZE 0x00400000
/* DSP Interface */
#define MP1000_DSP_BASE 0xfa000000
/* virtual */
#define MP1000_DSP_START CS1_PHYS_BASE
/* physical */
#define MP1000_DSP_SIZE 0x00100000
/* LCD, DAA/DSP, RTC, DAA RW Reg all in CS2 */
#define MP1000_LIO_BASE 0xfb000000
/* virtual */
#define MP1000_LIO_START CS2_PHYS_BASE
/* physical */
#define MP1000_LIO_SIZE 0x00100000
/* NAND FLASH */
#define MP1000_FIO_BASE 0xfc000000
/* virtual */
#define MP1000_FIO_START CS3_PHYS_BASE
/* physical */
#define MP1000_FIO_SIZE 0x00800000
/* Ethernet */
#define MP1000_EIO_BASE 0xfd000000
/* virtual */
#define MP1000_EIO_START CS4_PHYS_BASE
/* physical */
#define MP1000_EIO_SIZE 0x00100000
#define MP1000_LCD_OFFSET 0x00000000
/* LCD offset in CS2 */
#define MP1000_DDD_OFFSET 0x00001000
/* DAA/DAI/DSP sft reset offst*/
#define MP1000_RTC_OFFSET 0x00002000
/* RTC offset in CS2 */
#define MP1000_DAA_OFFSET 0x00003000
/* DAA RW reg offset in CS2 */
/* IDE */
#define MP1000_IDE_BASE 0xfe000000
/* virtual */
#define MP1000_IDE_START CS5_PHYS_BASE
/* physical */
#define MP1000_IDE_SIZE 0x00100000
/* actually it's only 0x1000 */
#define IRQ_HARDDISK IRQ_EINT2
/*
* IDE registers definition
*/
#define IDE_CONTROL_BASE (MP1000_IDE_BASE + 0x1000)
#define IDE_BASE_OFF (MP1000_IDE_BASE)
#define IDE_WRITE_DEVICE_DATA (IDE_BASE_OFF + 0x0)
#define IDE_FEATURES_REGISTER (IDE_BASE_OFF + 0x2)
#define IDE_SECTOR_COUNT_REGISTER (IDE_BASE_OFF + 0x4)
#define IDE_SECTOR_NUMBER_REGISTER (IDE_BASE_OFF + 0x6)
#define IDE_CYLINDER_LOW_REGISTER (IDE_BASE_OFF + 0x8)
#define IDE_CYLINDER_HIGH_REGISTER (IDE_BASE_OFF + 0xa)
#define IDE_DEVICE_HEAD_REGISTER (IDE_BASE_OFF + 0xc)
#define IDE_COMMAND_DATA_REGISTER (IDE_BASE_OFF + 0xe)
#define IDE_DEVICE_CONTROL_REGISTER (IDE_CONTROL_BASE + 0xc)
#define IDE_IRQ IRQ_EINT2
#define RTC_PORT(x) (MP1000_LIO_BASE+0x2000 + (x*2))
#define RTC_ALWAYS_BCD 0
/*
// Definitions of the bit fields in the HwPortA register for the
// MP1000 board.
*/
#define HwPortAKeyboardRow1 0x00000001
#define HwPortAKeyboardRow2 0x00000002
#define HwPortAKeyboardRow3 0x00000004
#define HwPortAKeyboardRow4 0x00000008
#define HwPortAKeyboardRow5 0x00000010
#define HwPortAKeyboardRow6 0x00000020
#define HwPortALCDEnable 0x00000040
#define HwPortAOffhook 0x00000080
/*
// Definitions of the bit fields in the HwPortB register for the
// MP1000 board.
*/
#define HwPortBL3Mode 0x00000001
#define HwPortBL3Clk 0x00000002
#define HwPortBSClk 0x00000001
#define HwPortBSData 0x00000002
#define HwPortBL3Data 0x00000004
#define HwPortBMute 0x00000008
#define HwPortBQD0 0x00000010
#define HwPortBQD1 0x00000020
#define HwPortBQD2 0x00000040
#define HwPortBQD3 0x00000080
/*
// Definitions of the bit fields in the HwPortD register for the
// MP1000 board.
*/
#define HwPortDLED1 0x00000001
#define HwPortDLED2 0x00000002
#define HwPortDLED3 0x00000004
#define HwPortDLED4 0x00000008
#define HwPortDLED5 0x00000010
#define HwPortDEECS 0x00000020
#define HwPortBRTS 0x00000040
#define HwPortBRI 0x00000080
/*
// Definitions of the bit fields in the HwPortE register for the
// MP1000 board.
*/
#define HwPortECLE 0x00000001
#define HwPortESepromDOut 0x00000001
#define HwPortEALE 0x00000002
#define HwPortESepromDIn 0x00000002
#define HwPortENANDCS 0x00000004
#define HwPortESepromCLK 0x00000004
#endif // #if defined (CONFIG_MACH_MP1000)
#endif
#endif
include/asm-arm/arch-clps711x/mp1000-seprom.h
deleted
100644 → 0
View file @
866237ea
#ifndef MP1000_SEPROM_H
#define MP1000_SEPROM_H
/*
* mp1000-seprom.h
*
*
* This file contains the Serial EEPROM definitions for the MP1000 board
*
* Copyright (C) 2005 Comdial Corporation
*
* 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 program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
*/
#define COMMAND_ERASE (0x1C0)
#define COMMAND_ERASE_ALL (0x120)
#define COMMAND_WRITE_DISABLE (0x100)
#define COMMAND_WRITE_ENABLE (0x130)
#define COMMAND_READ (0x180)
#define COMMAND_WRITE (0x140)
#define COMMAND_WRITE_ALL (0x110)
//
// Serial EEPROM data format
//
#define PACKED __attribute__ ((packed))
typedef
struct
_EEPROM
{
union
{
unsigned
char
eprom_byte_data
[
128
];
unsigned
short
eprom_short_data
[
64
];
struct
{
unsigned
char
version
PACKED
;
// EEPROM Version "1" for now
unsigned
char
box_id
PACKED
;
// Box ID (Standalone, SOHO, embedded, etc)
unsigned
char
major_hw_version
PACKED
;
// Major Hardware version (Hex)
unsigned
char
minor_hw_version
PACKED
;
// Minor Hardware Version (Hex)
unsigned
char
mfg_id
[
3
]
PACKED
;
// Manufacturer ID (3 character Alphabetic)
unsigned
char
mfg_serial_number
[
10
]
PACKED
;
// Manufacturer Serial number
unsigned
char
mfg_date
[
3
]
PACKED
;
// Date of Mfg (Formatted YY:MM:DD)
unsigned
char
country
PACKED
;
// Country of deployment
unsigned
char
mac_Address
[
6
]
PACKED
;
// MAC Address
unsigned
char
oem_string
[
20
]
PACKED
;
// OEM ID string
unsigned
short
feature_bits1
PACKED
;
// Feature Bits 1
unsigned
short
feature_bits2
PACKED
;
// Feature Bits 2
unsigned
char
filler
[
75
]
PACKED
;
// Unused/Undefined 0 initialized
unsigned
short
checksum
PACKED
;
// byte accumulated short checksum
}
eprom_struct
;
}
variant
;
}
eeprom_struct
;
/* These settings must be mutually exclusive */
#define FEATURE_BITS1_DRAMSIZE_16MEG 0x0001
/* 0 signifies 4 MEG system */
#define FEATURE_BITS1_DRAMSIZE_8MEG 0x0002
/* 1 in bit 1 = 8MEG system */
#define FEATURE_BITS1_DRAMSIZE_64MEG 0x0004
/* 1 in bit 2 = 64MEG system */
#define FEATURE_BITS1_CPUIS90MEG 0x0010
extern
void
seprom_init
(
void
);
extern
eeprom_struct
*
get_seprom_ptr
(
void
);
extern
unsigned
char
*
get_eeprom_mac_address
(
void
);
#endif
/* MP1000_SEPROM_H */
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment