summaryrefslogtreecommitdiff
path: root/drivers/ddr/marvell/a38x/ddr3_a38x_training.c
blob: 7a05e58988353c7ebaeb315c520c61061cd8d48d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (C) Marvell International Ltd. and its affiliates
 */

#include <common.h>
#include <i2c.h>
#include <spl.h>
#include <asm/io.h>
#include <asm/arch/cpu.h>
#include <asm/arch/soc.h>

#include "ddr3_init.h"

/*
 * Name:     ddr3_tip_init_silicon
 * Desc:     initiate silicon parameters
 * Args:
 * Notes:
 * Returns:  required value
 */
int ddr3_silicon_init(void)
{
	int status;
	static int init_done;

	if (init_done == 1)
		return MV_OK;

	status = ddr3_tip_init_a38x(0, 0);
	if (MV_OK != status) {
		printf("DDR3 A38x silicon init - FAILED 0x%x\n", status);
		return status;
	}

	init_done = 1;

	return MV_OK;
}