On 11/11/2011 05:44 PM, Peter Maydell wrote:
On 11 November 2011 16:24, Alexander Graf<ag...@suse.de> wrote:
On 11/11/2011 05:11 PM, Peter Maydell wrote:
Yes, so that's option (2) and you need to be using a target_phys_addr_t.
But ram_size is ram_addr_t and is the ram size that I have available to use,
so it's exactly the address that I want. I don't see your point. Should go
jump through random useless hoops of doing
target_phys_addr_t ram_end = ram_size;
just because there are some subtile semantic differences between the two
variables? They're integers at the end of the day. Both of them.
Because handing a ram_addr_t to something that wants a target_phys_addr_t
is a red flag that something might be wrong. (As is handing a variable
called _size to something that wants an address.)
Force in Newtons and Force in pound-feet are also both just integers
at the end of the day, but that doesn't make them interchangeable:
http://en.wikipedia.org/wiki/Mars_Climate_Orbiter#Communications_loss
Haha :). In this case, I pass ram_size indirectly to ram_alloc just a
few lines above though, mapping it to 0. So while if this was normal
device code I would agree with your reservation, in this case I don't
think adding indirection buys us anything.
Alex