34 lines
903 B
C
34 lines
903 B
C
/*
|
|
* Copyright (C) 2022, STMicroelectronics - All Rights Reserved
|
|
*
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*/
|
|
#ifndef STM32MP_RAM_H
|
|
#define STM32MP_RAM_H
|
|
|
|
#include <stdbool.h>
|
|
|
|
#include <drivers/st/stm32mp_ddr.h>
|
|
|
|
#define PARAM(x, y) \
|
|
{ \
|
|
.name = x, \
|
|
.offset = offsetof(struct stm32mp_ddr_config, y), \
|
|
.size = sizeof(config.y) / sizeof(uint32_t), \
|
|
}
|
|
|
|
#define CTL_PARAM(x) PARAM("st,ctl-"#x, c_##x)
|
|
#define PHY_PARAM(x) PARAM("st,phy-"#x, p_##x)
|
|
|
|
struct stm32mp_ddr_param {
|
|
const char *name; /* Name in DT */
|
|
const uint32_t offset; /* Offset in config struct */
|
|
const uint32_t size; /* Size of parameters */
|
|
};
|
|
|
|
int stm32mp_ddr_dt_get_info(void *fdt, int node, struct stm32mp_ddr_info *info);
|
|
int stm32mp_ddr_dt_get_param(void *fdt, int node, const struct stm32mp_ddr_param *param,
|
|
uint32_t param_size, uintptr_t config);
|
|
|
|
#endif /* STM32MP_RAM_H */
|