Changeset 93180ea2 in rtems for c/src/lib


Ignore:
Timestamp:
07/09/99 17:16:10 (25 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.8, 4.9, 5, master
Children:
2728b074
Parents:
b73e57b
Message:

Patch from Eric Valette <valette@…>:

  • The same bug fix that was done on pc386 to prevent interrupt from occuring (never experienced it but who knows as I have 8259 emulation :()
  • Removed every compiler warning (except wrong ones and ones I can't do anything).
  • Removed any libc available code in code linked with mcp750 rtems executbale. Unfortunately using newlib functions for linking the bootloader does not work as the compilation options in bootloader (-mrelocatable -fixed-r13) are not compatible with newlib options. => I have put any libc external reference in one single new file (lib.c) that is linked only with the boot loader. Removing the file from ${OBJ} and using -lc crash the bootloader. Added big warning...
Location:
c/src/lib/libbsp/powerpc
Files:
2 deleted
28 edited

Legend:

Unmodified
Added
Removed
  • c/src/lib/libbsp/powerpc/mcp750/bootloader/Makefile.in

    rb73e57b r93180ea2  
    1010
    1111# C source names, if any, go here -- minus the .c
    12 C_PIECES=misc pci zlib mm em86 polled_io
     12C_PIECES=misc pci zlib mm em86 polled_io lib
    1313C_FILES=$(C_PIECES:%=%.c)
    1414C_O_FILES=$(C_PIECES:%=${ARCH}/%.o)
     
    1717
    1818# Assembly source names, if any, go here -- minus the .s
    19 S_PIECES=head exception em86real consoleLib
     19S_PIECES=head exception em86real
    2020S_FILES=$(S_PIECES:%=%.S)
    2121S_O_FILES=$(S_FILES:%.S=${ARCH}/%.o)
     
    5858#
    5959
    60 CLEAN_ADDITIONS += bootloader
     60CLEAN_ADDITIONS += bootloader reloc.O
    6161CLOBBER_ADDITIONS += $(IMAGES)
    6262
     63#
     64# CAUTION :
     65#
     66# As we use very specific compilation options in this directory
     67# we shall not use any other code. This includes the newlib libc.a
     68# as well as other code located in .o files in mcp750 directory.
     69#
     70# NEVER remove lib.c. You have been warned...
     71#
    6372bootloader : ${OBJS} $(IMAGES) $(BINARY_LOADED) ppcboot.lds
    6473        $(LD) -o bootloader $(OBJS) --just-symbols=$(BINARY_LOADED) \
    6574        -b binary $(IMAGES) -T @srcdir@/ppcboot.lds \
    6675         -Map bootloader.map
     76
     77check_unresolved : ${OBJS}
     78        $(LD) -r -o reloc.O ${OBJS}
     79        $(NM) reloc.O |grep ' U '
     80        echo "Every symbol listed should be defined in @srcdir@/ppcboot.lds"
    6781
    6882rtems.gz: $(BINARY_LOADED)
  • c/src/lib/libbsp/powerpc/mcp750/bootloader/head.S

    rb73e57b r93180ea2  
    2929#define USE_PPCBUG
    3030#undef  USE_PPCBUG
     31
     32#define MONITOR_ENTER                   \
     33        mfmsr   r10             ;       \
     34        ori     r10,r10,MSR_IP  ;       \
     35        mtmsr   r10             ;       \
     36        li      r10,0x63        ;       \
     37        sc
    3138       
    3239        START_GOT
     
    5158 * code area, so that simple C routines can be called.
    5259 */
    53 start:  bl      1f
     60start: 
     61#ifdef  USE_PPCBUG
     62        MONITOR_ENTER   
     63#endif
     64        bl      1f
    54651:      mflr    r1
    5566        li      r0,0
     
    231242/* Provisional return to FW, works for PPCBug */
    232243#if 0
    233 1:      mfmsr   r10
    234         ori     r10,r10,MSR_IP
    235         mtmsr   r10
    236         li      r10,0x63
    237         sc
     244        MONITOR_ENTER
    238245#else
    2392461:      bctr
     
    314321        sync   
    315322        blr                                     
    316 /* A few utility functions, some copied from arch/ppc/lib/string.S */
    317 
    318 #if 0
    319         .globl  strnlen
    320         .type   strnlen,@function
    321 strnlen:
    322         addi    r4,r4,1
    323         mtctr   r4
    324         addi    r4,r3,-1
    325 1:      lbzu    r0,1(r4)
    326         cmpwi   0,r0,0
    327         bdnzf   eq,1b
    328         subf    r3,r3,r4
    329         blr
    330 #endif
     323
    331324        .globl  codemove
    332325codemove:
  • c/src/lib/libbsp/powerpc/mcp750/console/console.c

    rb73e57b r93180ea2  
    2222#include <stdlib.h>
    2323#include <assert.h>
     24#include <stdlib.h>
     25
    2426#undef __assert
    2527void __assert (const char *file, int line, const char *msg);
     28extern int close(int fd);
    2629
    2730#include <bsp.h>
     
    192195} /* console_initialize */
    193196
    194 
    195 static int console_open_count = 0;
    196197
    197198static int console_last_close(int major, int minor, void *arg)
     
    273274             void                      *arg)
    274275{
    275   rtems_libio_rw_args_t *rw_args = (rtems_libio_rw_args_t *)arg;
    276   char                  *buffer  = rw_args->buffer;
    277   int            count, maximum  = rw_args->count;
    278276
    279277  return rtems_termios_read (arg);
     
    291289              void                    * arg)
    292290{
    293   rtems_libio_rw_args_t *rw_args = (rtems_libio_rw_args_t *)arg;
    294   char                  *buffer  = rw_args->buffer;
    295   int            count, maximum  = rw_args->count;
    296291
    297292  return rtems_termios_write (arg);
  • c/src/lib/libbsp/powerpc/mcp750/console/inch.c

    rb73e57b r93180ea2  
    233233_IBMPC_chrdy(char *c)
    234234{
    235   /* FIX ME!!! It doesn't work without something like the following line.
    236      Find out why! */
    237   printk("");
    238 
    239235  /* Check buffer our ISR builds */
    240236  if (kbd_first != kbd_last)
  • c/src/lib/libbsp/powerpc/mcp750/console/polled_io.c

    rb73e57b r93180ea2  
    407407unsigned long ticks_per_ms = 1000000;   /* Decrementer ticks per ms (true for 601) */
    408408
    409 void * memset(void *p, int c, size_t n) {
    410         char *q =p;
    411         for(; n>0; --n) *q++=c;
    412         return p;
    413 }
    414 
    415 void * memcpy(void *dst, const void * src, size_t n) {
    416         u_char *d=dst;
    417         const u_char *s=src;
    418         while(n-- > 0) *d++=*s++;
    419         return dst;
    420 }
    421 
    422 char * strcat(char * dest, const char * src)
    423 {
    424         char *tmp = dest;
    425 
    426         while (*dest)
    427                 dest++;
    428         while ((*dest++ = *src++) != '\0')
    429                 ;
    430 
    431         return tmp;
    432 }
    433 
    434409/* The decrementer is present on all processors and the RTC on the 601
    435410 * has the annoying characteristic of jumping from 1e9 to 0, so we
     
    507482{
    508483  if (global_index ==( STATIC_LOG_DATA_PAGE_NB - 1) ) return (void*) 0;
    509   return  (void*) log_page_pool [PAGE_SIZE * global_index++];
     484  return  (void*) &(log_page_pool [PAGE_SIZE * global_index++]);
    510485}
    511486
     
    849824};
    850825
    851 console_io* curIo = &vacuum_console_functions;
     826console_io* curIo = (console_io*) &vacuum_console_functions;
    852827
    853828int select_console(ioType t) {
     
    855830 
    856831  switch (t) {
    857   case CONSOLE_VACUUM   : curIo = &vacuum_console_functions; break;
    858   case CONSOLE_LOG      : curIo = &log_console_functions; break;
    859   case CONSOLE_SERIAL   : curIo = &serial_console_functions; break;
    860   case CONSOLE_VGA      : curIo = &vga_console_functions; break;
    861   default               : curIo = &vacuum_console_functions;break;
     832  case CONSOLE_VACUUM   : curIo = (console_io*)&vacuum_console_functions; break;
     833  case CONSOLE_LOG      : curIo = (console_io*)&log_console_functions; break;
     834  case CONSOLE_SERIAL   : curIo = (console_io*)&serial_console_functions; break;
     835  case CONSOLE_VGA      : curIo = (console_io*)&vga_console_functions; break;
     836  default               : curIo = (console_io*)&vacuum_console_functions;break;
    862837  }
    863838  if (curType == CONSOLE_LOG) flush_log();
     
    883858 * But we need 64 bit values !
    884859 */
     860int vsprintf(char *buf, const char *fmt, va_list args);
    885861
    886862int printk(const char *fmt, ...) {
  • c/src/lib/libbsp/powerpc/mcp750/dec21140/dec21140.c

    rb73e57b r93180ea2  
    347347                for (i3=0; i3<1000; i3++) ;
    348348        }
    349         st_le32(*ioaddr, EE_ENB);
     349        st_le32(ioaddr, EE_ENB);
    350350       
    351351        for (i = 16; i > 0; i--) {
     
    358358
    359359        /* Terminate the EEPROM access. */
    360         st_le32(*ioaddr, EE_ENB & ~EE_CS);
     360        st_le32(ioaddr, EE_ENB & ~EE_CS);
    361361        return ( ((retval<<8)&0xff00) | ((retval>>8)&0xff) );
    362362}
     
    411411         sc->arpcom.ac_enaddr[2], sc->arpcom.ac_enaddr[3],
    412412         sc->arpcom.ac_enaddr[4], sc->arpcom.ac_enaddr[5],
    413          sc->irqInfo.name, sc->port, sc->base);
     413         sc->irqInfo.name, sc->port, (unsigned) sc->base);
    414414#endif
    415415 
     
    792792        unsigned int  ulDeviceID, lvalue, tmp; 
    793793        unsigned char cvalue;
    794         int value;
    795         char interrupt;
    796         int diag;
    797794       
    798795        /*
  • c/src/lib/libbsp/powerpc/mcp750/include/bsp.h

    rb73e57b r93180ea2  
    4848extern rtems_configuration_table  BSP_Configuration;
    4949extern void BSP_panic(char *s);
     50extern void rtemsReboot(void);
    5051extern int printk(const char *, ...) __attribute__((format(printf, 1, 2)));
    5152#endif
  • c/src/lib/libbsp/powerpc/mcp750/irq/irq_init.c

    rb73e57b r93180ea2  
    102102{
    103103  pci_isa_bridge_device pci_dev;
    104   unsigned long temp;
     104  unsigned int temp;
    105105  unsigned char tmp;
    106106  unsigned char maxBus;
     
    219219  rtems_raw_except_connect_data vectorDesc;
    220220  int i;
    221   register unsigned int msr;
    222221 
    223222  /*
     
    265264    vectorDesc.hdl.vector       =       ASM_DEC_VECTOR;
    266265    vectorDesc.hdl.raw_hdl      =       decrementer_exception_vector_prolog_code;
    267     vectorDesc.hdl.raw_hdl_size =       &decrementer_exception_vector_prolog_code_size;
     266    vectorDesc.hdl.raw_hdl_size =       (unsigned) &decrementer_exception_vector_prolog_code_size;
    268267    vectorDesc.on               =       nop_func;
    269268    vectorDesc.off              =       nop_func;
     
    275274    vectorDesc.hdl.vector       =       ASM_EXT_VECTOR;
    276275    vectorDesc.hdl.raw_hdl      =       external_exception_vector_prolog_code;
    277     vectorDesc.hdl.raw_hdl_size =       &external_exception_vector_prolog_code_size;
     276    vectorDesc.hdl.raw_hdl_size =       (unsigned) &external_exception_vector_prolog_code_size;
    278277    if (!mpc60x_set_exception (&vectorDesc)) {
    279278      BSP_panic("Unable to initialize RTEMS external raw exception\n");
    280279    }
    281280    printk("RTEMS IRQ management is now operationnal\n");
    282     printk("Going to enable interrupts at processor level\n");
    283     _CPU_MSR_GET(msr);
    284     msr = msr |= MSR_EE;
    285     _CPU_MSR_SET(msr);
    286     printk("Interrupts enabled\n");
    287281}
    288282
  • c/src/lib/libbsp/powerpc/mcp750/openpic/openpic.c

    rb73e57b r93180ea2  
    2626#include <libcpu/io.h>
    2727#include <libcpu/byteorder.h>
     28#include <bsp.h>
    2829
    2930#define NULL 0
  • c/src/lib/libbsp/powerpc/mcp750/pci/pci.c

    rb73e57b r93180ea2  
    2222#include <bsp/residual.h>
    2323#include <bsp/openpic.h>
     24#include <bsp.h>
    2425
    2526#define PCI_CONFIG_ADDR                 0xcf8
  • c/src/lib/libbsp/powerpc/mcp750/pci/pci.h

    rb73e57b r93180ea2  
    11491149 */
    11501150extern unsigned char BusCountPCI();
     1151extern void InitializePCI();
    11511152
    11521153#endif /* RTEMS_PCI_H */
  • c/src/lib/libbsp/powerpc/mcp750/startup/Makefile.in

    rb73e57b r93180ea2  
    1717
    1818# Assembly source names, if any, go here -- minus the .s
    19 S_PIECES=consoleLib
     19S_PIECES=
    2020S_FILES=$(S_PIECES:%=%.S)
    2121S_O_FILES=$(S_FILES:%.S=${ARCH}/%.o)
  • c/src/lib/libbsp/powerpc/mcp750/startup/bspstart.c

    rb73e57b r93180ea2  
    4040extern unsigned get_L2CR();
    4141extern void set_L2CR(unsigned);
     42extern void bsp_cleanup(void);
    4243/*
    4344 * Copy of residuals passed by firmware
     
    122123void bsp_pretasking_hook(void)
    123124{
    124     extern int end;
    125125    rtems_unsigned32        heap_start;   
    126126    rtems_unsigned32        heap_size;
  • c/src/lib/libbsp/powerpc/mcp750/vectors/vectors_init.c

    rb73e57b r93180ea2  
    1515#include <bsp/vectors.h>
    1616#include <libcpu/raw_exception.h>
     17#include <bsp.h>
    1718
    1819static rtems_raw_except_global_settings exception_config;
  • c/src/lib/libbsp/powerpc/motorola_powerpc/bootloader/Makefile.in

    rb73e57b r93180ea2  
    1010
    1111# C source names, if any, go here -- minus the .c
    12 C_PIECES=misc pci zlib mm em86 polled_io
     12C_PIECES=misc pci zlib mm em86 polled_io lib
    1313C_FILES=$(C_PIECES:%=%.c)
    1414C_O_FILES=$(C_PIECES:%=${ARCH}/%.o)
     
    1717
    1818# Assembly source names, if any, go here -- minus the .s
    19 S_PIECES=head exception em86real consoleLib
     19S_PIECES=head exception em86real
    2020S_FILES=$(S_PIECES:%=%.S)
    2121S_O_FILES=$(S_FILES:%.S=${ARCH}/%.o)
     
    5858#
    5959
    60 CLEAN_ADDITIONS += bootloader
     60CLEAN_ADDITIONS += bootloader reloc.O
    6161CLOBBER_ADDITIONS += $(IMAGES)
    6262
     63#
     64# CAUTION :
     65#
     66# As we use very specific compilation options in this directory
     67# we shall not use any other code. This includes the newlib libc.a
     68# as well as other code located in .o files in mcp750 directory.
     69#
     70# NEVER remove lib.c. You have been warned...
     71#
    6372bootloader : ${OBJS} $(IMAGES) $(BINARY_LOADED) ppcboot.lds
    6473        $(LD) -o bootloader $(OBJS) --just-symbols=$(BINARY_LOADED) \
    6574        -b binary $(IMAGES) -T @srcdir@/ppcboot.lds \
    6675         -Map bootloader.map
     76
     77check_unresolved : ${OBJS}
     78        $(LD) -r -o reloc.O ${OBJS}
     79        $(NM) reloc.O |grep ' U '
     80        echo "Every symbol listed should be defined in @srcdir@/ppcboot.lds"
    6781
    6882rtems.gz: $(BINARY_LOADED)
  • c/src/lib/libbsp/powerpc/motorola_powerpc/bootloader/head.S

    rb73e57b r93180ea2  
    2929#define USE_PPCBUG
    3030#undef  USE_PPCBUG
     31
     32#define MONITOR_ENTER                   \
     33        mfmsr   r10             ;       \
     34        ori     r10,r10,MSR_IP  ;       \
     35        mtmsr   r10             ;       \
     36        li      r10,0x63        ;       \
     37        sc
    3138       
    3239        START_GOT
     
    5158 * code area, so that simple C routines can be called.
    5259 */
    53 start:  bl      1f
     60start: 
     61#ifdef  USE_PPCBUG
     62        MONITOR_ENTER   
     63#endif
     64        bl      1f
    54651:      mflr    r1
    5566        li      r0,0
     
    231242/* Provisional return to FW, works for PPCBug */
    232243#if 0
    233 1:      mfmsr   r10
    234         ori     r10,r10,MSR_IP
    235         mtmsr   r10
    236         li      r10,0x63
    237         sc
     244        MONITOR_ENTER
    238245#else
    2392461:      bctr
     
    314321        sync   
    315322        blr                                     
    316 /* A few utility functions, some copied from arch/ppc/lib/string.S */
    317 
    318 #if 0
    319         .globl  strnlen
    320         .type   strnlen,@function
    321 strnlen:
    322         addi    r4,r4,1
    323         mtctr   r4
    324         addi    r4,r3,-1
    325 1:      lbzu    r0,1(r4)
    326         cmpwi   0,r0,0
    327         bdnzf   eq,1b
    328         subf    r3,r3,r4
    329         blr
    330 #endif
     323
    331324        .globl  codemove
    332325codemove:
  • c/src/lib/libbsp/powerpc/motorola_powerpc/console/console.c

    rb73e57b r93180ea2  
    2222#include <stdlib.h>
    2323#include <assert.h>
     24#include <stdlib.h>
     25
    2426#undef __assert
    2527void __assert (const char *file, int line, const char *msg);
     28extern int close(int fd);
    2629
    2730#include <bsp.h>
     
    192195} /* console_initialize */
    193196
    194 
    195 static int console_open_count = 0;
    196197
    197198static int console_last_close(int major, int minor, void *arg)
     
    273274             void                      *arg)
    274275{
    275   rtems_libio_rw_args_t *rw_args = (rtems_libio_rw_args_t *)arg;
    276   char                  *buffer  = rw_args->buffer;
    277   int            count, maximum  = rw_args->count;
    278276
    279277  return rtems_termios_read (arg);
     
    291289              void                    * arg)
    292290{
    293   rtems_libio_rw_args_t *rw_args = (rtems_libio_rw_args_t *)arg;
    294   char                  *buffer  = rw_args->buffer;
    295   int            count, maximum  = rw_args->count;
    296291
    297292  return rtems_termios_write (arg);
  • c/src/lib/libbsp/powerpc/motorola_powerpc/console/inch.c

    rb73e57b r93180ea2  
    233233_IBMPC_chrdy(char *c)
    234234{
    235   /* FIX ME!!! It doesn't work without something like the following line.
    236      Find out why! */
    237   printk("");
    238 
    239235  /* Check buffer our ISR builds */
    240236  if (kbd_first != kbd_last)
  • c/src/lib/libbsp/powerpc/motorola_powerpc/console/polled_io.c

    rb73e57b r93180ea2  
    407407unsigned long ticks_per_ms = 1000000;   /* Decrementer ticks per ms (true for 601) */
    408408
    409 void * memset(void *p, int c, size_t n) {
    410         char *q =p;
    411         for(; n>0; --n) *q++=c;
    412         return p;
    413 }
    414 
    415 void * memcpy(void *dst, const void * src, size_t n) {
    416         u_char *d=dst;
    417         const u_char *s=src;
    418         while(n-- > 0) *d++=*s++;
    419         return dst;
    420 }
    421 
    422 char * strcat(char * dest, const char * src)
    423 {
    424         char *tmp = dest;
    425 
    426         while (*dest)
    427                 dest++;
    428         while ((*dest++ = *src++) != '\0')
    429                 ;
    430 
    431         return tmp;
    432 }
    433 
    434409/* The decrementer is present on all processors and the RTC on the 601
    435410 * has the annoying characteristic of jumping from 1e9 to 0, so we
     
    507482{
    508483  if (global_index ==( STATIC_LOG_DATA_PAGE_NB - 1) ) return (void*) 0;
    509   return  (void*) log_page_pool [PAGE_SIZE * global_index++];
     484  return  (void*) &(log_page_pool [PAGE_SIZE * global_index++]);
    510485}
    511486
     
    849824};
    850825
    851 console_io* curIo = &vacuum_console_functions;
     826console_io* curIo = (console_io*) &vacuum_console_functions;
    852827
    853828int select_console(ioType t) {
     
    855830 
    856831  switch (t) {
    857   case CONSOLE_VACUUM   : curIo = &vacuum_console_functions; break;
    858   case CONSOLE_LOG      : curIo = &log_console_functions; break;
    859   case CONSOLE_SERIAL   : curIo = &serial_console_functions; break;
    860   case CONSOLE_VGA      : curIo = &vga_console_functions; break;
    861   default               : curIo = &vacuum_console_functions;break;
     832  case CONSOLE_VACUUM   : curIo = (console_io*)&vacuum_console_functions; break;
     833  case CONSOLE_LOG      : curIo = (console_io*)&log_console_functions; break;
     834  case CONSOLE_SERIAL   : curIo = (console_io*)&serial_console_functions; break;
     835  case CONSOLE_VGA      : curIo = (console_io*)&vga_console_functions; break;
     836  default               : curIo = (console_io*)&vacuum_console_functions;break;
    862837  }
    863838  if (curType == CONSOLE_LOG) flush_log();
     
    883858 * But we need 64 bit values !
    884859 */
     860int vsprintf(char *buf, const char *fmt, va_list args);
    885861
    886862int printk(const char *fmt, ...) {
  • c/src/lib/libbsp/powerpc/motorola_powerpc/dec21140/dec21140.c

    rb73e57b r93180ea2  
    347347                for (i3=0; i3<1000; i3++) ;
    348348        }
    349         st_le32(*ioaddr, EE_ENB);
     349        st_le32(ioaddr, EE_ENB);
    350350       
    351351        for (i = 16; i > 0; i--) {
     
    358358
    359359        /* Terminate the EEPROM access. */
    360         st_le32(*ioaddr, EE_ENB & ~EE_CS);
     360        st_le32(ioaddr, EE_ENB & ~EE_CS);
    361361        return ( ((retval<<8)&0xff00) | ((retval>>8)&0xff) );
    362362}
     
    411411         sc->arpcom.ac_enaddr[2], sc->arpcom.ac_enaddr[3],
    412412         sc->arpcom.ac_enaddr[4], sc->arpcom.ac_enaddr[5],
    413          sc->irqInfo.name, sc->port, sc->base);
     413         sc->irqInfo.name, sc->port, (unsigned) sc->base);
    414414#endif
    415415 
     
    792792        unsigned int  ulDeviceID, lvalue, tmp; 
    793793        unsigned char cvalue;
    794         int value;
    795         char interrupt;
    796         int diag;
    797794       
    798795        /*
  • c/src/lib/libbsp/powerpc/motorola_powerpc/include/bsp.h

    rb73e57b r93180ea2  
    4848extern rtems_configuration_table  BSP_Configuration;
    4949extern void BSP_panic(char *s);
     50extern void rtemsReboot(void);
    5051extern int printk(const char *, ...) __attribute__((format(printf, 1, 2)));
    5152#endif
  • c/src/lib/libbsp/powerpc/motorola_powerpc/irq/irq_init.c

    rb73e57b r93180ea2  
    102102{
    103103  pci_isa_bridge_device pci_dev;
    104   unsigned long temp;
     104  unsigned int temp;
    105105  unsigned char tmp;
    106106  unsigned char maxBus;
     
    219219  rtems_raw_except_connect_data vectorDesc;
    220220  int i;
    221   register unsigned int msr;
    222221 
    223222  /*
     
    265264    vectorDesc.hdl.vector       =       ASM_DEC_VECTOR;
    266265    vectorDesc.hdl.raw_hdl      =       decrementer_exception_vector_prolog_code;
    267     vectorDesc.hdl.raw_hdl_size =       &decrementer_exception_vector_prolog_code_size;
     266    vectorDesc.hdl.raw_hdl_size =       (unsigned) &decrementer_exception_vector_prolog_code_size;
    268267    vectorDesc.on               =       nop_func;
    269268    vectorDesc.off              =       nop_func;
     
    275274    vectorDesc.hdl.vector       =       ASM_EXT_VECTOR;
    276275    vectorDesc.hdl.raw_hdl      =       external_exception_vector_prolog_code;
    277     vectorDesc.hdl.raw_hdl_size =       &external_exception_vector_prolog_code_size;
     276    vectorDesc.hdl.raw_hdl_size =       (unsigned) &external_exception_vector_prolog_code_size;
    278277    if (!mpc60x_set_exception (&vectorDesc)) {
    279278      BSP_panic("Unable to initialize RTEMS external raw exception\n");
    280279    }
    281280    printk("RTEMS IRQ management is now operationnal\n");
    282     printk("Going to enable interrupts at processor level\n");
    283     _CPU_MSR_GET(msr);
    284     msr = msr |= MSR_EE;
    285     _CPU_MSR_SET(msr);
    286     printk("Interrupts enabled\n");
    287281}
    288282
  • c/src/lib/libbsp/powerpc/motorola_powerpc/openpic/openpic.c

    rb73e57b r93180ea2  
    2626#include <libcpu/io.h>
    2727#include <libcpu/byteorder.h>
     28#include <bsp.h>
    2829
    2930#define NULL 0
  • c/src/lib/libbsp/powerpc/motorola_powerpc/pci/pci.c

    rb73e57b r93180ea2  
    2222#include <bsp/residual.h>
    2323#include <bsp/openpic.h>
     24#include <bsp.h>
    2425
    2526#define PCI_CONFIG_ADDR                 0xcf8
  • c/src/lib/libbsp/powerpc/motorola_powerpc/pci/pci.h

    rb73e57b r93180ea2  
    11491149 */
    11501150extern unsigned char BusCountPCI();
     1151extern void InitializePCI();
    11511152
    11521153#endif /* RTEMS_PCI_H */
  • c/src/lib/libbsp/powerpc/motorola_powerpc/startup/Makefile.in

    rb73e57b r93180ea2  
    1717
    1818# Assembly source names, if any, go here -- minus the .s
    19 S_PIECES=consoleLib
     19S_PIECES=
    2020S_FILES=$(S_PIECES:%=%.S)
    2121S_O_FILES=$(S_FILES:%.S=${ARCH}/%.o)
  • c/src/lib/libbsp/powerpc/motorola_powerpc/startup/bspstart.c

    rb73e57b r93180ea2  
    4040extern unsigned get_L2CR();
    4141extern void set_L2CR(unsigned);
     42extern void bsp_cleanup(void);
    4243/*
    4344 * Copy of residuals passed by firmware
     
    122123void bsp_pretasking_hook(void)
    123124{
    124     extern int end;
    125125    rtems_unsigned32        heap_start;   
    126126    rtems_unsigned32        heap_size;
  • c/src/lib/libbsp/powerpc/motorola_powerpc/vectors/vectors_init.c

    rb73e57b r93180ea2  
    1515#include <bsp/vectors.h>
    1616#include <libcpu/raw_exception.h>
     17#include <bsp.h>
    1718
    1819static rtems_raw_except_global_settings exception_config;
Note: See TracChangeset for help on using the changeset viewer.