ppc4xx_sdram: Use hwaddr for memory bank size

This resolves the target_ulong dependency that's clearly wrong and was
also noted in a fixme comment.

Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <92fdc5f9cc76bf45831428b3ec8d9fc6241b7190.1666194485.git.balaton@eik.bme.hu>
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
This commit is contained in:
BALATON Zoltan 2022-10-19 18:02:55 +02:00 committed by Daniel Henrique Barboza
parent 080741abc2
commit c8c6d68af7
1 changed files with 4 additions and 10 deletions

View File

@ -34,7 +34,6 @@
#include "qapi/error.h"
#include "qemu/log.h"
#include "exec/address-spaces.h" /* get_system_memory() */
#include "exec/cpu-defs.h" /* target_ulong */
#include "hw/irq.h"
#include "hw/qdev-properties.h"
#include "hw/ppc/ppc4xx.h"
@ -126,11 +125,6 @@ enum {
/*****************************************************************************/
/* DDR SDRAM controller */
/*
* XXX: TOFIX: some patches have made this code become inconsistent:
* there are type inconsistencies, mixing hwaddr, target_ulong
* and uint32_t
*/
static uint32_t sdram_ddr_bcr(hwaddr ram_base, hwaddr ram_size)
{
uint32_t bcr;
@ -174,9 +168,9 @@ static inline hwaddr sdram_ddr_base(uint32_t bcr)
return bcr & 0xFF800000;
}
static target_ulong sdram_ddr_size(uint32_t bcr)
static hwaddr sdram_ddr_size(uint32_t bcr)
{
target_ulong size;
hwaddr size;
int sh;
sh = (bcr >> 17) & 0x7;
@ -523,9 +517,9 @@ static inline hwaddr sdram_ddr2_base(uint32_t bcr)
return (bcr & 0xffe00000) << 2;
}
static uint64_t sdram_ddr2_size(uint32_t bcr)
static hwaddr sdram_ddr2_size(uint32_t bcr)
{
uint64_t size;
hwaddr size;
int sh;
sh = 1024 - ((bcr >> 6) & 0x3ff);