[PATCH 1/2 v2] staging: comedi: new adl_pci7x3x driver

H Hartley Sweeten hartleys at visionengravers.com
Tue Aug 14 18:23:37 UTC 2012


On Tuesday, August 14, 2012 1:59 AM, Ian Abbott wrote:
> On 2012-08-14 02:36, H Hartley Sweeten wrote:
>> On Monday, August 13, 2012 6:30 PM, Greg KH wrote:
>>> On Fri, Aug 03, 2012 at 10:28:18AM -0700, H Hartley Sweeten wrote:
>>>> Currently the ADLink PCI-7230 and PCI-7432 Isolated Digital
>>>> I/O Boards are supported using two drivers (adl_pci7230 and
>>>> adl_pci7432). These drivers are very similar and only differ
>>>> in the total number of di/do channels provided.
>>>>
>>>> This driver combines the support for both boards into one
>>>> common driver. In addition, it adds PCI PnP support for the
>>>> other boards in the ADLink PCI-723x and PCI-743x series.
>>>>
>>>> This driver only supports the comedi PCI auto config attach
>>>> mechanism. The legacy attach using the comedi_config utility
>>>> is not supported or required by this driver.
>>>
>>> I now get the following build warnings on my box with this patch
>>> applied:
>>>
>>> drivers/staging/comedi/drivers/adl_pci7x3x.c: In function ‘adl_pci7x3x_do_insn_bits’:
>>> drivers/staging/comedi/drivers/adl_pci7x3x.c:124:21: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
>>> drivers/staging/comedi/drivers/adl_pci7x3x.c: In function ‘adl_pci7x3x_di_insn_bits’:
>>> drivers/staging/comedi/drivers/adl_pci7x3x.c:150:21: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
>>
>> Hmm.. My build does not have the [-Wpointer-to-int-cast] for some reason
>> so I didn't see this. I was trying to save having to allocate any private data but
>> I guess it's cleaner if I do.  BTW, there is another comedi driver that does this
>> but I can't recall which one of the top of my head...
>
> You could always cast to unsigned long as that is the same size as a 
> pointer, at least in the Linux kernel.

Ah, so it's a 32/64-bit issue... My build setup is only 32-bit that's why I
didn't see it.

The acl7225b driver is the other one that passes the register offset
in the s->private pointer. That one does cast the pointer to an
unsigned long.

I assume this will fix the warning in the adl_pci7x3x driver. Patch
coming shortly.

Regards,
Hartley



More information about the devel mailing list