URL
https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk
Subversion Repositories openrisc_me
Compare Revisions
- This comparison shows the changes necessary to convert path
/openrisc/trunk/rtos/ecos-2.0/packages/hal/mips/jmr3904/v2_0
- from Rev 27 to Rev 174
- ↔ Reverse comparison
Rev 27 → Rev 174
/cdl/hal_mips_tx39_jmr3904.cdl
0,0 → 1,273
# ==================================================================== |
# |
# hal_mips_tx39_jmr3904.cdl |
# |
# TX39/JMR3904 board HAL package configuration data |
# |
# ==================================================================== |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos 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 or (at your option) any later version. |
## |
## eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
# ==================================================================== |
######DESCRIPTIONBEGIN#### |
# |
# Author(s): jskov |
# Original data: bartv |
# Contributors: |
# Date: 1999-11-02 |
# |
#####DESCRIPTIONEND#### |
# |
# ==================================================================== |
|
cdl_package CYGPKG_HAL_MIPS_TX39_JMR3904 { |
display "JMR3904 evaluation board" |
parent CYGPKG_HAL_MIPS |
requires CYGPKG_HAL_MIPS_TX39 |
define_header hal_mips_tx39_jmr3904.h |
include_dir cyg/hal |
description " |
The JMR3904 HAL package should be used when targetting the |
actual hardware. The same package can also be used when |
running on the full simulator, since this provides an |
accurate simulation of the hardware including I/O devices. |
To use the simulator in this mode the command |
`target sim --board=jmr3904' should be used from inside gdb." |
|
compile platform.S plf_misc.c plf_stub.c |
|
implements CYGINT_HAL_DEBUG_GDB_STUBS |
|
define_proc { |
puts $::cdl_system_header "#define CYGBLD_HAL_TARGET_H <pkgconf/hal_mips_tx39.h>" |
puts $::cdl_system_header "#define CYGBLD_HAL_PLATFORM_H <pkgconf/hal_mips_tx39_jmr3904.h>" |
} |
|
cdl_component CYG_HAL_STARTUP { |
display "Startup type" |
flavor data |
legal_values {"RAM" "ROM"} |
default_value {"RAM"} |
no_define |
define -file system.h CYG_HAL_STARTUP |
description " |
When targetting the JMR3904 board it is possible to build |
the system for either RAM bootstrap, ROM bootstrap, or STUB |
bootstrap. RAM bootstrap generally requires that the board |
is equipped with ROMs containing a suitable ROM monitor or |
equivalent software that allows GDB to download the eCos |
application on to the board. The ROM bootstrap typically |
requires that the eCos application be blown into EPROMs or |
equivalent technology." |
} |
|
cdl_option CYGHWR_HAL_MIPS_TX39_JMR3904_DRAM_CONFIG { |
display "DRAM configuration" |
flavor data |
legal_values {"4MB" "8MB" "16MB"} |
default_value {"16MB"} |
description " |
DRAM configuration. 4MB (1MBit (x4bit) x 8), 8MByte (1MBit |
(x4bit) x 8 x 2 banks) or 16MByte (4MBit (x4bit) x |
8). Only change if you are aware of the consequences." |
} |
|
|
cdl_option CYGHWR_HAL_MIPS_TX39_JMR3904_DRAM_CONFIG_INIT { |
display "DRAM config init" |
flavor data |
description "This is the value used for the hardware." |
calculated { CYGHWR_HAL_MIPS_TX39_JMR3904_DRAM_CONFIG == "4MB" ? 0x08013020 : \ |
CYGHWR_HAL_MIPS_TX39_JMR3904_DRAM_CONFIG == "8MB" ? 0x08013020 : 0x08024030 } |
} |
|
cdl_option CYGHWR_HAL_MIPS_TX39_JMR3904_ENABLE_TOE { |
display "Bus timeout detection" |
default_value 0 |
description " |
Only change if you are aware of the consequences." |
} |
|
# Real-time clock/counter specifics |
cdl_component CYGNUM_HAL_RTC_CONSTANTS { |
display "Real-time clock constants." |
flavor none |
|
cdl_option CYGNUM_HAL_RTC_NUMERATOR { |
display "Real-time clock numerator" |
flavor data |
calculated 1000000000 |
} |
cdl_option CYGNUM_HAL_RTC_DENOMINATOR { |
display "Real-time clock denominator" |
flavor data |
calculated 100 |
} |
# Isn't a nice way to handle freq requirement! |
cdl_option CYGNUM_HAL_RTC_PERIOD { |
display "Real-time clock period" |
flavor data |
legal_values { 15360 20736 } |
calculated { CYGHWR_HAL_MIPS_CPU_FREQ == 50 ? 15360 : \ |
CYGHWR_HAL_MIPS_CPU_FREQ == 66 ? 20736 : 0 } |
} |
} |
|
cdl_component CYGBLD_GLOBAL_OPTIONS { |
display "Global build options" |
flavor none |
parent CYGPKG_NONE |
description " |
Global build options including control over |
compiler flags, linker flags and choice of toolchain." |
|
|
cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX { |
display "Global command prefix" |
flavor data |
no_define |
default_value { "mips-tx39-elf" } |
description " |
This option specifies the command prefix used when |
invoking the build tools." |
} |
|
cdl_option CYGBLD_GLOBAL_CFLAGS { |
display "Global compiler flags" |
flavor data |
no_define |
default_value { "-Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" } |
description " |
This option controls the global compiler flags which |
are used to compile all packages by |
default. Individual packages may define |
options which override these global flags." |
} |
|
cdl_option CYGBLD_GLOBAL_LDFLAGS { |
display "Global linker flags" |
flavor data |
no_define |
default_value { "-g -nostdlib -Wl,--gc-sections -Wl,-static" } |
description " |
This option controls the global linker flags. Individual |
packages may define options which override these global flags." |
} |
|
cdl_option CYGBLD_BUILD_GDB_STUBS { |
display "Build GDB stub ROM image" |
default_value 0 |
requires { CYG_HAL_STARTUP == "ROM" } |
requires CYGSEM_HAL_ROM_MONITOR |
requires CYGBLD_BUILD_COMMON_GDB_STUBS |
requires CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
requires ! CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT |
requires ! CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT |
requires ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT |
requires ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM |
no_define |
description " |
This option enables the building of the GDB stubs for the |
board. The common HAL controls takes care of most of the |
build process, but the final conversion from ELF image to |
binary data is handled by the platform CDL, allowing |
relocation of the data if necessary." |
|
make -priority 320 { |
<PREFIX>/bin/gdb_module.bin : <PREFIX>/bin/gdb_module.img |
$(OBJCOPY) -O binary $< $@ |
} |
} |
} |
|
cdl_component CYGHWR_MEMORY_LAYOUT { |
display "Memory layout" |
flavor data |
no_define |
calculated { CYG_HAL_STARTUP == "RAM" ? "mips_tx39_jmr3904_ram" : \ |
"mips_tx39_jmr3904_rom" } |
|
cdl_option CYGHWR_MEMORY_LAYOUT_LDI { |
display "Memory layout linker script fragment" |
flavor data |
no_define |
define -file system.h CYGHWR_MEMORY_LAYOUT_LDI |
calculated { CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_mips_tx39_jmr3904_ram.ldi>" : \ |
"<pkgconf/mlt_mips_tx39_jmr3904_rom.ldi>" } |
} |
|
cdl_option CYGHWR_MEMORY_LAYOUT_H { |
display "Memory layout header file" |
flavor data |
no_define |
define -file system.h CYGHWR_MEMORY_LAYOUT_H |
calculated { CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_mips_tx39_jmr3904_ram.h>" : \ |
"<pkgconf/mlt_mips_tx39_jmr3904_rom.h>" } |
} |
} |
|
cdl_option CYGSEM_HAL_USE_ROM_MONITOR { |
display "Work with a ROM monitor" |
flavor booldata |
legal_values { "Generic" "CygMon" "GDB_stubs" } |
default_value { CYG_HAL_STARTUP == "RAM" ? "CygMon" : 0 } |
parent CYGPKG_HAL_ROM_MONITOR |
requires { CYG_HAL_STARTUP == "RAM" } |
description " |
Support can be enabled for three different varieties of ROM monitor. |
This support changes various eCos semantics such as the encoding |
of diagnostic output, or the overriding of hardware interrupt |
vectors. |
Firstly there is \"Generic\" support which prevents the HAL |
from overriding the hardware vectors that it does not use, to |
instead allow an installed ROM monitor to handle them. This is |
the most basic support which is likely to be common to most |
implementations of ROM monitor. |
\"CygMon\" provides support for the Cygnus ROM Monitor. |
And finally, \"GDB_stubs\" provides support when GDB stubs are |
included in the ROM monitor or boot ROM." |
} |
|
cdl_option CYGSEM_HAL_ROM_MONITOR { |
display "Behave as a ROM monitor" |
flavor bool |
default_value 0 |
parent CYGPKG_HAL_ROM_MONITOR |
requires { CYG_HAL_STARTUP == "ROM" } |
description " |
Enable this option if this program is to be used as a ROM monitor, |
i.e. applications will be loaded into RAM on the board, and this |
ROM monitor may process exceptions or interrupts generated from the |
application. This enables features such as utilizing a separate |
interrupt stack when exceptions are generated." |
} |
} |
/include/plf_intr.h
0,0 → 1,87
#ifndef CYGONCE_HAL_PLF_INTR_H |
#define CYGONCE_HAL_PLF_INTR_H |
|
//========================================================================== |
// |
// plf_intr.h |
// |
// JMR3904 Interrupt and clock support |
// |
//========================================================================== |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos 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 or (at your option) any later version. |
// |
// eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//========================================================================== |
//#####DESCRIPTIONBEGIN#### |
// |
// Author(s): nickg |
// Contributors: nickg, jskov, |
// gthomas, jlarmour |
// Date: 1999-02-16 |
// Purpose: Define Interrupt support |
// Description: The macros defined here provide the HAL APIs for handling |
// interrupts and the clock for the JMR3904 board. |
// |
// Usage: |
// #include <cyg/hal/plf_intr.h> |
// ... |
// |
// |
//####DESCRIPTIONEND#### |
// |
//========================================================================== |
|
#include <pkgconf/hal.h> |
|
#include <cyg/infra/cyg_type.h> |
|
//-------------------------------------------------------------------------- |
// Control-C support. |
|
#if defined(CYGDBG_HAL_MIPS_DEBUG_GDB_CTRLC_SUPPORT) |
|
# define CYGHWR_HAL_GDB_PORT_VECTOR CYGNUM_HAL_INTERRUPT_SIO_0 |
|
externC cyg_uint32 hal_ctrlc_isr(CYG_ADDRWORD vector, CYG_ADDRWORD data); |
|
# define HAL_CTRLC_ISR hal_ctrlc_isr |
|
#endif |
|
|
//---------------------------------------------------------------------------- |
// Reset. |
#define HAL_PLATFORM_RESET() CYG_EMPTY_STATEMENT |
|
//-------------------------------------------------------------------------- |
#endif // ifndef CYGONCE_HAL_PLF_INTR_H |
// End of plf_intr.h |
/include/plf_stub.h
0,0 → 1,85
#ifndef CYGONCE_HAL_PLF_STUB_H |
#define CYGONCE_HAL_PLF_STUB_H |
|
//============================================================================= |
// |
// plf_stub.h |
// |
// Platform header for GDB stub support. |
// |
//============================================================================= |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos 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 or (at your option) any later version. |
// |
// eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//============================================================================= |
//#####DESCRIPTIONBEGIN#### |
// |
// Author(s): jskov |
// Contributors:jskov |
// Date: 1999-02-12 |
// Purpose: Platform HAL stub support for MIPS/JMR3904 boards. |
// Usage: #include <cyg/hal/plf_stub.h> |
// |
//####DESCRIPTIONEND#### |
// |
//============================================================================= |
|
#include <pkgconf/hal.h> |
#include <pkgconf/hal_mips_tx39_jmr3904.h> |
|
#ifdef CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
|
#include <cyg/infra/cyg_type.h> // CYG_UNUSED_PARAM |
|
#include <cyg/hal/mips-stub.h> // architecture stub support |
|
//---------------------------------------------------------------------------- |
// Define serial stuff. |
extern void hal_jmr_init_serial( void ); |
extern int hal_jmr_get_char( void ); |
extern void hal_jmr_put_char( int c ); |
|
#define HAL_STUB_PLATFORM_INIT_SERIAL() hal_jmr_init_serial() |
#define HAL_STUB_PLATFORM_GET_CHAR() hal_jmr_get_char() |
#define HAL_STUB_PLATFORM_PUT_CHAR(c) hal_jmr_put_char((c)) |
#define HAL_STUB_PLATFORM_SET_BAUD_RATE(baud) CYG_UNUSED_PARAM(int, (baud)) |
#define HAL_STUB_PLATFORM_INTERRUPTIBLE 0 |
#define HAL_STUB_PLATFORM_INIT_BREAK_IRQ() CYG_EMPTY_STATEMENT |
|
//---------------------------------------------------------------------------- |
// Stub initializer. |
#define HAL_STUB_PLATFORM_STUBS_INIT() CYG_EMPTY_STATEMENT |
|
#endif // ifdef CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
//----------------------------------------------------------------------------- |
#endif // CYGONCE_HAL_PLF_STUB_H |
// End of plf_stub.h |
/include/pkgconf/mlt_mips_tx39_jmr3904_rom.h
0,0 → 1,20
// eCos memory layout - Fri Oct 20 06:20:57 2000 |
|
// This is a generated file - do not edit |
|
#ifndef __ASSEMBLER__ |
#include <cyg/infra/cyg_type.h> |
#include <stddef.h> |
|
#endif |
#define CYGMEM_REGION_ram (0x80000200) |
#define CYGMEM_REGION_ram_SIZE (0x7fe00) |
#define CYGMEM_REGION_ram_ATTR (CYGMEM_REGION_ATTR_R | CYGMEM_REGION_ATTR_W) |
#define CYGMEM_REGION_rom (0xbfc00000) |
#define CYGMEM_REGION_rom_SIZE (0x80000) |
#define CYGMEM_REGION_rom_ATTR (CYGMEM_REGION_ATTR_R) |
#ifndef __ASSEMBLER__ |
extern char CYG_LABEL_NAME (__heap1) []; |
#endif |
#define CYGMEM_SECTION_heap1 (CYG_LABEL_NAME (__heap1)) |
#define CYGMEM_SECTION_heap1_SIZE (0x80080000 - (size_t) CYG_LABEL_NAME (__heap1)) |
/include/pkgconf/mlt_mips_tx39_jmr3904_rom.ldi
0,0 → 1,40
// eCos memory layout - Fri Oct 20 06:20:57 2000 |
|
// This is a generated file - do not edit |
|
#include <cyg/infra/cyg_type.inc> |
|
MEMORY |
{ |
ram : ORIGIN = 0x80000200, LENGTH = 0x7fe00 |
rom : ORIGIN = 0xbfc00000, LENGTH = 0x80000 |
} |
|
SECTIONS |
{ |
SECTIONS_BEGIN |
SECTION_rom_vectors (rom, 0xbfc00000, LMA_EQ_VMA) |
SECTION_ROMISC (rom, ALIGN (0x8), LMA_EQ_VMA) |
SECTION_RELOCS (rom, ALIGN (0x8), LMA_EQ_VMA) |
SECTION_init (rom, ALIGN (0x8), LMA_EQ_VMA) |
SECTION_text (rom, ALIGN (0x8), LMA_EQ_VMA) |
SECTION_fini (rom, ALIGN (0x8), LMA_EQ_VMA) |
SECTION_rodata (rom, ALIGN (0x8), LMA_EQ_VMA) |
SECTION_rodata1 (rom, ALIGN (0x8), LMA_EQ_VMA) |
SECTION_data (ram, 0x80000200, FOLLOWING (.rodata1)) |
SECTION_data1 (ram, ALIGN (0x8), FOLLOWING (.data)) |
SECTION_eh_frame (ram, ALIGN (0x8), FOLLOWING (.data1)) |
SECTION_gcc_except_table (ram, ALIGN (0x8), FOLLOWING (.eh_frame)) |
SECTION_ctors (ram, ALIGN (0x8), FOLLOWING (.gcc_except_table)) |
SECTION_dtors (ram, ALIGN (0x8), FOLLOWING (.ctors)) |
SECTION_devtab (ram, ALIGN (0x8), FOLLOWING (.dtors)) |
SECTION_got (ram, ALIGN (0x8), FOLLOWING (.devtab)) |
SECTION_dynamic (ram, ALIGN (0x8), FOLLOWING (.got)) |
SECTION_sdata (ram, ALIGN (0x8), FOLLOWING (.dynamic)) |
SECTION_lit8 (ram, ALIGN (0x8), FOLLOWING (.sdata)) |
SECTION_lit4 (ram, ALIGN (0x8), FOLLOWING (.lit8)) |
SECTION_sbss (ram, ALIGN (0x8), LMA_EQ_VMA) |
SECTION_bss (ram, ALIGN (0x8), LMA_EQ_VMA) |
CYG_LABEL_DEFN(__heap1) = ALIGN (0x8); |
SECTIONS_END |
} |
/include/pkgconf/mlt_mips_tx39_jmr3904_ram.h
0,0 → 1,17
// eCos memory layout - Fri Oct 20 06:19:41 2000 |
|
// This is a generated file - do not edit |
|
#ifndef __ASSEMBLER__ |
#include <cyg/infra/cyg_type.h> |
#include <stddef.h> |
|
#endif |
#define CYGMEM_REGION_ram (0x80008000) |
#define CYGMEM_REGION_ram_SIZE (0x78000) |
#define CYGMEM_REGION_ram_ATTR (CYGMEM_REGION_ATTR_R | CYGMEM_REGION_ATTR_W) |
#ifndef __ASSEMBLER__ |
extern char CYG_LABEL_NAME (__heap1) []; |
#endif |
#define CYGMEM_SECTION_heap1 (CYG_LABEL_NAME (__heap1)) |
#define CYGMEM_SECTION_heap1_SIZE (0x80080000 - (size_t) CYG_LABEL_NAME (__heap1)) |
/include/pkgconf/mlt_mips_tx39_jmr3904_ram.ldi
0,0 → 1,39
// eCos memory layout - Fri Oct 20 06:19:41 2000 |
|
// This is a generated file - do not edit |
|
#include <cyg/infra/cyg_type.inc> |
|
MEMORY |
{ |
ram : ORIGIN = 0x80008000, LENGTH = 0x78000 |
} |
|
SECTIONS |
{ |
SECTIONS_BEGIN |
SECTION_rom_vectors (ram, 0x80008000, LMA_EQ_VMA) |
SECTION_ROMISC (ram, ALIGN (0x4), LMA_EQ_VMA) |
SECTION_RELOCS (ram, ALIGN (0x4), LMA_EQ_VMA) |
SECTION_init (ram, ALIGN (0x4), LMA_EQ_VMA) |
SECTION_text (ram, ALIGN (0x4), LMA_EQ_VMA) |
SECTION_fini (ram, ALIGN (0x4), LMA_EQ_VMA) |
SECTION_rodata (ram, ALIGN (0x8), LMA_EQ_VMA) |
SECTION_rodata1 (ram, ALIGN (0x8), LMA_EQ_VMA) |
SECTION_data (ram, ALIGN (0x8), LMA_EQ_VMA) |
SECTION_data1 (ram, ALIGN (0x8), LMA_EQ_VMA) |
SECTION_eh_frame (ram, ALIGN (0x4), LMA_EQ_VMA) |
SECTION_gcc_except_table (ram, ALIGN (0x4), LMA_EQ_VMA) |
SECTION_ctors (ram, ALIGN (0x4), LMA_EQ_VMA) |
SECTION_dtors (ram, ALIGN (0x4), LMA_EQ_VMA) |
SECTION_devtab (ram, ALIGN (0x4), LMA_EQ_VMA) |
SECTION_got (ram, ALIGN (0x4), LMA_EQ_VMA) |
SECTION_dynamic (ram, ALIGN (0x4), LMA_EQ_VMA) |
SECTION_sdata (ram, ALIGN (0x4), LMA_EQ_VMA) |
SECTION_lit8 (ram, ALIGN (0x8), LMA_EQ_VMA) |
SECTION_lit4 (ram, ALIGN (0x8), LMA_EQ_VMA) |
SECTION_sbss (ram, ALIGN (0x8), LMA_EQ_VMA) |
SECTION_bss (ram, ALIGN (0x8), LMA_EQ_VMA) |
CYG_LABEL_DEFN(__heap1) = ALIGN (0x8); |
SECTIONS_END |
} |
/include/pkgconf/mlt_mips_tx39_jmr3904_rom.mlt
0,0 → 1,26
version 0 |
region ram 80000200 7fe00 0 ! |
region rom bfc00000 80000 1 ! |
section data 0 8 1 1 1 1 0 1 80000200 data1 data1 ! |
section data1 0 8 1 1 0 1 0 1 eh_frame eh_frame ! |
section eh_frame 0 8 1 1 0 1 0 1 gcc_except_table gcc_except_table ! |
section gcc_except_table 0 8 1 1 0 1 0 1 ctors ctors ! |
section ctors 0 8 1 1 0 1 0 1 dtors dtors ! |
section dtors 0 8 1 1 0 1 0 1 devtab devtab ! |
section devtab 0 8 1 1 0 1 0 1 got got ! |
section got 0 8 1 1 0 1 0 1 dynamic dynamic ! |
section dynamic 0 8 1 1 0 1 0 1 sdata sdata ! |
section sdata 0 8 1 1 0 1 0 1 lit8 lit8 ! |
section lit8 0 8 1 1 0 1 0 1 lit4 lit4 ! |
section lit4 0 8 1 1 0 1 0 0 sbss ! |
section sbss 0 8 0 1 0 1 0 1 bss bss ! |
section bss 0 8 0 1 0 1 0 1 heap1 heap1 ! |
section heap1 0 8 0 0 0 0 0 0 ! |
section rom_vectors 0 1 0 1 1 1 1 1 bfc00000 bfc00000 ROMISC ROMISC ! |
section ROMISC 0 8 0 1 0 1 0 1 RELOCS RELOCS ! |
section RELOCS 0 8 0 1 0 1 0 1 init init ! |
section init 0 8 0 1 0 1 0 1 text text ! |
section text 0 8 0 1 0 1 0 1 fini fini ! |
section fini 0 8 0 1 0 1 0 1 rodata rodata ! |
section rodata 0 8 0 1 0 1 0 1 rodata1 rodata1 ! |
section rodata1 0 8 0 1 0 0 0 1 data ! |
/include/pkgconf/mlt_mips_tx39_jmr3904_ram.mlt
0,0 → 1,25
version 0 |
region ram 80008000 78000 0 ! |
section rom_vectors 0 1 0 1 1 1 1 1 80008000 80008000 ROMISC ROMISC ! |
section ROMISC 0 4 0 1 0 1 0 1 RELOCS RELOCS ! |
section RELOCS 0 4 0 1 0 1 0 1 init init ! |
section init 0 4 0 1 0 1 0 1 text text ! |
section text 0 4 0 1 0 1 0 1 fini fini ! |
section fini 0 4 0 1 0 1 0 1 rodata rodata ! |
section rodata 0 8 0 1 0 1 0 1 rodata1 rodata1 ! |
section rodata1 0 8 0 1 0 1 0 1 data data ! |
section data 0 8 0 1 0 1 0 1 data1 data1 ! |
section data1 0 8 0 1 0 1 0 1 eh_frame eh_frame ! |
section eh_frame 0 4 0 1 0 1 0 1 gcc_except_table gcc_except_table ! |
section gcc_except_table 0 4 0 1 0 1 0 1 ctors ctors ! |
section ctors 0 4 0 1 0 1 0 1 dtors dtors ! |
section dtors 0 4 0 1 0 1 0 1 devtab devtab ! |
section devtab 0 4 0 1 0 1 0 1 got got ! |
section got 0 4 0 1 0 1 0 1 dynamic dynamic ! |
section dynamic 0 4 0 1 0 1 0 1 sdata sdata ! |
section sdata 0 4 0 1 0 1 0 1 lit8 lit8 ! |
section lit8 0 8 0 1 0 1 0 1 lit4 lit4 ! |
section lit4 0 8 0 1 0 1 0 1 sbss sbss ! |
section sbss 0 8 0 1 0 1 0 1 bss bss ! |
section bss 0 8 0 1 0 1 0 1 heap1 heap1 ! |
section heap1 0 8 0 0 0 0 0 0 ! |
/include/plf_cache.h
0,0 → 1,73
#ifndef CYGONCE_PLF_CACHE_H |
#define CYGONCE_PLF_CACHE_H |
|
//============================================================================= |
// |
// plf_cache.h |
// |
// HAL cache control API |
// |
//============================================================================= |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos 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 or (at your option) any later version. |
// |
// eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//============================================================================= |
//#####DESCRIPTIONBEGIN#### |
// |
// Author(s): nickg |
// Contributors: nickg |
// Date: 1998-02-17 |
// Purpose: Cache control API |
// Description: The macros defined here provide the HAL APIs for handling |
// cache control operations. |
// Usage: |
// #include <cyg/hal/plf_cache.h> |
// ... |
// |
// |
//####DESCRIPTIONEND#### |
// |
//============================================================================= |
|
#include <pkgconf/hal.h> |
#include <cyg/infra/cyg_type.h> |
|
#include <cyg/hal/plf_cache.h> |
|
//============================================================================= |
|
// Nothing here at present. |
|
//----------------------------------------------------------------------------- |
#endif // ifndef CYGONCE_PLF_CACHE_H |
// End of plf_cache.h |
|
/include/platform.inc
0,0 → 1,143
#ifndef CYGONCE_HAL_PLATFORM_INC |
#define CYGONCE_HAL_PLATFORM_INC |
##============================================================================= |
## |
## platform.inc |
## |
## JMR-TX3904 board assembler header file |
## |
##============================================================================= |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos 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 or (at your option) any later version. |
## |
## eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
##============================================================================= |
#######DESCRIPTIONBEGIN#### |
## |
## Author(s): nickg |
## Contributors: nickg |
## Date: 1999-04-06 |
## Purpose: JMR-TX3904 board definitions. |
## Description: This file contains various definitions and macros that are |
## useful for writing assembly code for the JMR-TX3904 board. |
## Usage: |
## #include <cyg/hal/platform.inc> |
## ... |
## |
## |
######DESCRIPTIONEND#### |
## |
##============================================================================= |
|
#include <cyg/hal/mips.inc> |
|
#------------------------------------------------------------------------------ |
# Monitor initialization. |
|
#ifndef CYGPKG_HAL_MIPS_MON_DEFINED |
|
#if defined(CYG_HAL_STARTUP_ROM) || \ |
( defined(CYG_HAL_STARTUP_RAM) && \ |
!defined(CYGSEM_HAL_USE_ROM_MONITOR)) |
|
# If we are starting up from ROM, or we are starting in |
# RAM and NOT using a ROM monitor, initialize the VSR table. |
|
.macro hal_mon_init |
la a0,__default_interrupt_vsr |
la a1,__default_exception_vsr |
la a3,hal_vsr_table |
sw a0,0(a3) |
sw a1,1*4(a3) |
sw a1,2*4(a3) |
sw a1,3*4(a3) |
sw a1,4*4(a3) |
sw a1,5*4(a3) |
sw a1,6*4(a3) |
sw a1,7*4(a3) |
sw a1,8*4(a3) |
sw a1,9*4(a3) |
sw a1,10*4(a3) |
sw a1,11*4(a3) |
sw a1,12*4(a3) |
sw a1,13*4(a3) |
sw a1,14*4(a3) |
sw a1,15*4(a3) |
|
sw a1,32*4(a3) |
sw a1,33*4(a3) |
.endm |
|
#elif defined(CYG_HAL_STARTUP_RAM) && defined(CYGSEM_HAL_USE_ROM_MONITOR) |
|
# Initialize the VSR table entries |
# We only take control of the interrupt vector, |
# the rest are left to the ROM for now... |
|
.macro hal_mon_init |
la a0,__default_interrupt_vsr |
la a3,hal_vsr_table |
sw a0,0(a3) |
.endm |
|
#else |
|
.macro hal_mon_init |
.endm |
|
#endif |
|
|
#define CYGPKG_HAL_MIPS_MON_DEFINED |
|
#endif |
|
#------------------------------------------------------------------------------ |
# Decide whether the VSR table is defined externally, or is to be defined |
# here. |
|
#if defined(CYGPKG_HAL_MIPS_SIM) || \ |
( defined(CYGPKG_HAL_MIPS_TX3904) && \ |
defined(CYG_HAL_STARTUP_RAM) && \ |
!defined(CYGSEM_HAL_USE_ROM_MONITOR) \ |
) |
|
## VSR table defined in linker script |
|
#else |
|
#define CYG_HAL_MIPS_VSR_TABLE_DEFINED |
|
#endif |
|
#------------------------------------------------------------------------------ |
#endif // ifndef CYGONCE_HAL_PLATFORM_INC |
# end of platform.inc |
/include/plf_io.h
0,0 → 1,65
#ifndef CYGONCE_PLF_IO_H |
#define CYGONCE_PLF_IO_H |
|
//============================================================================= |
// |
// plf_io.h |
// |
// Platform specific IO support |
// |
//============================================================================= |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos 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 or (at your option) any later version. |
// |
// eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//============================================================================= |
//#####DESCRIPTIONBEGIN#### |
// |
// Author(s): hmt, jskov, nickg |
// Contributors: hmt, jskov, nickg |
// Date: 1999-08-09 |
// Purpose: JMR3904 platform IO support |
// Description: |
// Usage: #include <cyg/hal/plf_io.h> |
// |
//####DESCRIPTIONEND#### |
// |
//============================================================================= |
|
#include <pkgconf/hal.h> |
|
//----------------------------------------------------------------------------- |
|
// Nothing here. |
|
//----------------------------------------------------------------------------- |
// end of plf_io.h |
#endif // CYGONCE_PLF_IO_H |
/include/hal_diag.h
0,0 → 1,80
#ifndef CYGONCE_HAL_HAL_DIAG_H |
#define CYGONCE_HAL_HAL_DIAG_H |
|
/*============================================================================= |
// |
// hal_diag.h |
// |
// HAL Support for Kernel Diagnostic Routines |
// |
//============================================================================= |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos 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 or (at your option) any later version. |
// |
// eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//============================================================================= |
//#####DESCRIPTIONBEGIN#### |
// |
// Author(s): nickg |
// Contributors: nickg |
// Date: 1998-03-02 |
// Purpose: HAL Support for Kernel Diagnostic Routines |
// Description: Diagnostic routines for use during kernel development. |
// Usage: #include <cyg/hal/hal_diag.h> |
// |
//####DESCRIPTIONEND#### |
// |
//===========================================================================*/ |
|
#include <pkgconf/hal.h> |
|
#include <cyg/infra/cyg_type.h> |
|
/*---------------------------------------------------------------------------*/ |
/* functions implemented in hal_diag.c */ |
|
externC void hal_diag_init(void); |
|
externC void hal_diag_write_char(char c); |
|
externC void hal_diag_read_char(char *c); |
|
/*---------------------------------------------------------------------------*/ |
|
#define HAL_DIAG_INIT() hal_diag_init() |
|
#define HAL_DIAG_WRITE_CHAR(_c_) hal_diag_write_char(_c_) |
|
#define HAL_DIAG_READ_CHAR(_c_) hal_diag_read_char(&_c_) |
|
/*---------------------------------------------------------------------------*/ |
/* end of hal_diag.h */ |
#endif /* CYGONCE_HAL_HAL_DIAG_H */ |
/src/plf_stub.c
0,0 → 1,161
//============================================================================= |
// |
// plf_stub.c |
// |
// Platform specific code for GDB stub support. |
// |
//============================================================================= |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos 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 or (at your option) any later version. |
// |
// eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//============================================================================= |
//#####DESCRIPTIONBEGIN#### |
// |
// Author(s): nickg, jskov (based on the old tx39 hal_stub.c) |
// Contributors:nickg, jskov |
// Date: 1999-02-12 |
// Purpose: Platform specific code for GDB stub support. |
// |
//####DESCRIPTIONEND#### |
// |
//============================================================================= |
|
#include <pkgconf/hal.h> |
|
#ifdef CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
|
#include <cyg/hal/hal_stub.h> |
|
#include <cyg/hal/hal_io.h> // HAL IO macros |
#include <cyg/hal/hal_diag.h> // diag output. FIXME |
|
//----------------------------------------------------------------------------- |
// Serial definitions. |
#define DIAG_BASE 0xfffff300 |
#define DIAG_SLCR (DIAG_BASE+0x00) |
#define DIAG_SLSR (DIAG_BASE+0x04) |
#define DIAG_SLDICR (DIAG_BASE+0x08) |
#define DIAG_SLDISR (DIAG_BASE+0x0C) |
#define DIAG_SFCR (DIAG_BASE+0x10) |
#define DIAG_SBRG (DIAG_BASE+0x14) |
#define DIAG_TFIFO (DIAG_BASE+0x20) |
#define DIAG_RFIFO (DIAG_BASE+0x30) |
|
#define BRG_T0 0x0000 |
#define BRG_T2 0x0100 |
#define BRG_T4 0x0200 |
#define BRG_T5 0x0300 |
|
//----------------------------------------------------------------------------- |
|
// Initialize the current serial port. |
void hal_jmr_init_serial( void ) |
{ |
//hal_diag_led(0x10); |
HAL_WRITE_UINT16( DIAG_SLCR , 0x0020 ); |
|
HAL_WRITE_UINT16( DIAG_SLDICR , 0x0000 ); |
|
HAL_WRITE_UINT16( DIAG_SFCR , 0x0000 ); |
|
// HAL_WRITE_UINT16( DIAG_SBRG , BRG_T2 | 20 ); |
// HAL_WRITE_UINT16( DIAG_SBRG , BRG_T2 | 10 ); |
HAL_WRITE_UINT16( DIAG_SBRG , BRG_T2 | 5 ); |
|
//hal_diag_led(0x10); |
} |
|
// Write C to the current serial port. |
void hal_jmr_put_char( int c ) |
{ |
CYG_WORD16 disr; |
|
//hal_diag_led(0x20); |
|
for(;;) |
{ |
HAL_READ_UINT16( DIAG_SLDISR , disr ); |
|
if( disr & 0x0002 ) break; |
} |
|
disr = disr & ~0x0002; |
|
HAL_WRITE_UINT8( DIAG_TFIFO, c ); |
|
HAL_WRITE_UINT16( DIAG_SLDISR , disr ); |
|
//hal_diag_led(0x20); |
// HAL_DIAG_WRITE_CHAR( c ); |
} |
|
// Read one character from the current serial port. |
int hal_jmr_get_char( void ) |
{ |
#ifdef CYGPKG_HAL_MIPS_SIM |
// FIXME: ask nickg if this can go to /dev/null |
static char input[] = "+$s#73"; |
static int i = 0; |
return input[i++]; |
#else |
char c; |
|
CYG_WORD16 disr; |
|
//hal_diag_led(0x40); |
for(;;) |
{ |
|
HAL_READ_UINT16( DIAG_SLDISR , disr ); |
|
if( disr & 0x0001 ) break; |
} |
|
disr = disr & ~0x0001; |
|
HAL_READ_UINT8( DIAG_RFIFO, c ); |
|
HAL_WRITE_UINT16( DIAG_SLDISR , disr ); |
|
//hal_diag_led(0x40); |
|
// HAL_DIAG_READ_CHAR(c); |
// diag_printf("<%02x:%c>",c); |
|
return c; |
|
#endif |
} |
|
#endif // ifdef CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS |
//----------------------------------------------------------------------------- |
// End of plf_stub.c |
/src/platform.S
0,0 → 1,71
##============================================================================= |
## |
## platform.S |
## |
## MIPS JMR-TX3904 platform code |
## |
##============================================================================= |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos 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 or (at your option) any later version. |
## |
## eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
##============================================================================= |
#######DESCRIPTIONBEGIN#### |
## |
## Author(s): nickg |
## Contributors: nickg |
## Date: 1999-04-20 |
## Purpose: MIPS JMR-TX3904 platform code |
## Description: Platform specific code for JMR-TX3904 board. |
## |
## |
## |
## |
######DESCRIPTIONEND#### |
## |
##============================================================================= |
|
#include <pkgconf/system.h> |
#include <pkgconf/hal.h> |
|
#ifdef CYGPKG_KERNEL |
# include <pkgconf/kernel.h> |
#endif |
|
#include <cyg/hal/arch.inc> |
|
##----------------------------------------------------------------------------- |
|
## nothing here at present. |
|
##----------------------------------------------------------------------------- |
## end of platform.S |
|
/src/plf_misc.c
0,0 → 1,208
//========================================================================== |
// |
// plf_misc.c |
// |
// HAL platform miscellaneous functions |
// |
//========================================================================== |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos 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 or (at your option) any later version. |
// |
// eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//========================================================================== |
//#####DESCRIPTIONBEGIN#### |
// |
// Author(s): nickg |
// Contributors: nickg, jlarmour |
// Date: 1999-01-21 |
// Purpose: HAL miscellaneous functions |
// Description: This file contains miscellaneous functions provided by the |
// HAL. |
// |
//####DESCRIPTIONEND#### |
// |
//========================================================================*/ |
|
#include <pkgconf/hal.h> |
|
#include <cyg/infra/cyg_type.h> // Base types |
#include <cyg/infra/cyg_trac.h> // tracing macros |
#include <cyg/infra/cyg_ass.h> // assertion macros |
|
#include <cyg/hal/hal_arch.h> // architectural definitions |
|
#include <cyg/hal/hal_intr.h> // Interrupt handling |
|
#include <cyg/hal/hal_cache.h> // Cache handling |
|
/*------------------------------------------------------------------------*/ |
|
extern void patch_dbg_syscalls(void * vector); |
|
/*------------------------------------------------------------------------*/ |
|
void hal_platform_init(void) |
{ |
|
HAL_ICACHE_INVALIDATE_ALL(); |
HAL_ICACHE_ENABLE(); |
HAL_DCACHE_INVALIDATE_ALL(); |
HAL_DCACHE_ENABLE(); |
|
#if !defined(CYGHWR_HAL_MIPS_TX39_JMR3904_ENABLE_TOE) |
|
HAL_TX39_DEBUG_TOE_DISABLE(); |
|
#else |
|
HAL_TX39_DEBUG_TOE_ENABLE(); |
|
#endif |
|
#if defined(CYGFUN_HAL_COMMON_KERNEL_SUPPORT) && \ |
defined(CYGSEM_HAL_USE_ROM_MONITOR_CygMon) |
{ |
patch_dbg_syscalls( (void *)(&hal_vsr_table[0]) ); |
} |
#endif |
|
} |
|
/*------------------------------------------------------------------------*/ |
/* Functions to support the detection and execution of a user provoked */ |
/* program break. These are usually called from interrupt routines. */ |
|
cyg_bool cyg_hal_is_break(char *buf, int size) |
{ |
while( size ) |
if( buf[--size] == 0x03 ) return true; |
|
return false; |
} |
|
void cyg_hal_user_break( CYG_ADDRWORD *regs ) |
{ |
#if defined(CYGSEM_HAL_USE_ROM_MONITOR_CygMon) |
// The following code should be at the very start of this function so |
// that it can access the RA register before it is saved and reused. |
register CYG_WORD32 ra; |
asm volatile ( "move %0,$31;" : "=r" (ra) ); |
|
{ |
typedef void install_bpt_fn(void *epc); |
CYG_WORD32 pc; |
HAL_SavedRegisters *sreg = (HAL_SavedRegisters *)regs; |
install_bpt_fn *ibp = (install_bpt_fn *)hal_vsr_table[35]; |
|
if( regs == NULL ) pc = ra; |
else pc = sreg->pc; |
|
if( ibp != NULL ) ibp((void *)pc); |
} |
|
#elif defined(CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS) |
|
{ |
extern void breakpoint(void); |
breakpoint(); |
} |
|
#else |
|
HAL_BREAKPOINT(breakinst); |
|
#endif |
|
} |
|
/*------------------------------------------------------------------------*/ |
/* Control C ISR support */ |
|
#if defined(CYGDBG_HAL_MIPS_DEBUG_GDB_CTRLC_SUPPORT) |
|
#define DIAG_BASE 0xfffff300 |
#define DIAG_SLCR (DIAG_BASE+0x00) |
#define DIAG_SLSR (DIAG_BASE+0x04) |
#define DIAG_SLDICR (DIAG_BASE+0x08) |
#define DIAG_SLDISR (DIAG_BASE+0x0C) |
#define DIAG_SFCR (DIAG_BASE+0x10) |
#define DIAG_SBRG (DIAG_BASE+0x14) |
#define DIAG_TFIFO (DIAG_BASE+0x20) |
#define DIAG_RFIFO (DIAG_BASE+0x30) |
|
#define BRG_T0 0x0000 |
#define BRG_T2 0x0100 |
#define BRG_T4 0x0200 |
#define BRG_T5 0x0300 |
|
struct Hal_SavedRegisters *hal_saved_interrupt_state; |
|
void hal_ctrlc_isr_init(void) |
{ |
CYG_WORD16 dicr; |
|
HAL_READ_UINT16( DIAG_SLDICR , dicr ); |
dicr = 0x0001; |
HAL_WRITE_UINT16( DIAG_SLDICR , dicr ); |
|
HAL_INTERRUPT_SET_LEVEL( CYGHWR_HAL_GDB_PORT_VECTOR, 1 ); |
HAL_INTERRUPT_UNMASK( CYGHWR_HAL_GDB_PORT_VECTOR ); |
} |
|
cyg_uint32 hal_ctrlc_isr(CYG_ADDRWORD vector, CYG_ADDRWORD data) |
{ |
char c; |
CYG_WORD16 disr; |
|
HAL_INTERRUPT_ACKNOWLEDGE( CYGHWR_HAL_GDB_PORT_VECTOR ); |
|
HAL_READ_UINT16( DIAG_SLDISR , disr ); |
|
if( disr & 0x0001 ) |
{ |
|
disr = disr & ~0x0001; |
|
HAL_READ_UINT8( DIAG_RFIFO, c ); |
|
HAL_WRITE_UINT16( DIAG_SLDISR , disr ); |
|
if( cyg_hal_is_break( &c , 1 ) ) |
cyg_hal_user_break( (CYG_ADDRWORD *)hal_saved_interrupt_state ); |
} |
|
return 2; |
} |
|
#endif |
|
/*------------------------------------------------------------------------*/ |
/* End of plf_misc.c */ |
/ChangeLog
0,0 → 1,480
2001-01-26 Jesper Skov <jskov@redhat.com> |
|
* include/plf_stub.h: Reset macros moved |
* include/plf_intr.h: to this file. |
|
2000-10-20 Jonathan Larmour <jlarmour@redhat.com> |
|
* include/pkgconf/mlt_mips_tx39_jmr3904_ram.mlt: |
* include/pkgconf/mlt_mips_tx39_jmr3904_rom.mlt: |
Add heap1 section |
|
* include/pkgconf/mlt_mips_tx39_jmr3904_ram.h: |
* include/pkgconf/mlt_mips_tx39_jmr3904_rom.h: |
* include/pkgconf/mlt_mips_tx39_jmr3904_ram.ldi: |
* include/pkgconf/mlt_mips_tx39_jmr3904_rom.ldi: |
Regenerated |
|
2000-09-11 Jesper Skov <jskov@redhat.com> |
|
* cdl/hal_mips_tx39_jmr3904.cdl: Fix startup type description. |
|
2000-05-22 Jesper Skov <jskov@redhat.com> |
|
* src/plf_misc.c: Let arch call ctrlc_init. |
|
2000-05-10 Jonathan Larmour <jlarmour@redhat.co.uk> |
|
* include/pkgconf/mlt_mips_tx39_jmr3904_rom.mlt: Fix mistake in last |
change: bss/sbss shouldn't be relocated |
* include/pkgconf/mlt_mips_tx39_jmr3904_rom.ldi: Regenerate |
|
2000-04-04 Jonathan Larmour <jlarmour@redhat.co.uk> |
|
* include/pkgconf/mlt_mips_tx39_jmr3904_rom.ldi: |
* include/pkgconf/mlt_mips_tx39_jmr3904_rom.mlt: |
* include/pkgconf/mlt_mips_tx39_jmr3904_ram.ldi: |
* include/pkgconf/mlt_mips_tx39_jmr3904_ram.mlt: |
Split lit section into lit4 and lit8 |
DEVTAB -> devtab |
Update alignments |
For ROM startup, ensure all relevant sections are relocated, |
not just .data |
Above changed as per new mips_tx39.ld in variant HAL |
|
* cdl/hal_mips_tx39_jmr3904.cdl (CYG_HAL_STARTUP): Fix board |
name typo |
|
2000-03-16 Jonathan Larmour <jlarmour@redhat.co.uk> |
|
* include/pkgconf/mlt_mips_tx39_jmr3904_ram.h, |
include/pkgconf/mlt_mips_tx39_jmr3904_ram.ldi, |
include/pkgconf/mlt_mips_tx39_jmr3904_ram.mlt, |
include/pkgconf/mlt_mips_tx39_jmr3904_rom.h, |
include/pkgconf/mlt_mips_tx39_jmr3904_rom.ldi, |
include/pkgconf/mlt_mips_tx39_jmr3904_rom.mlt: |
Update new sections according to new mips_tx39.ld from variant HAL |
|
2000-02-23 Jonathan Larmour <jlarmour@redhat.co.uk> |
|
* src/plf_stub.c (hal_jmr_get_char): |
CYG_HAL_MIPS_SIM -> CYGPKG_HAL_MIPS_SIM |
|
* include/platform.inc: CYG_HAL_MIPS_SIM -> CYGPKG_HAL_MIPS_SIM |
CYG_HAL_MIPS_TX3904 -> CYGPKG_HAL_MIPS_TX3904 |
|
2000-02-18 Jonathan Larmour <jlarmour@redhat.co.uk> |
|
* cdl/hal_mips_tx39_jmr3904.cdl (CYGBLD_BUILD_GDB_STUBS): When building |
stubs, define every dependency required here rather than in the |
template |
|
2000-02-03 Jesper Skov <jskov@redhat.com> |
|
* cdl/hal_mips_tx39_jmr3904.cdl: Implements stubs. |
|
2000-01-27 Jesper Skov <jskov@redhat.com> |
|
* cdl/hal_mips_tx39_jmr3904.cdl: Moved part of stubs build rule to |
common HAL. |
|
2000-01-26 Jesper Skov <jskov@redhat.com> |
|
* cdl/hal_mips_tx39_jmr3904.cdl: Fix display string. |
|
2000-01-24 Jesper Skov <jskov@cygnus.co.uk> |
|
* cdl/hal_mips_tx39_jmr3904.cdl: Add stubs build rule. |
* include/plf_stub.h: Include correct hal/platform header. |
|
2000-01-24 John Dallaway <jld@cygnus.co.uk> |
|
* cdl/*.cdl: |
|
Remove obsolete option CYGTST_TESTING_IDENTIFIER. |
|
2000-01-19 Hugo Tyson <hmt@cygnus.co.uk> |
|
* cdl/*.cdl: Add descriptions to a number of options &c which were |
lacking same, also tidied up other typos as noticed en passant. |
|
1999-12-21 Jonathan Larmour <jlarmour@cygnus.co.uk> |
|
* src/plf_misc.c (hal_platform_init): Rename |
CYG_HAL_USE_ROM_MONITOR_CYGMON -> CYGSEM_HAL_USE_ROM_MONITOR_CygMon |
(cyg_hal_user_break): Likewise. Also rationalize a little. |
|
* include/platform.inc: Rename CYG_HAL_USE_ROM_MONITOR -> |
CYGSEM_HAL_USE_ROM_MONITOR |
|
* cdl/hal_mips_tx39_jmr3904.cdl: Add new platform-specific |
CYGSEM_HAL_USE_ROM_MONITOR and CYGSEM_HAL_ROM_MONITOR options to |
control ROM monitor support |
|
1999-12-20 Gary Thomas <gthomas@cygnus.co.uk> |
|
* cdl/hal_mips_tx39_jmr3904.cdl: Add -Wl for linker options. |
|
1999-11-25 Gary Thomas <gthomas@cygnus.co.uk> |
|
* include/pkgconf/mlt_mips_tx39_jmr3904_rom.h: |
* include/pkgconf/mlt_mips_tx39_jmr3904_ram.h: New file(s). |
|
1999-11-02 Jesper Skov <jskov@cygnus.co.uk> |
|
* cdl/hal_mips_tx39_jmr3904.cdl: Added. |
|
1999-10-29 Nick Garnett <nickg@cygnus.co.uk> |
|
* include/plf_intr.h: |
* src/plf_misc.c: |
Changed CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT to |
CYGDBG_HAL_MIPS_DEBUG_GDB_CTRLC_SUPPORT. |
|
1999-08-25 Nick Garnett <nickg@cygnus.co.uk> |
|
* include/platform.inc: Rearranged code a little to avoid |
assembler warning messages. |
|
* src/plf_misc.c (hal_platform_init): No longer disable cache when |
enabling TOE. A better solution to this has been made elsewhere. |
|
* include/pkgconf/hal_mips_tx39_jmr3904.h: Removed some now-bogus |
comments and generally tidied things a little. |
|
1999-08-19 Nick Garnett <nickg@cygnus.co.uk> |
|
* include/plf_io.h: Added this file to match other platforms. |
|
1999-06-21 Nick Garnett <nickg@cygnus.co.uk> |
|
* src/plf_misc.c (hal_ctrlc_isr): Changed return value from 0 to 2 |
to indicate that the interrupt has been handled. |
|
1999-06-02 Jonathan Larmour <jlarmour@cygnus.co.uk> |
|
* include/pkgconf/mlt_mips_tx39_jmr3904_rom.mlt: |
* include/pkgconf/mlt_mips_tx39_jmr3904_rom.mlt: |
* include/pkgconf/mlt_mips_tx39_jmr3904_ram.ldi: |
* include/pkgconf/mlt_mips_tx39_jmr3904_rom.ldi: |
Use ctors/dtors sections as required by new compilers |
|
1999-05-27 Nick Garnett <nickg@cygnus.co.uk> |
|
* src/plf_misc.c: Reorganized and generally fixed up Ctrl-C |
handling code. |
|
* include/plf_intr.h: Added support for Ctrl-C handling. |
|
1999-05-25 Jonathan Larmour <jlarmour@cygnus.co.uk> |
|
* src/plf_misc.c: Change CYG_HAL_TX39_JMR3904 to |
CYG_HAL_MIPS_TX39_JMR3904 |
|
1999-05-21 Jonathan Larmour <jlarmour@cygnus.co.uk> |
|
* src/hal_diag.c: Delete - this has been moved to hal/mips/tx39 |
|
1999-05-20 Gary Thomas <gthomas@cygnus.co.uk> |
|
* include/pkgconf/hal_mips_tx39_jmr3904.h: Move RTC setup here. |
|
1999-05-14 Nick Garnett <nickg@cygnus.co.uk> |
|
* src/platform.S: Moved ISR tables out to variant directory. |
|
* include/platform.inc: Moved definition of |
CYG_HAL_MIPS_ISR_TABLES_DEFINED out to variant.inc. |
|
1999-05-13 Nick Garnett <nickg@cygnus.co.uk> |
|
The following changes were made on a branch and merged: |
|
1999-05-11 Nick Garnett <nickg@cygnus.co.uk> |
|
* include/pkgconf/hal_tx39_jmr3904.h: |
* include/pkgconf/hal_mips_tx39_jmr3904.h: |
File hal_tx39_jmr3904.h renamed to match name synthesized by |
pkgconf.tcl. |
|
1999-04-21 Nick Garnett <nickg@cygnus.co.uk> |
|
* src/plf_misc.c: Added this file. it contains all of the TX39 |
specific code that was in hal_misc.c. |
|
* src/platform.S: Added this file. It contains platform specific |
code and data, specifically the ISR tables. |
|
* src/PKGconf.mak (COMPILE): Substituted platform.S for jmr3904.S. |
Added plf_misc.c. |
|
* include/platform.inc: Added CYG_HAL_MIPS_ISR_TABLES_DEFINED to |
indicate that the tables are defined in platform.S. |
|
1999-04-30 Hugo Tyson <hmt@cygnus.co.uk> |
|
Merge the following changes from the 1.2.1 release branch. |
|
1999-04-29 Hugo Tyson <hmt@cygnus.co.uk> |
* src/hal_diag.c (hal_diag_write_char): Only include the code to |
read the '+' from GDB and test for ^C there if not installing the |
default isr to catch these: CYGDBG_HAL_MIPS_INSTALL_CTRL_C_ISR. |
|
1999-04-08 John Dallaway <jld@cygnus.co.uk> |
|
* include/pkgconf/mlt_*.*: Use double underscore substitution |
for period character in SECTION_* macro names (PR 19787) |
|
1999-04-08 John Dallaway <jld@cygnus.co.uk> |
|
* include/pkgconf/*.ldi: Revised SECTION_* macro arguments to |
avoid padded output sections (PR 19787) |
|
1999-03-24 Nick Garnett <nickg@cygnus.co.uk> |
|
* include/pkgconf/hal_tx39_jmr3904.h: |
Added some edit-only options for controlling DRAM setup and bus |
timeout detection. These should only be used by experts, so they |
are not presently exported as full config options. |
|
1999-03-23 Nick Garnett <nickg@cygnus.co.uk> |
|
* src/hal_diag.c (hal_diag_write_char): Backed off Gary's change. |
|
1999-03-18 Gary Thomas <gthomas@cygnus.co.uk> |
|
* src/hal_diag.c (hal_diag_write_char): Don't disable all interrupts, |
just the ones for the appropriate UART. |
|
1999-03-11 Nick Garnett <nickg@cygnus.co.uk> |
|
* src/hal_diag.c (hal_diag_write_char): |
Enabled code to process ACK characters and force a breakpoint. |
This is temporary, it needs to use cyg_hal_is_break() and |
cyg_hal_user_break(). |
|
1999-03-10 Bart Veer <bartv@cygnus.co.uk> |
|
* src/hal_diag.c (hal_diag_init): |
Fixed names of symbols used for the frequency option. |
|
1999-03-10 Nick Garnett <nickg@cygnus.co.uk> |
|
* src/hal_diag.c: |
* include/pkgconf/hal_tx39_jmr3904.h: |
Removed frequency options and made them more generic to all MIPS |
targets. Changed names where applicable. |
|
1999-03-04 John Dallaway <jld@cygnus.co.uk> |
|
* include/pkgconf/*.ldi: give all LDI files unique names so |
that they can co-exist in an eCos build tree (PR 19184) |
* include/pkgconf/*.mlt: give all MLT files unique names so |
that they can co-exist in an eCos build tree (PR 19184) |
|
1999-02-23 Nick Garnett <nickg@cygnus.co.uk> |
|
* src/hal_diag.c: |
Added support for 66MHz part. |
Disabled handling of GDB O packet acknowledgement, this is now |
done by hal_ctrlc_isr() which also checks for ^C. |
|
* include/pkgconf/hal_tx39_jmr3904.h: |
Added support for 66MHz part. |
|
1999-02-20 Jonathan Larmour <jlarmour@cygnus.co.uk> |
|
* src/hal_diag.c (hal_diag_write_char): |
Rename CYG_VECTOR_EXTERNAL_2 -> CYGNUM_HAL_INTERRUPT_EXTERNAL_2 |
in line with HAL changes |
|
1999-02-16 Jesper Skov <jskov@cygnus.co.uk> |
|
* include/hal_stub.h: [removed] |
* include/plf_stub.h: [added] |
* src/hal_stub.c: [removed] |
* src/plf_stub.c: [added] |
* src/PKGconf.mak: |
Changed hal_stub to plf_stub. Moved generic HAL stub code to |
common/.../hal_stub.c. |
|
1999-02-05 John Dallaway <jld@cygnus.co.uk> |
|
* include/pkgconf/*.mlt: New memory layout save files |
|
1999-02-05 John Dallaway <jld@cygnus.co.uk> |
|
* include/pkgconf/*.ldi: Remove LMA_EQ_VMA macro definition. |
|
1999-01-26 Hugo Tyson <hmt@masala.cygnus.co.uk> |
|
* include/pkgconf/ram.ldi: |
* include/pkgconf/rom.ldi: |
Add copyright notice. (Though these files will later be generated |
by a tool and so not copyright, these default setups are.) |
|
1999-01-13 John Dallaway <jld@cygnus.co.uk> |
|
* include/pkgconf/ram.ldi: add .rel.dyn output section |
* include/pkgconf/rom.ldi: add .rel.dyn output section |
|
1999-01-13 John Dallaway <jld@cygnus.co.uk> |
|
* src/jmr3904.ld: remove for MLT |
* src/PKGconf.mak: remove jmr3904.ld rules for MLT |
* include/pkgconf/ram.ldi: new linker script fragment for MLT |
* include/pkgconf/rom.ldi: new linker script fragment for MLT |
|
1998-11-16 Jesper Skov <jskov@cygnus.co.uk> |
|
* src/hal_stub.c (set_debug_traps): Call initHardware. |
(__flush_d_cache): Added. |
|
1998-10-25 Jesper Skov <jskov@cygnus.co.uk> |
|
* src/hal_stub.c: Fixed #endif comment. |
|
Fri Oct 23 03:33:47 1998 Jonathan Larmour <jlarmour@cygnus.co.uk> |
|
* src/jmr3904.ld: |
Move _gp pointer to after data section and constructors/destructors |
|
1998-10-21 Nick Garnett <nickg@cygnus.co.uk> |
|
* src/hal_stub.c: |
Removed include of <signal.h>, it appears to be unnecessary. |
|
1998-10-19 Jesper Skov <jskov@cygnus.co.uk> |
|
* include/pkgconf/hal_tx39_jmr3904.h: Undid 1998-10-16 change. |
|
1998-10-16 Jesper Skov <jskov@cygnus.co.uk> |
|
* include/pkgconf/hal_tx39_jmr3904.h: Changed |
CYGPKG_HAL_TX39_JMR3904 to CYG_HAL_TX39_JMR3904. |
|
1998-10-14 Nick Garnett <nickg@cygnus.co.uk> |
|
* include/hal_stub.h: |
Now get generic-stub.h from hal rather than kernel. |
|
* src/hal_diag.c: |
* src/hal_stub.c: |
Altered ifdefs to support building without kernel. |
|
1998-10-13 Nick Garnett <nickg@cygnus.co.uk> |
|
* src/jmr3904.ld: |
Moved RAM load address to 0x80008000. |
|
Mon Oct 12 18:04:16 1998 Jonathan Larmour <jlarmour@cygnus.co.uk> |
|
* include/hal_diag.h: |
Add void arg to hal_diag_init() prototype |
Fix for PR 17309 |
|
1998-09-24 Tim Goodwin <tgoodwin@cygnus.co.uk> |
|
* include/pkgconf/hal_tx39_jmr3904.h: |
Correct file name in comment. |
|
1998-09-15 Nick Garnett <nickg@cygnus.co.uk> |
|
* src/jmr3904.ld: |
Moved RAM LOAD_BASE up to 0x80005000 to avoid memory used by |
Cygmon. |
|
* src/hal_diag.c (hal_diag_write_char): |
Added support for Ctrl-C handling while running under Cygmon. |
Extra support from Cygmon may be needed in future. |
|
1998-09-11 Bart Veer <bartv@cygnus.co.uk> |
|
* include/pkgconf/hal_tx39_jmr3904.h: |
Updated configuration data with some descriptions. |
|
1998-09-04 Bart Veer <bartv@cygnus.co.uk> |
|
* include/pkgconf/hal_tx39_jmr3904.h: |
Temporary change to the type of the startup option, needed by the |
configuration tool. |
|
1998-09-02 Bart Veer <bartv@cygnus.co.uk> |
|
* include/pkgconf/hal_tx39_jmr3904.h: |
New header file for platform-specific configuration options |
|
* tests/PKGconf.mak: |
* src/PKGconf.mak: |
Sort out package naming conventions. |
|
1998-08-28 Bart Veer <bartv@cygnus.co.uk> |
|
* src/hal_diag.c, src/hal_stub.c: |
Updated for new kernel configuration option symbol names |
|
Fri Aug 28 09:22:30 1998 Jesper Skov <jskov@lassi.cygnus.co.uk> |
|
* src/hal_stub.c: Moved strcpy/strlen to the generic stub. |
|
1998-08-18 Nick Garnett <nickg@cygnus.co.uk> |
|
* include/hal_diag.h: |
* include/hal_stub.h: |
* src/hal_diag.c: |
* src/jmr3904.S: |
Now includes <pkgconf/hal.h> rather than <pkgconf/kernel.h>. |
|
* src/jmr3904.ld: |
Removed memory layout tool support. |
Now includes <pkgconf/hal.h> rather than <pkgconf/kernel.h>. |
|
Tue Aug 18 11:44:40 1998 Jonathan Larmour <jlarmour@cygnus.co.uk> |
|
* src/jmr3904.ld: Reorder group line |
|
Mon Aug 17 22:23:27 1998 Jonathan Larmour <jlarmour@cygnus.co.uk> |
|
* src/jmr3904.ld: |
Add GROUP(libgcc.a libtarget.a) to prevent need for explicit linking |
|
1998-07-23 Nick Garnett <nickg@cygnus.co.uk> |
|
* src/jmr3904.ld: Added header comment and tidied up the layout a |
little. |
|
|
//=========================================================================== |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos 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 or (at your option) any later version. |
// |
// eCos 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 eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//=========================================================================== |