Merge "a8k: Implement platform specific power off" into integration
This commit is contained in:
commit
351ab9f54d
|
@ -124,5 +124,6 @@ int marvell_get_iob_memory_map(struct addr_map_win **win,
|
|||
uint32_t *size, uintptr_t base);
|
||||
int marvell_get_ccu_memory_map(int ap_idx, struct addr_map_win **win,
|
||||
uint32_t *size);
|
||||
int system_power_off(void);
|
||||
|
||||
#endif /* ARMADA_COMMON_H */
|
||||
|
|
|
@ -37,6 +37,13 @@ DOIMAGETOOL ?= ${DOIMAGEPATH}/doimage
|
|||
ROM_BIN_EXT ?= $(BUILD_PLAT)/ble.bin
|
||||
DOIMAGE_FLAGS += -b $(ROM_BIN_EXT) $(NAND_DOIMAGE_FLAGS) $(DOIMAGE_SEC_FLAGS)
|
||||
|
||||
# Check whether to build system_power.c for the platform
|
||||
ifneq ("$(wildcard $(PLAT_FAMILY_BASE)/$(PLAT)/board/system_power.c)","")
|
||||
SYSTEM_POWER_SUPPORT = 1
|
||||
else
|
||||
SYSTEM_POWER_SUPPORT = 0
|
||||
endif
|
||||
|
||||
# This define specifies DDR type for BLE
|
||||
$(eval $(call add_define,CONFIG_DDR4))
|
||||
|
||||
|
@ -82,6 +89,10 @@ MARVELL_DRV := $(MARVELL_DRV_BASE)/io_win.c \
|
|||
|
||||
BL31_PORTING_SOURCES := $(PLAT_FAMILY_BASE)/$(PLAT)/board/marvell_plat_config.c
|
||||
|
||||
ifeq ($(SYSTEM_POWER_SUPPORT),1)
|
||||
BL31_PORTING_SOURCES += $(PLAT_FAMILY_BASE)/$(PLAT)/board/system_power.c
|
||||
endif
|
||||
|
||||
BL31_SOURCES += lib/cpus/aarch64/cortex_a72.S \
|
||||
$(PLAT_COMMON_BASE)/aarch64/plat_helpers.S \
|
||||
$(PLAT_COMMON_BASE)/aarch64/plat_arch_config.c \
|
||||
|
|
|
@ -792,8 +792,20 @@ __dead2 a8k_pwr_domain_pwr_down_wfi(const psci_power_state_t *target_state)
|
|||
* A8K handlers to shutdown/reboot the system
|
||||
*****************************************************************************
|
||||
*/
|
||||
|
||||
/* Set a weak stub for platforms that don't configure system power off */
|
||||
#pragma weak system_power_off
|
||||
int system_power_off(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void __dead2 a8k_system_off(void)
|
||||
{
|
||||
/* Call the platform specific system power off function */
|
||||
system_power_off();
|
||||
|
||||
/* board doesn't have a system off implementation */
|
||||
ERROR("%s: needs to be implemented\n", __func__);
|
||||
panic();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue