]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - arch/avr32/include/asm/sdram.h
Add GPL-2.0+ SPDX-License-Identifier to source files
[karo-tx-uboot.git] / arch / avr32 / include / asm / sdram.h
1 /*
2  * Copyright (C) 2006 Atmel Corporation
3  *
4  * SPDX-License-Identifier:     GPL-2.0+
5  */
6 #ifndef __ASM_AVR32_SDRAM_H
7 #define __ASM_AVR32_SDRAM_H
8
9 struct sdram_config {
10         /* Number of data bits. */
11         enum {
12                 SDRAM_DATA_16BIT = 16,
13                 SDRAM_DATA_32BIT = 32,
14         } data_bits;
15
16         /* Number of address bits */
17         uint8_t row_bits, col_bits, bank_bits;
18
19         /* SDRAM timings in cycles */
20         uint8_t cas, twr, trc, trp, trcd, tras, txsr;
21
22         /* SDRAM refresh period in cycles */
23         unsigned long refresh_period;
24 };
25
26 /*
27  * Attempt to initialize the SDRAM controller using the specified
28  * parameters. Return the expected size of the memory area based on
29  * the number of address and data bits.
30  *
31  * The caller should verify that the configuration is correct by
32  * running a memory test, e.g. get_ram_size().
33  */
34 extern unsigned long sdram_init(void *sdram_base,
35                         const struct sdram_config *config);
36
37 #endif /* __ASM_AVR32_SDRAM_H */