mirror of
https://github.com/linux-sunxi/u-boot-sunxi.git
synced 2024-02-12 11:16:03 +08:00
socfpga: stratix10: fix sdram_calculate_size
Incorrect type of size variable results in 0 being returned for sdram sizes greater than or equal to 4GB. Signed-off-by: Dalon Westergreen <dwesterg@gmail.com>
This commit is contained in:

committed by
Marek Vasut

parent
3570469742
commit
02d8d32591
@ -7,7 +7,7 @@
|
|||||||
#ifndef _SDRAM_S10_H_
|
#ifndef _SDRAM_S10_H_
|
||||||
#define _SDRAM_S10_H_
|
#define _SDRAM_S10_H_
|
||||||
|
|
||||||
unsigned long sdram_calculate_size(void);
|
phys_size_t sdram_calculate_size(void);
|
||||||
int sdram_mmr_init_full(unsigned int sdr_phy_reg);
|
int sdram_mmr_init_full(unsigned int sdr_phy_reg);
|
||||||
int sdram_calibration_full(void);
|
int sdram_calibration_full(void);
|
||||||
|
|
||||||
|
@ -371,11 +371,11 @@ int sdram_mmr_init_full(unsigned int unused)
|
|||||||
* Calculate SDRAM device size based on SDRAM controller parameters.
|
* Calculate SDRAM device size based on SDRAM controller parameters.
|
||||||
* Size is specified in bytes.
|
* Size is specified in bytes.
|
||||||
*/
|
*/
|
||||||
unsigned long sdram_calculate_size(void)
|
phys_size_t sdram_calculate_size(void)
|
||||||
{
|
{
|
||||||
u32 dramaddrw = hmc_readl(DRAMADDRW);
|
u32 dramaddrw = hmc_readl(DRAMADDRW);
|
||||||
|
|
||||||
u32 size = 1 << (DRAMADDRW_CFG_CS_ADDR_WIDTH(dramaddrw) +
|
phys_size_t size = 1 << (DRAMADDRW_CFG_CS_ADDR_WIDTH(dramaddrw) +
|
||||||
DRAMADDRW_CFG_BANK_GRP_ADDR_WIDTH(dramaddrw) +
|
DRAMADDRW_CFG_BANK_GRP_ADDR_WIDTH(dramaddrw) +
|
||||||
DRAMADDRW_CFG_BANK_ADDR_WIDTH(dramaddrw) +
|
DRAMADDRW_CFG_BANK_ADDR_WIDTH(dramaddrw) +
|
||||||
DRAMADDRW_CFG_ROW_ADDR_WIDTH(dramaddrw) +
|
DRAMADDRW_CFG_ROW_ADDR_WIDTH(dramaddrw) +
|
||||||
|
Reference in New Issue
Block a user