[Prism54-devel] sparc64 patch
Herbert Valerio Riedel
hvr@hvrlab.org
Sat, 17 Jan 2004 17:47:32 +0100
--=-zIGoEKIGzWK46RW2Dl9B
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable
On Sat, 2004-01-17 at 17:24, Clint Adams wrote:
> Since sparc64 uses 64-bit pointers, I used this patch to deal with
> Bug#39. Obviously, doing this unconditionally will break 32-bit kernels.
[..]
> - pointerq->host_address =3D (u32) queue_base_addr;
> - pointerq->dev_address =3D (u32) queue_bus_addr;
> + pointerq->host_address =3D (u64) queue_base_addr;
> + pointerq->dev_address =3D (u64) queue_bus_addr;
[..]
without having reviewed the code in question, it seems to me, that
islpci_qentry_t might need to have the u32's changed so something like
'unsigned long'/dma_addr_t/whatever is more appropriate, while keeping
in mind that the device on the other side of the pci bus can only be
passed 32bit wide bus addresses;
thus ->dev_address should be of type dma_addr_t (and one should make
sure the values fit lossless in 32bit words...)
while ->host_address might be changed to 'unsigned long' (or maybe
better 'void *')
regards,
--=20
Herbert Valerio Riedel / Phone: (EUROPE) +43-1-58801-18840
Email: hvr@hvrlab.org / Finger hvr@gnu.org for GnuPG Public Key
GnuPG Key Fingerprint: 7BB9 2D6C D485 CE64 4748 5F65 4981 E064 883F 4142
--=-zIGoEKIGzWK46RW2Dl9B
Content-Type: application/pgp-signature; name=signature.asc
Content-Description: This is a digitally signed message part
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)
iD8DBQBACWcjSYHgZIg/QUIRAld/AJ9c+45vKxhKJYUkeYaCExXAr3CsDACfZFoC
kktJWAhs0FloHqC+/3bTKhU=
=8Vx/
-----END PGP SIGNATURE-----
--=-zIGoEKIGzWK46RW2Dl9B--