summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/powerpc/ep1a/console/alloc360.c
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libbsp/powerpc/ep1a/console/alloc360.c')
-rw-r--r--c/src/lib/libbsp/powerpc/ep1a/console/alloc360.c51
1 files changed, 40 insertions, 11 deletions
diff --git a/c/src/lib/libbsp/powerpc/ep1a/console/alloc360.c b/c/src/lib/libbsp/powerpc/ep1a/console/alloc360.c
index 0d1b31b729..8db8a67ed3 100644
--- a/c/src/lib/libbsp/powerpc/ep1a/console/alloc360.c
+++ b/c/src/lib/libbsp/powerpc/ep1a/console/alloc360.c
@@ -34,23 +34,40 @@ void M360SetupMemory( M68360_t ptr ){
#if DEBUG_PRINT
printk("m360->mcr:0x%08x Q1_360_SIM_MCR:0x%08x\n",
- (unsigned int)&(m360->mcr), ((unsigned int)m360+Q1_360_SIM_MCR));
+ (uint32_t)&(m360->mcr), ((uint32_t)m360+Q1_360_SIM_MCR));
#endif
- ptr->bdregions[0].base = (char *)&m360->dpram1[0];
+ ptr->bdregions[0].base = (uint8_t *)&m360->dpram1[0];
ptr->bdregions[0].size = sizeof m360->dpram1;
ptr->bdregions[0].used = 0;
+#if DEBUG_PRINT
+printk("%d) base 0x%x size %d used %d\n", 0,
+ (uint32_t)ptr->bdregions[0].base, ptr->bdregions[0].size, ptr->bdregions[0].used );
+#endif
- ptr->bdregions[1].base = (char *)&m360->dpram3[0];
+ ptr->bdregions[1].base = (uint8_t *)&m360->dpram3[0];
ptr->bdregions[1].size = sizeof m360->dpram3;
ptr->bdregions[1].used = 0;
+#if DEBUG_PRINT
+printk("%d) base 0x%x size %d used %d\n", 1,
+ (uint32_t)ptr->bdregions[1].base, ptr->bdregions[1].size, ptr->bdregions[1].used );
+#endif
- ptr->bdregions[2].base = (char *)&m360->dpram0[0];
+ ptr->bdregions[2].base = (uint8_t *)&m360->dpram0[0];
ptr->bdregions[2].size = sizeof m360->dpram0;
ptr->bdregions[2].used = 0;
+#if DEBUG_PRINT
+printk("%d) base 0x%x size %d used %d\n", 2,
+ (uint32_t)ptr->bdregions[2].base, ptr->bdregions[2].size, ptr->bdregions[2].used );
+#endif
- ptr->bdregions[3].base = (char *)&m360->dpram2[0];
+ ptr->bdregions[3].base = (uint8_t *)&m360->dpram2[0];
ptr->bdregions[3].size = sizeof m360->dpram2;
ptr->bdregions[3].used = 0;
+#if DEBUG_PRINT
+printk("%d) base 0x%x size %d used %d\n", 3,
+ (uint32_t)ptr->bdregions[3].base, ptr->bdregions[3].size, ptr->bdregions[3].used );
+#endif
+
}
@@ -60,11 +77,11 @@ printk("m360->mcr:0x%08x Q1_360_SIM_MCR:0x%08x\n",
void *
M360AllocateBufferDescriptors (M68360_t ptr, int count)
{
- unsigned int i;
+ uint32_t i;
ISR_Level level;
void *bdp = NULL;
- unsigned int want = count * sizeof(m360BufferDescriptor_t);
- int have;
+ uint32_t want = count * sizeof(m360BufferDescriptor_t);
+ uint32_t have;
/*
* Running with interrupts disabled is usually considered bad
@@ -81,15 +98,27 @@ M360AllocateBufferDescriptors (M68360_t ptr, int count)
* less dual-port RAM.
*/
if (ptr->bdregions[i].used == 0) {
- volatile unsigned char *cp = ptr->bdregions[i].base;
+ volatile uint8_t *cp = ptr->bdregions[i].base;
+ uint8_t data;
+
*cp = 0xAA;
- if (*cp != 0xAA) {
+ data = *cp;
+ if (data != 0xAA) {
ptr->bdregions[i].used = ptr->bdregions[i].size;
+#if DEBUG_PRINT
+printk("%d) base 0x%x used %d expected 0xAA read 0x%x\n",i,
+ (uint32_t)ptr->bdregions[i].base, ptr->bdregions[0].used, data );
+#endif
continue;
}
*cp = 0x55;
- if (*cp != 0x55) {
+ data = *cp;
+ if (data != 0x55) {
ptr->bdregions[i].used = ptr->bdregions[i].size;
+#if DEBUG_PRINT
+printk("%d) base 0x%x used %d expected 0x55 read 0x%x\n",i,
+ (uint32_t)ptr->bdregions[i].base, ptr->bdregions[0].used, data );
+#endif
continue;
}
*cp = 0x0;