summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-at91/include/mach/ddramc.h
blob: b929bf5f58e8cf84b5c202cea3dceb6b1bd26c0e (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
// SPDX-License-Identifier: BSD-1-Clause
/*
 * Copyright (c) 2006, Atmel Corporation
 */
#ifndef __DDRAMC_H__
#define __DDRAMC_H__

/* Note: reserved bits must always be zeroed */
struct at91_ddramc_register {
	unsigned long mdr;
	unsigned long cr;
	unsigned long rtr;
	unsigned long t0pr;
	unsigned long t1pr;
	unsigned long t2pr;
	unsigned long lpr;
	unsigned long lpddr2_lpr;
	unsigned long tim_calr;
	unsigned long cal_mr4r;
};

void at91_ddram_initialize(void __iomem *base_address,
			   void __iomem *ram_address,
			   struct at91_ddramc_register *ddramc_config);

void at91_lpddr2_sdram_initialize(void __iomem *base_address,
				  void __iomem *ram_address,
				  struct at91_ddramc_register *ddramc_config);


void at91_lpddr1_sdram_initialize(void __iomem *base_address,
				  void __iomem *ram_address,
				  struct at91_ddramc_register *ddramc_config);

void __noreturn sama5d2_barebox_entry(unsigned int r4, void *boarddata);

#endif /* #ifndef __DDRAMC_H__ */