rockchip: rk3399: pass board specific message to BL31

Sometime we need to pass board specific message to BL31,
with that BL31 can do board specific operate base on
common code.

BRANCH=None
BUG=chrome-os-partner:51924
TEST=Build gru

Change-Id: Ib7585ce7d3bf01d3ce53b388bf9bd60f3b65f5f1
Signed-off-by: Lin Huang <hl@rock-chips.com>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/349700
Reviewed-by: Vadim Bendebury <vbendeb@chromium.org>
This commit is contained in:
Lin Huang 2016-05-17 15:45:05 +08:00 committed by chrome-bot
parent 121094b78f
commit af83e1bafb
3 changed files with 57 additions and 0 deletions

View file

@ -70,6 +70,7 @@ ramstage-y += timer.c
ramstage-y += ../common/vop.c
ramstage-y += usb.c
ramstage-y += bl31_plat_params.c
BL31_MAKEARGS += PLAT=rk3399
################################################################################

View file

@ -0,0 +1,32 @@
/*
* This file is part of the coreboot project.
*
* Copyright 2016 Rockchip Inc.
*
* This program 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; version 2 of the License.
*
* This program 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.
*
*/
#include <arm_tf.h>
#include <assert.h>
#include <soc/bl31_plat_params.h>
static struct bl31_plat_param *plat_params;
void register_bl31_param(struct bl31_plat_param *param)
{
param->next = plat_params;
plat_params = param;
}
void *soc_get_bl31_plat_params(bl31_params_t *bl31_params)
{
return plat_params;
}

View file

@ -0,0 +1,24 @@
/*
* This file is part of the coreboot project.
*
* Copyright 2016 Rockchip Inc.
*
* This program 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; version 2 of the License.
*
* This program 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.
*
*/
#ifndef __BL31_PLAT_PARAMS_H__
#define __BL31_PLAT_PARAMS_H__
#include <arm-trusted-firmware/plat/rockchip/common/include/plat_params.h>
void register_bl31_param(struct bl31_plat_param *param);
#endif/* __BL31_PLAT_PARAMS_H__ */