mirror of
https://github.com/u-boot/u-boot.git
synced 2025-05-08 19:11:53 +00:00
drivers: ddr: Add DDR2 SDRAM controller driver for Microchip PIC32.
This driver initializes PIC32 DDR2 SDRAM controller and internal DDR2 Phy module. DDR2 controller operates in half-rate mode (upto 533MHZ frequency). Signed-off-by: Paul Thacker <paul.thacker@microchip.com> Signed-off-by: Purna Chandra Mandal <purna.mandal@microchip.com> Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
9e160ee823
commit
9ffa7a35ef
6 changed files with 530 additions and 0 deletions
32
arch/mips/mach-pic32/include/mach/ddr.h
Normal file
32
arch/mips/mach-pic32/include/mach/ddr.h
Normal file
|
@ -0,0 +1,32 @@
|
|||
/*
|
||||
* (c) 2015 Purna Chandra Mandal <purna.mandal@microchip.com>
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0+
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __MICROCHIP_PIC32_DDR_H
|
||||
#define __MICROCHIP_PIC32_DDR_H
|
||||
|
||||
/* called by initdram() function */
|
||||
void ddr2_phy_init(void);
|
||||
void ddr2_ctrl_init(void);
|
||||
phys_size_t ddr2_calculate_size(void);
|
||||
|
||||
/* Maximum number of agents */
|
||||
#define NUM_AGENTS 5
|
||||
|
||||
/* Board can provide agent specific parameters for arbitration by
|
||||
* filling struct ddr2_arbiter_params for all the agents and
|
||||
* implementing board_get_ddr_arbiter_params() to return the filled
|
||||
* structure.
|
||||
*/
|
||||
struct ddr2_arbiter_params {
|
||||
u32 min_limit; /* min bursts to execute per arbitration */
|
||||
u32 req_period; /* request period threshold for accepted cmds */
|
||||
u32 min_cmd_acpt; /* min number of accepted cmds */
|
||||
};
|
||||
|
||||
const struct ddr2_arbiter_params *board_get_ddr_arbiter_params(void);
|
||||
|
||||
#endif /* __MICROCHIP_PIC32_DDR_H */
|
Loading…
Add table
Add a link
Reference in a new issue