xref: /rk3399_ARM-atf/plat/rockchip/common/drivers/parameter/ddr_parameter.h (revision 09d40e0e08283a249e7dce0e106c07c5141f9b7e)
10d5ec955Stony.xie /*
20d5ec955Stony.xie  * Copyright (c) 2017, ARM Limited and Contributors. All rights reserved.
30d5ec955Stony.xie  *
4c3e70be1Sdp-arm  * SPDX-License-Identifier: BSD-3-Clause
50d5ec955Stony.xie  */
60d5ec955Stony.xie 
7c3cf06f1SAntonio Nino Diaz #ifndef DDR_PARAMETER_H
8c3cf06f1SAntonio Nino Diaz #define DDR_PARAMETER_H
90d5ec955Stony.xie 
100d5ec955Stony.xie #include <string.h>
110d5ec955Stony.xie 
12*09d40e0eSAntonio Nino Diaz #include <platform_def.h>
13*09d40e0eSAntonio Nino Diaz 
14*09d40e0eSAntonio Nino Diaz #include <arch_helpers.h>
15*09d40e0eSAntonio Nino Diaz #include <common/debug.h>
16*09d40e0eSAntonio Nino Diaz #include <drivers/console.h>
17*09d40e0eSAntonio Nino Diaz #include <drivers/delay_timer.h>
18*09d40e0eSAntonio Nino Diaz #include <lib/mmio.h>
19*09d40e0eSAntonio Nino Diaz 
20*09d40e0eSAntonio Nino Diaz #include <plat_private.h>
21*09d40e0eSAntonio Nino Diaz #include <soc.h>
22*09d40e0eSAntonio Nino Diaz 
230d5ec955Stony.xie #define DDR_REGION_NR_MAX		10
240d5ec955Stony.xie #define REGION_NR_OFFSET		0
250d5ec955Stony.xie #define REGION_ADDR_OFFSET		8
260d5ec955Stony.xie #define REGION_DATA_PER_BYTES		8
270d5ec955Stony.xie #define RG_SIZE_MB(byte)		((byte) >> 20)
280d5ec955Stony.xie 
290d5ec955Stony.xie /* unit: MB */
300d5ec955Stony.xie struct param_ddr_usage {
310d5ec955Stony.xie 	uint64_t boundary;
320d5ec955Stony.xie 
330d5ec955Stony.xie 	uint32_t ns_nr;
340d5ec955Stony.xie 	uint64_t ns_base[DDR_REGION_NR_MAX];
350d5ec955Stony.xie 	uint64_t ns_top[DDR_REGION_NR_MAX];
360d5ec955Stony.xie 
370d5ec955Stony.xie 	uint32_t s_nr;
380d5ec955Stony.xie 	uint64_t s_base[DDR_REGION_NR_MAX];
390d5ec955Stony.xie 	uint64_t s_top[DDR_REGION_NR_MAX];
400d5ec955Stony.xie };
410d5ec955Stony.xie 
420d5ec955Stony.xie struct param_ddr_usage ddr_region_usage_parse(uint64_t addr, uint64_t max_mb);
430d5ec955Stony.xie 
44c3cf06f1SAntonio Nino Diaz #endif /* DDR_PARAMETER_H */
45