📄 changelog
字号:
1999-03-18 Hugo Tyson <hmt@cygnus.co.uk>
* src/hal_diag.c (hal_diag_write_char_serial): Do not disable
interrupts while calling the CygMon write-line routine; CygMon is
better now and can cope with interrupts there.
1999-03-17 John Dallaway <jld@cygnus.co.uk>
* include/pkgconf/mlt_sparclite_sleb_rom.mlt: Regenerate using
the eCos configuration tool to resolve errors.
1999-03-17 Hugo Tyson <hmt@cygnus.co.uk>
* include/pkgconf/mlt_sparclite_sleb_rom.mlt:
* include/pkgconf/mlt_sparclite_sleb_rom.ldi:
Move the start of RAM up 512 bytes; it is now at 0x04000200. This
is to leave space for the trampoline code ie. RAM trap vector
handler to live in RAM as is required. NB the vector must be on a
4k boundary; its location is determined by rounding down the start
of "normal" RAM ie. the symbol ".data". So if the start of RAM
isn't on a 4k boundary, or the trampoline code gets > 4k, there
will be trouble.
* include/halboot.si: Copy trampoline code into RAM base during
startup, and deal with associated caching issues.
* src/hal_priv.c (LED): Add this tidier macro and some extra LED
debug during start for help with ROM start.
* include/pkgconf/hal_sparclite_sleb.h
(CYGHWR_HAL_SPARCLITE_SLEB_STARTUP): Add this define and its
associated notCDL for the GUI Config tool.
1999-03-16 Hugo Tyson <hmt@cygnus.co.uk>
* include/pkgconf/mlt_sparclite_sleb_rom.ldi:
* include/pkgconf/mlt_sparclite_sleb_rom.mlt:
New files, linker script fragment and MLT doc for ROM startup.
* include/halboot.si: Only copy real instructions into the vector
if RAM startup. Delete lots of obsolete debugging "printout".
Size RAM dynamically. Set up chip selects, wait states, refresh
timing, system services, caches, buffers, burst mode access, ...
In other words complete hardware initialization.
* include/hal_cpu.h: new file, taken directly from CygMon sources,
which defines various MB8683x internal registers which are used in
the initialization in halboot.si.
* include/hal_diag.h (HAL_SPARC_86940_PRS_ODIV2): Add lots more
definition of the MB86940 companion I/O chip, editted from CygMon
sources. This should move into a proper IO file later.
Also, in the non-CYG_KERNEL_DIAG_GDB case where we write output to
the serial line in clear, do perform initialization.
* src/hal_diag.c (hal_diag_init): Properly initialize the serial
line when not using GDB encoding (if GDB coding is in use, then we
have CygMon).
* include/hal_clock.h (HAL_CLOCK_INITIALIZE): Initialize the clock
more cleanly and correctly, as CygMon does: so ticks are actually
centiSeconds, pretty much. Actual init routine is in hal_priv.c.
* src/hal_priv.c (hal_clock_initialize): Properly initialize the
system clock to centiSeconds.
1999-03-11 Hugo Tyson <hmt@cygnus.co.uk>
* src/hal_priv.c (hal_board_prestart):
Link in the multi-thread aware debugging routine if
CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT.
1999-03-09 Hugo Tyson <hmt@cygnus.co.uk>
* src/hal_priv.c (hal_board_prestart): If playing nice with
CygMon, unmask and pass through interrupt 14 (Ethernet
controller). Install and unmask interrupt 15 (NMI button)
likewise.
* src/hal_cygm.S (hal_nmi_handler): Add new handler for the NMI
interrupt (like a PIN number) INT15, the button near the serial
connector on the board. The handler must wait for the interrupt
to go away, then acknowledge it to prevent CygMon getting in a
loop.
* include/halboot.si: Set IRC channel 14 (Ethernet controller)
interrupt to active low so that we can pass such events on to
CygMon. Tidy up comments and ifdefs.
* include/hal_cygm.h (BSP_NOTVEC_BSP_COMM_PROCS): Define the
CygMon vector table entry that isn't a vector, but is a pointer to
struct tree with IO functions therein.
* src/hal_diag.c (hal_diag_write_char et al): Add variants of
these routines to use IO functions provided by CygMon if thus
configured. Also tidied up direct GDB-ized serial output, which
is selected by CYG_KERNEL_DIAG_GDB_SERIAL_DIRECT within
CYG_KERNEL_DIAG_GDB now.
* include/pkgconf/hal_sparclite_sleb.h: Add definition for
CYG_KERNEL_DIAG_GDB_SERIAL_DIRECT, disabled by default. More
comments too.
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-25 Hugo Tyson <hmt@cygnus.co.uk>
These log entries from 1999-02-22 to 1999-02-24 were executed in
a branch; this change is a merge of that branch into the trunk.
1999-02-25 Hugo Tyson <hmt@masala.cygnus.co.uk>
* src/hal_diag.c (hal_diag_write_char):
Wait for the GDB protocol ack character '+' after sending a line
of output as a $O packet; this prevents mismatches of the GDB
protocol when a breakpoint is hit temporally near such output.
This has the side effect that we must deal with seeing a ^C
character instead of the '+', whence we must bounce into CygMon's
BREAK vector using a trap. Hence the next change...
* src/hal_cygm.S (hal_user_trap_to_cygmon_vsr):
Add additional "bounce to cygmon" capability such that user trap
2, "ta 2" trap type 130, does the same as "ta 1" ie. a breakpoint,
but first it advances the PC and NPC so that you can continue at
the instruction after. This is so that a voluntary inline
breakpoint can be implemented as "ta 2; nop; nop; nop" (nops just
for paranoia).
1999-02-24 Jonathan Larmour <jlarmour@cygnus.co.uk>
* include/hal_diag.h:
Make hal_diag_init() and hal_diag_write_char() prototypes be extern "C"
for C++ files so they don't get name mangled
1999-02-24 John Dallaway <jld@cygnus.co.uk>
* include/pkgconf/hal_sparclite_sleb.h: Add MB8683x board
designation to description field.
1999-02-24 Hugo Tyson <hmt@cygnus.co.uk>
* include/pkgconf/hal_sparclite_sleb.h:
Non-CDLoptions, but #defines nontheless,
CYG_HAL_USE_ROM_MONITOR_CYGMON and CYG_KERNEL_DIAG_GDB are defined
here to control whether we cooperate with CygMon, and if so, do we
encapsulate out output in GDB $O packets, respectively.
* include/hal_cygm.h:
New file to describe the CygMon vectors we call to cooperate with
CygMon and GDB. When cooperating, we install VSRs in some slots
that demux into CygMon's vector table, and in most slots we just
patch in the appropriate value from CygMon's vector table so that
CygMon is called directly.
* include/hal_xpic.h:
Document the interrupt sources on the SLEB.
* include/hal_diag.h (HAL_DIAG_WRITE_CHAR):
Call routines in hal_diag.c to perform encapsulation, or not,
depending on CYG_KERNEL_DIAG_GDB.
* src/hal_cygm.S: New file, demuxer trampolines for user trap and
no-fp/no-cp VSRs to bounce into CygMon.
* src/hal_diag.c: New file, routines to perform encapsulation of
output in GDB $O packets if required by CYG_KERNEL_DIAG.
* src/hal_priv.c (hal_board_prestart):
If CYG_HAL_USE_ROM_MONITOR_CYGMON, install either CygMon's vectors
or demuxer trampolines into our VSRs during startup.
* src/PKGconf.mak (COMPILE): Add new files hal_cygm.S hal_diag.c
1999-02-23 John Dallaway <jld@cygnus.co.uk>
* include/pkgconf/hal_sparclite_sleb.h: Revise capitalization
of CDL strings.
1999-02-23 John Dallaway <jld@cygnus.co.uk>
* include/pkgconf/hal_sparclite_sleb.h: Specify correct platform
for cdl_package CYGPKG_HAL_SPARCLITE_SLEB.
1999-02-22 Hugo Tyson <hmt@cygnus.co.uk>
* include/pkgconf/ram.mlt:
* include/pkgconf/ram.ldi:
All a lot more constraints on alignment: sections must be
word-aligned at least for the network loader to accept them.
I hope I have correctly modified the .mlt file; it's not exactly
self documenting.
1999-02-22 Hugo Tyson <hmt@cygnus.co.uk>
* include/hal_cache.h: New file
* include/hal_clock.h: New file
* include/hal_diag.h: New file
* include/hal_xpic.h: New file
* include/halboot.si: New file
* include/pkgconf/hal_sparclite_sleb.h: New file
* include/pkgconf/ram.ldi: New file
* include/pkgconf/ram.mlt: New file
* src/PKGconf.mak: New file
* src/hal_priv.c: New file
* tests/PKGconf.mak: New file
* tests/sleb.c: New file
Initial checkin of the hardware platform port for SPARClite:
platform is sleb: SPARClite Evaluation Board.
The structure here mirrors that in the sim directory, and in fact
was cloned from it after the change of 1999-02-08 for MLT
compliance.
//===========================================================================
//####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####
//===========================================================================
//EOF ChangeLog
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -