Re: [PATCH v1 6/8] zorro: Simplify storing pointers in device id struct
From: Max Staudt
Date: Thu May 28 2026 - 03:53:59 EST
On 5/26/26 11:17 PM, Uwe Kleine-König (The Capable Hub) wrote:
Technically it is fine (on all current Linux architectures) to store a
pointer in an unsigned long variable. However this needs explicit
casting which is an easy source for type mismatches.
By replacing the plain unsigned long .driver_data in struct
zorro_device_id by an anonymous union, most of the casting can be
dropped. There is still some implicit casting involved (between a void *
and a driver specific pointer type), but that's better than the approach
to store a pointer in an unsigned long variable as this doesn't lose the
information that the data being pointed to is const.
All users of struct zorro_device_id are initialized in a way that is
compatible with the new definition, so no adaptions are needed there.
Signed-off-by: Uwe Kleine-König (The Capable Hub) <u.kleine-koenig@xxxxxxxxxxxx>
Thanks Uwe!
Reviewed-by: Max Staudt <max@xxxxxxxxx>