RE: [PATCH]: hpilo: fix pointer warning in ilo_ccb_setup [v2]

From: Altobelli, David
Date: Mon Jun 14 2010 - 17:17:38 EST


> From Andrew Morton:
> So what's happening here. As send_fifobar_pa, send_desc_pa,
> recv_fifobar_pa and recv_desc_pa are only ever written to, I assume
> that we're writing a 64-bit value and then reading it back via the
> 32-bit value which shares the same storage.

The physical addresses are used to fill out a structure defined
by iLO firmware that has 64 bit fields for the various queues or descriptors.
A copy with physical addrs is copied to device memory. The size of the
structure matters for the physical copy, which is why those fields need to be u64,
not a variable type like dma_addr_t, or a pointer.
We keep a copy with virtual addresses for use by the kernel. The size of the
kernel pointer doesn't really matter, it just tells the driver where to write
in the shared memory. Does that answer your question, maybe I missed
what concerned you?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/