The boards supported by this driver all have digital outputs.
Remove the test for it.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The boards supported by this driver support a timer subdevice.
Remove the tests for it.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The boards supported by this driver support dma. Remove the tests
for it.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The boards supported by this driver do not have an eeprom. Remove the
need for the devpriv->s_EeParameters values by just using the values
from the boardinfo directly.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The boards supported by this driver do not have ttl i/o. Remove
the unnecessary code to initialize the subdevice.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The boards supported by this driver do not have an eeprom. Remove
the unnecessary code to handle it.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
None of the addi-data drivers that use the "common" code in addi_common.c
support dma. Remove the code that sets up the dma and allocates the buffers
in the attach and the code that frees the buffers in the detach.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The addi_apci_3120 driver is the only addi-data driver that supports
dma.
Copy the code in addi_common.c to this driver and remove the #include
that caused addi_common.c to be compiled with this driver. This will
allow removing the special handling for allocating and freeing the
dma buffers in the common code.
Rename the attach_pci and detach functions so they have namespace
associated with this driver.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Now that the apci3001 and apci3120 boards are merged we can remove
this unnecessary define.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The addi_apci_3120 and addi_apci_3001 drivers share the same low-level
board support code (hwdrv_apci3120). Merge the boardinfo and PCI_DEVICE
information from the addi_apci_3001 driver into the addi_apci_3120
driver and delete then delete the addi_apci_3001 driver.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Usual mixed bag of cleanups and minor improvements including
one reversion for a patch in the previous series.
* adt7310 and adt7410 drivers merged into one.
* Revert use devm_kcalloc in at91_adc (because it doesn't exist)
* unlocking fix for error path in the ad5449
* isl29018 suspend and resume support.
* improved pseudo floating point parsing for info_mask write
attributes (and hence into write_raw). Reject some messed up
strings.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (GNU/Linux)
iQIcBAABAgAGBQJQk57+AAoJEFSFNJnE9BaIPi0P/RFo86FpRs4RKqgpaHdnhv0l
w+2BFn0oHyGSGT0Kt2joc3d2F/Km0v5qZHfn8at7AW7AG78yKb9bghlOhyxnMEri
jaGRzkONAZg9eDU1mE49i1ujpr9KbkIzDX69k/PgyPeX2sIEqBSlpzq+VbED6CMb
PqYMKeDLpfaIykRMCFwyQ1xCDBv0huWyfCfeAiU5AJzyO2gRmbSMoHOo5i5NNBLS
xJUIphoe8hpcYalVVuNQqEE/GeFHyhWurCGvx5Q7GX3YMPUYOS3B+Rs8NOHDyjiT
WQJ2WW8v+4PUV7ZzOugZUW4pyyL7xGWhaY5BsX9TdflH9BjUStNE+/6lMNOTHBiE
CTtQCHZ86d72I846A5EqIYbf4zMNH9x1pqMgZz2PbLyWRlCJDpJtaJMmU6k1QTPE
0NdmkaKvnN59qrCIj5NO93mVIwgqFc42Z02qDoiynpBsABH9D2G2Gq3yX77MbELn
SvyiBdtJUnAILRMr9T6ik7r91rf7jRvmAWRsC9eb1VHL1skvHJwGBfP1OJ4XLw0G
r4x4MxfRG16gr812w3D+j1AyqQ+QLcVZrYwvNGrRzXT4NmG1bDrp+TeURj3gPMOR
pFFNdl5DOnT3plpLqwD8uoEQDrz986fDQ8BdZAdPq0EA1F0clE4wEeHZzFmx9iJP
R2mhKrp7qUuzaF5znT+Q
=bfqU
-----END PGP SIGNATURE-----
Merge tag 'iio-for-3.8b' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next
Second round of new IIO drivers and cleanups for the 3.8 cycle.
Usual mixed bag of cleanups and minor improvements including
one reversion for a patch in the previous series.
* adt7310 and adt7410 drivers merged into one.
* Revert use devm_kcalloc in at91_adc (because it doesn't exist)
* unlocking fix for error path in the ad5449
* isl29018 suspend and resume support.
* improved pseudo floating point parsing for info_mask write
attributes (and hence into write_raw). Reject some messed up
strings.
The driver leaves the device in power-down state anyway,
so there is nothing to do on suspend.
On resume, we just have to make sure the range and ADC
values are updated in the device since it may have been
powered down in suspend.
Signed-off-by: Bryan Freed <bfreed@chromium.org>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
If we encounter a leading '+' sign just skip over it.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
When parsing a fixed point number IIO stops parsing the string once it has
reached the last requested decimal place. This means that the remainder of the
string is silently accepted regardless, of whether it is part of a valid number
or not. This patch modifies the code to scan the whole string and only accept
valid numbers. Since fract_mult is 0 after the last decimal place any digit that
may follows won't affect the result.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Currently when parsing a fix-point number we silently skip any additional '.'
found in the string. E.g. '1.2.3.4' gets parsed as '1.234'. This patch
disallows this and returns an error if more than one '.' is encountered.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
remove unnecessary semicolon from the macro definition
Signed-off-by: Kumar Amit Mehta <gmate.amit@gmail.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Follow coding style for whitespace, operator placement, use of braces,
etc.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reformat the comment used to describe the Comedi driver to use the usual
block comment style.
Update the information reflecting the fact that the driver no longer
supports manual attachment of devices via the `COMEDI_DEVCONFIG` ioctl
and `attach()` method.
Also, in the instructions indicating where to put the firmware file,
mention the expected name of the file since the driver requests the
firmware file by name.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This driver seems to generate a lot of printk output every time the
driver polls the device. This may have been useful during development
but shouldn't be used in production. Just get rid of it all.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The `pci_enabled` member of `struct jr3_pci_dev_private` is used to
indicate whether the call to `comedi_pci_enable()` was successful. The
'detach' routine `jr3_pci_detach()` uses this to decide whether to call
`comedi_pci_disable()`. The `iobase` member of `struct comedi_device`
is not used by this driver so it can be used for the same purpose.
Remove the `pci_enabled` member and use the spare `dev->iobase` instead.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The `pci_dev` member of `struct jr3_pci_dev_private` is used to point to
the `struct pci_dev`. This is redundant as the `struct comedi_device`
already has a pointer to the `struct device` within the `struct pci_dev`
and there is a convenient inline function, `comedi_to_pci_dev(dev)` that
returns a pointer to the `struct pci_dev`.
Remove the redundant `pci_dev` member and use alternate ways to get at
the `struct pci_dev`.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The local variable `card` in `jr3_pci_auto_attach()` is used to point to
the PCI device `struct pci_dev`. Rename it to `pcidev`.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This driver does not need to support manual attachment of supported PCI
devices. Replace the `attach()` hook (`jr3_pci_attach()`) with an
`auto_attach()` hook (`jr3_pci_auto_attach()`). This will be called via
`comedi_pci_auto_config()` at PCI probe time.
This driver no longer increments the PCI reference count during
attachment, so remove the call to `pci_dev_put()` when detaching the
device.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This driver is missing the MODULE_* information. Add the standard
comedi info.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This define exists in hwdrv_APCI1710.c, where it's actually used.
Remove the duplicate define.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
These values in the boardinfor were used in the common addi-data
attach code to work out use of the PCI bars. Since this driver
has a localized attach we already know the use of the bars so
this information in the boardinfo is unnecessary.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This driver does not have an eeprom and does not use the data
saved in devpriv->s_EeParameters. Remove the code that initalizes
the eeprom parameters.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This driver does not use dma. Remove the code that sets up the
dma and allocates the buffers in the attach and the code that
frees the buffers in the detach.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The apci1710 board does not have an eeprom. Remove the unnecessary
code to handle it.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This driver is now separate from the "common" code used with the
addi-data drivers. There is no need to use i_ADDI_Reset() to call
the correct "reset" function.
Remove the i_ADDI_Reset() function and the 'reset' pointer to the
real function from the boardinfo and just call the function directly
where needed.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This driver uses the comedi PCI auto attach mechanism and the comedi
core does not use the boardinfo during the attach.
Now that this driver has the attach separated from addi_common.c we
can remove passing the boardinfo in the comedi_driver and cleanup
the code that finds the boardinfo.
Also, rename addi_find_boardinfo() so it has namespace associated
with this driver.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Now that the addi_apci_1710 driver is not using addi_common.c we can
remove the CONFIG_APCI_1710 define and all the special handling for
the initialization of it's subdevices.
Also remove the i_ADDIDATA_InsnReadEeprom() function from the
addi_apci_1710 driver. This board does not have an eeprom subdevice
and does not use this function.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This addi-data driver uses a private function to initialize all
the subdevices during the attach of the board.
Copy the code in addi_common.c to this driver and remove the #include
that caused addi_common.c to be compiled with this driver. This will
allow removing the special handling for the apci1710 board in the
common code.
Rename the attach_pci and detach functions so they have namespace
associated with this driver.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reformat the comment used to describe the Comedi driver to use the usual
block comment style.
Update the information reflecting the fact that the driver no longer
supports manual attachment of devices via the `COMEDI_DEVCONFIG` ioctl.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Change the `DEBUG_PRINT(format, args...)` macro used by this module to
use either `pr_debug()` (if macro `HPDI_DEBUG` is defined) or
`no_printk()` instead of `printk()` or nothing.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
When requesting PCI region resources and IRQ, use the board name as the
resource owner string instead of the driver name.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Change the type of the `name` member of `struct hpdi_board` from `char
*` to `const char *` as it should not be modifiable.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The `board(dev)` function just casts `dev->board_ptr` to a pointer to
the private data type `struct hpdi_private` and returns it. It's only
called from one function: `hpdi_auto_attach()`.
Remove `board()` and use a local variable to point to the `struct
hpdi_private` data structure.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
In `struct hpdi_private`, the `plx9080_phys_iobase` and
`hpdi_phys_iobase` hold the physical memory addresses from the PCI
BARs used by this driver. The physical addresses are only really needed
when ioremapping the resources when the device is being attached by
`hpdi_auto_attach()`. A non-zero value of the `hpdi_phys_iobase` is
also used to indicate that a call to `comedi_pci_enable()` was
successful so that `comedi_pci_disable()` should be called when the
device is detached by `hpdi_detach()`.
Remove the `plx9080_phys_iobase` and `hpdi_phys_iobase` members and use
`dev->iobase` as a flag to indicate whether `comedi_pci_disable()` needs
to be called by `hpdi_detach()`.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
The `hw_dev` member of `struct hpdi_private` is used to point to the
`struct pci_dev`. This is redundant as the `struct comedi_device`
already has a pointer to the `struct device` within the `struct pci_dev`
and there is a convenient inline function, `comedi_to_pci_dev(dev)` that
returns a pointer to the `struct pci_dev`.
Remove the redundant `hw_dev` member and use alternate ways to get at
the `struct pci_dev`.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This driver does not need to support manual attachment of supported PCI
devices. Replace the `attach()` hook (`hpdi_attach()`) with an
`auto_attach()` hook (`hpdi_auto_attach()`). This will be called via
`comedi_pci_auto_config()` at PCI probe time.
This driver no longer increments the PCI reference during attachment, so
remove the call to `pci_dev_put()` when detaching the device.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
there are function definitions missing for these prototypes, so
remove all 3 function protos.
Signed-off-by: Devendra Naga <devendra.aaru@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
these function prototypes are missing the function definition,
remove them all.
Signed-off-by: Devendra Naga <devendra.aaru@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
the function definitions are missing for these prototypes, so remove all
these.
Signed-off-by: Devendra Naga <devendra.aaru@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sme_ap_config misses a check of the return of the sme_wait_for_reply
as all other functions do here, for the return of sme_wait_for_reply
add the check and fail if it returns other than 0.
Signed-off-by: Devendra Naga <devendra.aaru@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
remove the braces around single statement if blocks
Signed-off-by: Devendra Naga <devendra.aaru@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
replace spaces at start of line with tabs in sme_mgt_tspec
Signed-off-by: Devendra Naga <devendra.aaru@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
replace spaces at the beginning of the line with tabs in sme_mgt_packet_filter_set
Signed-off-by: Devendra Naga <devendra.aaru@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
replace spaces with tabs at the start of line
Signed-off-by: Devendra Naga <devendra.aaru@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
remove braces to single statement if blocks
Signed-off-by: Devendra Naga <devendra.aaru@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>