diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2020-06-06 16:16:48 +0200 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2020-06-06 16:16:48 +0200 |
commit | 13963cd5e032bf85f0d2f9a562b263374a7cc850 (patch) | |
tree | ca2ae32132e42dfc25385d50226883cce7988c2d /sys/src/9/pc/sd53c8xx.c | |
parent | 8003f4f00f0645426a0694b0e5e915d26b7c7153 (diff) |
sd53c8xx: use 64-bit physical addresses
Diffstat (limited to 'sys/src/9/pc/sd53c8xx.c')
-rw-r--r-- | sys/src/9/pc/sd53c8xx.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/sys/src/9/pc/sd53c8xx.c b/sys/src/9/pc/sd53c8xx.c index ad1f3427c..f16644fff 100644 --- a/sys/src/9/pc/sd53c8xx.c +++ b/sys/src/9/pc/sd53c8xx.c @@ -2063,7 +2063,8 @@ sd53c8xxpnp(void) void *scriptma; Controller *ctlr; SDev *sdev, *head, *tail; - ulong regpa, *script, scriptpa; + uvlong regpa, scriptpa; + ulong *script; void *regva, *scriptva; if(cp = getconf("*maxsd53c8xx")) @@ -2092,12 +2093,14 @@ sd53c8xxpnp(void) continue; ba++; } + regpa &= ~0xF; if(regpa == 0) print("regpa 0\n"); - regpa &= ~0xF; regva = vmap(regpa, p->mem[1].size); - if(regva == 0) + if(regva == nil){ + print("sd53c8xx: can't map %llux\n", regpa); continue; + } script = nil; scriptpa = 0; @@ -2111,7 +2114,7 @@ sd53c8xxpnp(void) } scriptpa &= ~0x0F; scriptva = vmap(scriptpa, p->mem[ba].size); - if(scriptva) + if(scriptva != nil) script = scriptva; } if(scriptpa == 0){ |