js2x: Fix compile and cleanup
This moves shared symbols out from the header file and leaves only the minimum in bmc.h. This fixes a "while (...); {" bug spotted by the modern gcc. This fixes cleanup as otherwise the board-js2x/Makefile's "clean" tries cleaning "rtas" which tries cleaning all libs (not just the ones it uses) and that in turn triggers generation of lib/libtpm/Makefile.dep which fails due to missing ./board-js2x/include/version.h. This fixes create_reloc_table.sh to build with newer toolchains which otherwise fail with: ld: cannot use executable file 'reloc_table.o' as input to a link This adds js2x compile to the travis script to know when it breaks again. Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
This commit is contained in:
parent
6903c037a6
commit
0705a5cc1d
|
@ -10,6 +10,8 @@ script:
|
|||
- export PATH="/opt/at14.0/bin:$PATH"
|
||||
- make -j2 qemu
|
||||
- ./lib/libtpm/test.sh
|
||||
- make -j2 distclean
|
||||
- make -j2 js2x
|
||||
|
||||
jobs:
|
||||
include:
|
||||
|
|
|
@ -13,17 +13,7 @@
|
|||
#ifndef __BMC_H
|
||||
#define __BMC_H
|
||||
|
||||
void (*bmc_system_reboot) (void);
|
||||
void (*bmc_power_off) (void);
|
||||
|
||||
short (*bmc_set_flashside) (short mode);
|
||||
short (*bmc_get_flashside) (void);
|
||||
int (*bmc_stop_bootwatchdog) (void);
|
||||
int (*bmc_set_bootwatchdog) (unsigned short);
|
||||
|
||||
uint32_t(*bmc_read_vpd) (uint8_t * dst, uint32_t len, uint32_t offset);
|
||||
uint32_t(*bmc_write_vpd) (uint8_t * src, uint32_t len, uint32_t offset);
|
||||
|
||||
uint32_t(*bmc_get_blade_descr) (uint8_t * dst, uint32_t maxlen, uint32_t * len);
|
||||
extern short (*bmc_set_flashside) (short mode);
|
||||
extern short (*bmc_get_flashside) (void);
|
||||
|
||||
#endif /* __BMC_H */
|
||||
|
|
|
@ -23,6 +23,19 @@ void io_init(void);
|
|||
short reg_get_flashside(void);
|
||||
void rtas_init(void);
|
||||
|
||||
void (*bmc_system_reboot) (void);
|
||||
void (*bmc_power_off) (void);
|
||||
|
||||
short (*bmc_set_flashside) (short mode);
|
||||
short (*bmc_get_flashside) (void);
|
||||
int (*bmc_stop_bootwatchdog) (void);
|
||||
int (*bmc_set_bootwatchdog) (unsigned short);
|
||||
|
||||
uint32_t(*bmc_read_vpd) (uint8_t * dst, uint32_t len, uint32_t offset);
|
||||
uint32_t(*bmc_write_vpd) (uint8_t * src, uint32_t len, uint32_t offset);
|
||||
|
||||
uint32_t(*bmc_get_blade_descr) (uint8_t * dst, uint32_t maxlen, uint32_t * len);
|
||||
|
||||
typedef struct {
|
||||
uint64_t r3;
|
||||
uint64_t addr;
|
||||
|
@ -36,7 +49,7 @@ rtas_slave_loop(volatile slave_t * pIface)
|
|||
{
|
||||
uint64_t mask = pIface->id;
|
||||
pIface->id = 0;
|
||||
while (pIface->id != mask); {
|
||||
while (pIface->id != mask) {
|
||||
int dly = 0x1000;
|
||||
while (dly--);
|
||||
}
|
||||
|
|
|
@ -25,11 +25,11 @@ $(SUBDIRS):
|
|||
|
||||
# Rules for making clean:
|
||||
clean:
|
||||
@for dir in $(SUBDIRS); do \
|
||||
@for dir in $(COMMON_LIBS); do \
|
||||
$(MAKE) -C $$dir clean || exit 1; \
|
||||
done
|
||||
|
||||
distclean:
|
||||
@for dir in $(SUBDIRS); do \
|
||||
@for dir in $(COMMON_LIBS); do \
|
||||
$(MAKE) -C $$dir distclean || exit 1; \
|
||||
done
|
||||
|
|
|
@ -54,7 +54,7 @@ $OBJCOPY -O binary $TMP2.o $TMP2.bin || exit -1
|
|||
# Create the relocation table with gen_reloc_table:
|
||||
$DIRNAME/gen_reloc_table $TMP1.bin $TMP2.bin reloc_table.bin
|
||||
|
||||
$LD -o reloc_table.o -bbinary reloc_table.bin -e0 || exit -1
|
||||
$LD -r -o reloc_table.o -bbinary reloc_table.bin -e0 || exit -1
|
||||
$OBJCOPY --rename-section .data=.reloc reloc_table.o reloc_table.o || exit -1
|
||||
|
||||
rm -f $TMP1.o $TMP2.o $TMP1.bin $TMP2.bin reloc_table.bin
|
||||
|
|
Loading…
Reference in New Issue