Re: [PATCH v2] staging: gpib: Fix i386 build issue

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Dec 02, 2024 at 09:48:49AM -0800, Guenter Roeck wrote:
> On 12/2/24 09:33, Dave Penkler wrote:
> > Both drivers cast resource_type_t to void * causing the build to fail.
> > 
> > With CONFIG_X86_PAE enabled the resource_size_t type is a 64bit unsigned int
> > which cannot be cast to a 32 bit pointer.
> > 
> > Use ioremap() instead of pci_resource_start()
> > 
> > Reported_by: Guenter Roeck <linux@xxxxxxxxxxxx>
> > Link: https://lore.kernel.org/all/f10e976e-7a04-4454-b38d-39cd18f142da@xxxxxxxxxxxx/
> > Fixes: bb1bd92fa0f2 ("staging: gpib: Add ines GPIB driver")
> > Fixes: e1339245eba3 ("staging: gpib: Add Computer Equipment Corporation GPIB driver")
> > 
> > Signed-off-by: Dave Penkler <dpenkler@xxxxxxxxx>
> > ---
> > v1 -> v2 changed pci_resource_start to pci_resource_len for second parameter of ioremap
> > 
> Sorry, there are some more.
> 
> drivers/staging/gpib/tnt4882/tnt4882_gpib.c: In function ???ni_isa_attach_common???:
> drivers/staging/gpib/tnt4882/tnt4882_gpib.c:1430:26: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
> 
> drivers/staging/gpib/cb7210/cb7210.c: In function 'cb_pci_attach':
> drivers/staging/gpib/cb7210/cb7210.c:974:36: error: cast to pointer from integer of different size
> 
> Not sure if that really fixes the problem though, since there is other code
> which maps the void * back to phys_addr_t (or, rather, to unsigned long).
> It might be better to work around the problem for now by disabling support
> for platforms where sizeof(phys_addr_t) > sizeof(void *).

I think it is dealt with in v3.
- Dave




[Index of Archives]     [Linux Driver Development]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux