This file is included in all link variants and section is placed
to the same target address => application can modify even registers,
which values are set only by boot loader. The hwinit.c code should
ensure, that defined initial value is stored into each shadow and register,
because shadow store is not touched by crt0.o and contains garbage
after reset.
darcs-hash:
20051030174654-ff715-
805cf1ba9deb6759bbc7c1fa2261fcd976d6a3b0.gz
PROVIDE( ___stack_top = ( __iram0_end & ~ 3 ) - 4 );
+INPUT(bsp0common.o)
+
SECTIONS
{
.text :
/*PROVIDE( ___setup_board = _start);*/
STARTUP(crt0.o)
+INPUT(bsp0common.o)
INPUT(hwinit.o setup_board.o)
SECTIONS
PROVIDE( ___heap_end = __ram_end );
STARTUP(crt0.o)
+INPUT(bsp0common.o)
SECTIONS
{
PROVIDE( ___heap_end = __ram_end );
STARTUP(crt0.o)
+INPUT(bsp0common.o)
SECTIONS
{
hwinit_SOURCES = hwinit.c setup_board.S
-lib_obj_SOURCES = hwinit.c setup_board.S
+lib_obj_SOURCES = bsp0common.c hwinit.c setup_board.S
--- /dev/null
+/* procesor H8S/2638 ver 1.1 */
+#include <types.h>
+#include <cpu_def.h>
+#include <h8s2638h.h>
+#include <system_def.h>
+
+#define SHADOW_SECT __attribute((section (".shadreg")))
+
+__u8 DIO_P1DDR_shadow SHADOW_SECT;
+__u8 DIO_P3DDR_shadow SHADOW_SECT;
+__u8 DIO_PFDDR_shadow SHADOW_SECT;
+__u8 DIO_PJDDR_shadow SHADOW_SECT;
#endif /*XRAM_SUPPORT_ENABLED*/
#define SMALL_ADRBUS 8
-#define SHADOW_SECT __attribute((section (".shadreg")))
-
-__u8 DIO_P1DDR_shadow SHADOW_SECT;
-__u8 DIO_P3DDR_shadow SHADOW_SECT;
-__u8 DIO_PFDDR_shadow SHADOW_SECT;
-__u8 DIO_PJDDR_shadow SHADOW_SECT;
-
static void deb_led_out(char val)
{
#if 0
PROVIDE( ___stack_top = ( __iram0_end & ~ 3 ) - 4 );
+INPUT(bsp0common.o)
+
SECTIONS
{
.text :
/*PROVIDE( ___setup_board = _start);*/
STARTUP(crt0.o)
+INPUT(bsp0common.o)
INPUT(hwinit.o setup_board.o)
SECTIONS
PROVIDE( ___heap_end = __ram_end );
STARTUP(crt0.o)
+INPUT(bsp0common.o)
SECTIONS
{
PROVIDE( ___heap_end = __iram0_end - 0x200 );
STARTUP(crt0.o)
+INPUT(bsp0common.o)
SECTIONS
{
PROVIDE( ___heap_end = __ram_end );
STARTUP(crt0.o)
+INPUT(bsp0common.o)
SECTIONS
{
--- /dev/null
+/* procesor H8S/2638 ver 1.1 */
+#include <types.h>
+#include <cpu_def.h>
+#include <h8s2638h.h>
+#include <system_def.h>
+
+#define SHADOW_SECT __attribute((section (".shadreg")))
+
+__u8 DIO_P1DDR_shadow SHADOW_SECT;
+__u8 DIO_P3DDR_shadow SHADOW_SECT;
+__u8 DIO_PFDDR_shadow SHADOW_SECT;
+__u8 DIO_PJDDR_shadow SHADOW_SECT;
PROVIDE( ___stack_top = ( __iram0_end & ~ 3 ) - 4 );
+INPUT(bsp0common.o)
+
SECTIONS
{
.text :
/*PROVIDE( ___setup_board = _start);*/
STARTUP(crt0.o)
+INPUT(bsp0common.o)
INPUT(hwinit.o setup_board.o)
SECTIONS
PROVIDE( ___heap_end = __iram0_end - 0x200 );
STARTUP(crt0.o)
+INPUT(bsp0common.o)
SECTIONS
{
PROVIDE( ___heap_end = __ram_end );
STARTUP(crt0.o)
+INPUT(bsp0common.o)
SECTIONS
{
hwinit_SOURCES = hwinit.c setup_board.S
-lib_obj_SOURCES = hwinit.c setup_board.S
+lib_obj_SOURCES = bsp0common.c hwinit.c setup_board.S
--- /dev/null
+/* procesor H8S/2638 ver 1.1 */
+#include <types.h>
+#include <cpu_def.h>
+#include <h8s2638h.h>
+#include <system_def.h>
+
+#define SHADOW_SECT __attribute((section (".shadreg")))
+
+__u8 DIO_P1DDR_shadow SHADOW_SECT;
+__u8 DIO_P3DDR_shadow SHADOW_SECT;
+__u8 DIO_PFDDR_shadow SHADOW_SECT;
+__u8 DIO_PJDDR_shadow SHADOW_SECT;
#endif /*XRAM_SUPPORT_ENABLED*/
#define SMALL_ADRBUS 8
-#define SHADOW_SECT __attribute((section (".shadreg")))
-
-__u8 DIO_P1DDR_shadow SHADOW_SECT;
-__u8 DIO_P3DDR_shadow SHADOW_SECT;
-__u8 DIO_PFDDR_shadow SHADOW_SECT;
-__u8 DIO_PJDDR_shadow SHADOW_SECT;
-
static void deb_led_out(char val)
{
if (val&1)