pandora-kernel.git
12 years agostaging: comedi: amplc_pci230: Remove forward declarations 1
Ian Abbott [Fri, 1 Jun 2012 16:31:42 +0000 (17:31 +0100)]
staging: comedi: amplc_pci230: Remove forward declarations 1

Remove the redundant forward function declarations.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pci230: Add attach_pci() hook
Ian Abbott [Fri, 1 Jun 2012 16:31:41 +0000 (17:31 +0100)]
staging: comedi: amplc_pci230: Add attach_pci() hook

Implement the attach_pci() hook as function pci230_attach_pci().  This
is called by comedi_pci_auto_config() in preference to the old attach()
hook (implemented by pci230_attach() and still required for "manual"
configuration of comedi devices).  The advantage of the attach_pci()
hook is that it avoids searching for the PCI device.

Refactor pci230_attach() and factor out code common to pci230_attach()
and pci230_attach_pci() into new functions pci230_match_pci_board(),
pci230_find_pci_board(), pci230_find_pci(), pci230_alloc_private() and
pci230_attach_common().

Finally, move pci230_attach() and pci230_detach() along with all the new
functions towards the bottom of the file as it makes the patch much
cleaner (though longer) and I plan to move things around soon to get
rid of the remaining forward references.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pci230: Remove thisboard and devpriv macros
Ian Abbott [Fri, 1 Jun 2012 16:31:40 +0000 (17:31 +0100)]
staging: comedi: amplc_pci230: Remove thisboard and devpriv macros

The 'thisboard' and 'devpriv' macros rely on a local variable having a
specific name and yield pointers derived from that local variable.
Replace the macros with local variables wherever they occur.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pci230: Replace printk calls
Ian Abbott [Fri, 1 Jun 2012 16:31:39 +0000 (17:31 +0100)]
staging: comedi: amplc_pci230: Replace printk calls

Replace the printk calls with dev_info, dev_err, etc.

A load of DPRINTK() macro calls which may result in printk() calls
have been left alone to be tackled en masse at a later date.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pci224: Remove thisboard and devpriv macros
Ian Abbott [Thu, 31 May 2012 15:02:05 +0000 (16:02 +0100)]
staging: comedi: amplc_pci224: Remove thisboard and devpriv macros

The 'thisboard' and 'devpriv' macros rely on a local variable having a
specific name and yield pointers derived from that local variable.
Replace the macros with local variables wherever they occur.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pci224: Change return type of pci224_find_pci()
Ian Abbott [Thu, 31 May 2012 15:02:04 +0000 (16:02 +0100)]
staging: comedi: amplc_pci224: Change return type of pci224_find_pci()

pci224_find_pci() finds a supported PCI device, returning 0 on success
or -EIO on failure and returning the pointer to the PCI device via a
struct pci_dev ** parameter.  Change it to return the struct pci_dev *
on success or NULL on failure.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pci224: Replace printk calls
Ian Abbott [Thu, 31 May 2012 15:02:03 +0000 (16:02 +0100)]
staging: comedi: amplc_pci224: Replace printk calls

Replace the printk calls with dev_info, dev_err, etc.  There were some
consecutive printk calls without newlines which now scnprintf into a
temporary buffer and this bit of code has been factored out into new
function pci224_report_attach().

A couple of DPRINTK() macro calls which may result in printk() calls
have been left alone to be tackled en masse at a later date.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pci224: __devinit pci224_attach_pci()
Ian Abbott [Thu, 31 May 2012 15:02:02 +0000 (16:02 +0100)]
staging: comedi: amplc_pci224: __devinit pci224_attach_pci()

pci224_attach_pci() is only called during PCI probe, indirectly via
comedi_pci_auto_config(), so it can be marked __devinit.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_dio200: Add attach_pci() hook
Ian Abbott [Thu, 31 May 2012 13:08:37 +0000 (14:08 +0100)]
staging: comedi: amplc_dio200: Add attach_pci() hook

Implement the attach_pci() hook as function dio200_attach_pci().  This
is called by comedi_pci_auto_config() in preference to the old attach()
hook (implemented by dio200_attach()) and avoids searching for the
probed PCI device.

Factor out code common to dio200_find_pci() and dio200_attach_pci() into
new function dio200_find_pci_board().  Factor out most code common to
dio200_attach() and dio200_attach_pci() into new functions
dio200_pci_common_attach() and dio200_common_attach().

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_dio200: Remove thisboard, thislayout and devpriv macros
Ian Abbott [Thu, 31 May 2012 13:08:36 +0000 (14:08 +0100)]
staging: comedi: amplc_dio200: Remove thisboard, thislayout and devpriv macros

The 'thisboard', 'thislayout' and 'devpriv' macros rely on a local
variable having a specific name and yield pointers derived from that
local variable.  Replace the macros with local variables wherever they
occur.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_dio200: Change return type of dio200_find_pci()
Ian Abbott [Thu, 31 May 2012 13:08:35 +0000 (14:08 +0100)]
staging: comedi: amplc_dio200: Change return type of dio200_find_pci()

dio200_find_pci() finds a supported PCI device, returning 0 on success
or -EIO on failure and returning the pointer to the PCI device via a
struct pci_dev ** parameter.  Change it to return the struct pci_dev *
on success or NULL on failure.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_dio200: Replace printk calls
Ian Abbott [Thu, 31 May 2012 13:08:34 +0000 (14:08 +0100)]
staging: comedi: amplc_dio200: Replace printk calls

Replace the printk calls with dev_info, dev_err, etc.  There were some
consecutive printk calls without newlines which now scnprintf into a
temporary buffer and this bit of code has been factored out into new
function dio200_report_attach().

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_dio200: Remove forward function declarations
Ian Abbott [Thu, 31 May 2012 13:08:33 +0000 (14:08 +0100)]
staging: comedi: amplc_dio200: Remove forward function declarations

Moved some functions and variables to avoid forward declarations.  Moved
PCI table closer to the struct pci_driver that refers to it.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_dio200: Use module_comedi_{pci,}_driver()
Ian Abbott [Thu, 31 May 2012 13:08:32 +0000 (14:08 +0100)]
staging: comedi: amplc_dio200: Use module_comedi_{pci,}_driver()

If PCI boards are supported, use the module_comedi_pci_driver() macro to
register the module as a comedi driver and a PCI driver.  Otherwise,
only ISA boards are supported so use the module_comedi_driver() macro to
register the module as a comedi driver.

Renamed 'driver_amplc_dio200' to 'amplc_dio200_driver' and removed
'driver_' prefix from PCI related functions and variables, purely for
aesthetic reasons.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_dio200: Use IS_ENABLED()
Ian Abbott [Thu, 31 May 2012 13:08:31 +0000 (14:08 +0100)]
staging: comedi: amplc_dio200: Use IS_ENABLED()

Change conditional compilation on kernel options to use the IS_ENABLED()
macro.  Remove most of the #ifdef lines and add extra if
(IS_ENABLED(xxx)) tests so the compiler can remove unreachable code.
The pci_driver stuff and device table and some of the static const data
is still conditionally compiled.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc263: Add attach_pci() hook
Ian Abbott [Wed, 30 May 2012 18:04:45 +0000 (19:04 +0100)]
staging: comedi: amplc_pc263: Add attach_pci() hook

Implement the attach_pci() hook as function pc263_attach_pci().  This is
called bu comedi_pci_auto_config() in preference to the old attach()
hook (implemented by pc263_attach()) and avoids searching for the probed
PCI device.

Factor out code common to pc263_find_pci() and pc263_attach_pci() into
new function pc263_find_pci_board().  Factor out most code common to
pc263_attach() and pc263_attach_pci() into new functions
pc263_pci_common_attach() and pc263_common_attach().

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc263: Remove thisboard and devpriv macros
Ian Abbott [Wed, 30 May 2012 18:04:44 +0000 (19:04 +0100)]
staging: comedi: amplc_pc263: Remove thisboard and devpriv macros

The 'thisboard' and 'devpriv' macros rely on a local variable having a
specific name and yield pointers derived from that local variable.
Replace the macros with local variables wherever they occur.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc263: Change return type of pc263_find_pci()
Ian Abbott [Wed, 30 May 2012 18:04:43 +0000 (19:04 +0100)]
staging: comedi: amplc_pc263: Change return type of pc263_find_pci()

pc263_find_pci() finds a supported PCI device, returning 0 on success
or -EIO on failure and returning the pointer to the PCI device via a
struct pci_dev ** parameter.  Change it to return the struct pci_dev *
on success or NULL on failure.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc263: Remove unused fancy_name
Ian Abbott [Wed, 30 May 2012 18:04:42 +0000 (19:04 +0100)]
staging: comedi: amplc_pc263: Remove unused fancy_name

Remove fancy_name member from struct pc263_board.  It is initialized in
pc263_boards[] but not used anywhere else.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc263: Replace printk calls
Ian Abbott [Wed, 30 May 2012 18:04:41 +0000 (19:04 +0100)]
staging: comedi: amplc_pc263: Replace printk calls

Replace the printk calls with dev_info, dev_err, etc.  There were some
consecutive printk calls without newlines which now snprintf into a
temporary buffer and this bit of code has been factored out into new
function pc263_report_attach().

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc263: Remove forward function declarations
Ian Abbott [Wed, 30 May 2012 18:04:40 +0000 (19:04 +0100)]
staging: comedi: amplc_pc263: Remove forward function declarations

Moved some functions and variables to avoid forward declarations.  Moved
PCI table closer to the struct pci_driver that refers to it.

Also removed some useless comments from pc263_attach().

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc263: Use module_comedi_{pci, }_driver()
Ian Abbott [Wed, 30 May 2012 18:04:39 +0000 (19:04 +0100)]
staging: comedi: amplc_pc263: Use module_comedi_{pci, }_driver()

If PCI boards are supported, use the module_comedi_pci_driver() macro to
register the module as a comedi driver and a PCI driver.  Otherwise,
only ISA boards are supported so use the module_comedi_driver() macro to
register the module as a comedi driver.

Renamed 'driver_amplc_pc263' to 'amplc_pc263_driver' and removed
'driver_' prefix from PCI related functions and variables, purely for
aesthetic reasons.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc263: Use IS_ENABLED()
Ian Abbott [Wed, 30 May 2012 18:04:38 +0000 (19:04 +0100)]
staging: comedi: amplc_pc263: Use IS_ENABLED()

Change conditional compilation on kernel options to use the IS_ENABLED()
macro.  Remove most of the #ifdef lines and add extra if
(IS_ENABLED(xxx)) tests so the compiler can remove unreachable code.
The pci_driver stuff and device table is still conditionally compiled.

In pc263_attach() move the call to alloc_private() as it is only used
for PCI devices.  (In pc263_detach(), for ISA devices a non-zero
dev->iobase means the I/O region needs releasing.)

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc263: Add a missing case
Ian Abbott [Wed, 30 May 2012 18:04:37 +0000 (19:04 +0100)]
staging: comedi: amplc_pc263: Add a missing case

There is a missing case label in the switch statement that prints out
details of the attached device in pc263_attach().  Fix it.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc263: Change DIO subdevice to DO
Ian Abbott [Wed, 30 May 2012 18:04:36 +0000 (19:04 +0100)]
staging: comedi: amplc_pc263: Change DIO subdevice to DO

This is a relay output card with no inputs.  It's single subdevice is
currently a digital input/output subdevice (COMEDI_SUBD_DIO).  It should
really be a digital output subdevice (COMEDI_SUBD_DO).  Change the
subdevice type and remove the insn_config() hook as it doesn't do
anything useful.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc263: Correct initial state
Ian Abbott [Wed, 30 May 2012 18:04:35 +0000 (19:04 +0100)]
staging: comedi: amplc_pc263: Correct initial state

The initial state of the relays is being read incorrectly.  It's reading
a single 8-bit port twice, but should be reading two consecutive 8-bit
ports.  Fix it.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc236: Remove most #if lines
Ian Abbott [Wed, 30 May 2012 13:37:52 +0000 (14:37 +0100)]
staging: comedi: amplc_pc236: Remove most #if lines

Remove most of the #if IS_ENABLED(xxx) lines, but add extra if
(IS_ENABLED(xxx)) tests so the compiler can remove unreachable code.
The pci_driver stuff and device table is still conditionally compiled.

Also made pc236_find_pci() static as it was accidentally made non-static
by an earlier patch, so the compiler wouldn't remove it when it was
unreachable.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc236: Add attach_pci() hook
Ian Abbott [Tue, 29 May 2012 13:49:35 +0000 (14:49 +0100)]
staging: comedi: amplc_pc236: Add attach_pci() hook

Implement the attach_pci() hook as function pc236_attach_pci().  This is
called bu comedi_pci_auto_config() in preference to the old attach()
hook (implemented by pc236_attach()) and avoids searching for the probed
PCI device.

Factor out code common to pc236_find_pci() and pc236_attach_pci() into
new function pc236_find_pci_board().  Factor out most code common to
pc236_attach() and pc236_attach_pci() into new functions
pc236_pci_common_attach() and pc236_common_attach().

Also #if out member 'devid' from struct pc236_board unless PCI boards
are supported as it is not used for ISA boards.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc236: Remove thisboard and devpriv macros
Ian Abbott [Tue, 29 May 2012 13:49:34 +0000 (14:49 +0100)]
staging: comedi: amplc_pc236: Remove thisboard and devpriv macros

The 'thisboard' and 'devpriv' macros rely on a local variable having a
specific name and yield pointers derived from that local variable.
Replace the macros with local variables wherever they occur.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc236: Change return type of pc236_find_pci()
Ian Abbott [Tue, 29 May 2012 13:49:33 +0000 (14:49 +0100)]
staging: comedi: amplc_pc236: Change return type of pc236_find_pci()

pc236_find_pci() finds a supported PCI device, returning 0 on success
or -EIO on failure and returning the pointer to the PCI device via a
struct pci_dev ** parameter.  Change it to return the struct pci_dev *
on success or NULL on failure.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc236: Remove unused fancy_name
Ian Abbott [Tue, 29 May 2012 13:49:32 +0000 (14:49 +0100)]
staging: comedi: amplc_pc236: Remove unused fancy_name

Remove fancy_name member from struct pc236_board.  It is initialized in
pc235_boards[] but not used anywhere else.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc236: Replace printk calls
Ian Abbott [Tue, 29 May 2012 13:49:31 +0000 (14:49 +0100)]
staging: comedi: amplc_pc236: Replace printk calls

Replace the printk calls with dev_info, dev_err, etc.  There were some
consecutive printk calls without newlines which now scnprintf into a
temporary buffer and this bit of code has been factored out into new
function pc236_report_attach().

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc236: Remove forward function declarations
Ian Abbott [Tue, 29 May 2012 13:49:30 +0000 (14:49 +0100)]
staging: comedi: amplc_pc236: Remove forward function declarations

Moved some functions and variables to avoid forward declarations.  Moved
PCI table closer to the struct pci_driver that refers to it.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc236: Use module_comedi_{pci,}_driver()
Ian Abbott [Tue, 29 May 2012 13:49:29 +0000 (14:49 +0100)]
staging: comedi: amplc_pc236: Use module_comedi_{pci,}_driver()

If PCI boards are supported, use the module_comedi_pci_driver() macro to
register the module as a comedi driver and a PCI driver.  Otherwise,
only ISA boards are supported so use the module_comedi_driver() macro to
register the module as a comedi driver.

Renamed 'driver_amplc_pc236' to 'amplc_pc236_driver' and removed
'driver_' prefix from PCI related functions and variables, purely for
aesthetic reasons.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: amplc_pc236: Use IS_ENABLED()
Ian Abbott [Tue, 29 May 2012 13:49:28 +0000 (14:49 +0100)]
staging: comedi: amplc_pc236: Use IS_ENABLED()

Change conditional compilation on kernel config options to use the
IS_ENABLED() macro.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: drivers.c: remove unused inline functions
H Hartley Sweeten [Thu, 31 May 2012 20:56:28 +0000 (13:56 -0700)]
staging: comedi: drivers.c: remove unused inline functions

Remove the inline functions uvirt_to_kva and kvirt_to_kva, they
are not referenced by any of the drivers.c code.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: Make COMEDI_FC a hidden Kconfig option
H Hartley Sweeten [Tue, 29 May 2012 22:30:18 +0000 (15:30 -0700)]
staging: comedi: Make COMEDI_FC a hidden Kconfig option

The COMEDI_FC Kconfig option is selected by the relevant drivers
when needed. Since it only contains shared functions, selecting
it manually serves no purpose. Just make it a hidden selection.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: cb_pcidas64: Fixed coding style errors
Dimitrios Semitsoglou-Tsiapos [Mon, 28 May 2012 21:51:44 +0000 (00:51 +0300)]
staging: comedi: cb_pcidas64: Fixed coding style errors

Fixed a few coding style errors in cb_pcidas64.

Signed-off-by: Dimitrios Semitsoglou-Tsiapos <dimitrios.semitsoglou@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: Fix typo in comedi
Masanari Iida [Sat, 26 May 2012 16:45:19 +0000 (01:45 +0900)]
staging: comedi: Fix typo in comedi

Correct spelling typo in comments within staging/comedi.

Signed-off-by: Masanari Iida <standby24x7@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: das08: Add attach_pci() hook
Ian Abbott [Thu, 24 May 2012 16:27:18 +0000 (17:27 +0100)]
staging: comedi: das08: Add attach_pci() hook

Implement the attach_pci() hook.  This is called by
comedi_pci_auto_config() in preference to the old attach() hook and
avoids searching for the probed PCI device.  Factor out some common code
used by both the attach() and attach_pci() hooks into a couple of new
functions, das08_pci_attach_common() and das08_find_pci_board().

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: das08: Support multiple PCI card types in future
Ian Abbott [Thu, 24 May 2012 16:27:17 +0000 (17:27 +0100)]
staging: comedi: das08: Support multiple PCI card types in future

Rename the existing board entry named "das08" for the PCI-DAS08 board to
"pci-das08".  Add a new wildcard board entry called "das08" that will
match any supported PCI board.  If 'dev->board_ptr' points to the
wildcard board entry in the ->attach() routine, it will be replaced with
a supported PCI board entry if there are any (taking into account the
bus and slot specified by the device config options passed in to the
function).

Split the code that finds a matching PCI device into a new function
das08_find_pci().

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: das08: Remove thisboard and devpriv macros
Ian Abbott [Thu, 24 May 2012 16:27:16 +0000 (17:27 +0100)]
staging: comedi: das08: Remove thisboard and devpriv macros

The 'thisboard' and 'devpriv' macros rely on a local variable having a
specific name and yield pointers derived from that local variable.
Replace the macros with local variables wherever they occur.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: das08: Replace printk calls
Ian Abbott [Thu, 24 May 2012 16:27:15 +0000 (17:27 +0100)]
staging: comedi: das08: Replace printk calls

Replace the printk calls with dev_info, dev_err, etc.  Some of the
printk strings were missing newlines on the end.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: das08: Remove forward function declarations.
Ian Abbott [Thu, 24 May 2012 16:27:14 +0000 (17:27 +0100)]
staging: comedi: das08: Remove forward function declarations.

Moved some functions to avoid forward declarations.  Moved a few other
bits at the same time to keep EXPORT_SYMBOL{,_GPL}() close to the symbol
being exported, and PCI table close to the code that refers to it.

Changed whitespace in das08_board[] and das08_cs_board[] initializers.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: das08: Use module_comedi_{pci_, }driver
Ian Abbott [Thu, 24 May 2012 16:27:13 +0000 (17:27 +0100)]
staging: comedi: das08: Use module_comedi_{pci_, }driver

If PCI boards are supported, use the module_comedi_pci_driver() macro to
register the module as a comedi driver and a PCI driver.  Otherwise, if
ISA (or PC/104) boards are supported, use the module_comedi_driver()
macro to register the module as a comedi driver.  Otherwise, this is
only a helper module for an external comedi driver (das08_cs).

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: das08: Move I/O resource (de)allocation.
Ian Abbott [Thu, 24 May 2012 16:27:12 +0000 (17:27 +0100)]
staging: comedi: das08: Move I/O resource (de)allocation.

Don't deal with allocation and deallocation of I/O resources and PCI
enabling/disabling in the exported functions das08_common_attach() and
das08_common_detach().  Do it in das08_attach() and new function
das08_detach() (which is now the comedi detach() hook for this driver).

This keeps things more symmetrical.  Callers of das08_common_attach()
and das08_common_detach() are now responsible for allocation of their
own I/O resources and enabling of their own devices.  The only external
caller of das08_common_attach() and das08_common_detach() is the
das08_cs module, which looks after its own I/O resources.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: das08: Use IS_ENABLED()
Ian Abbott [Thu, 24 May 2012 16:27:11 +0000 (17:27 +0100)]
staging: comedi: das08: Use IS_ENABLED()

Change conditional compilation on kernel config options to use the
IS_ENABLED() macro.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: das1800: complete the refactor to remove all forward declarations
H Hartley Sweeten [Thu, 24 May 2012 01:19:17 +0000 (18:19 -0700)]
staging: comedi: das1800: complete the refactor to remove all forward declarations

Complete the refactor of the das1800 driver to remove all the
forward declarations.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: rtd520 complete the refactor to remove all forward declarations
H Hartley Sweeten [Thu, 24 May 2012 01:31:48 +0000 (18:31 -0700)]
staging: comedi: rtd520 complete the refactor to remove all forward declarations

Complete the refactor of the rtd520 driver to remove all the
forward declarations.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: adl_pci7296: factor out the PCI device code
H Hartley Sweeten [Wed, 23 May 2012 21:28:47 +0000 (14:28 -0700)]
staging: comedi: adl_pci7296: factor out the PCI device code

Factor out the code that finds a matching PCI device from attach
function. This allows reducing the indent level of the remaining
code in the attach function.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: adl_pci7432: factor out the PCI device code
H Hartley Sweeten [Wed, 23 May 2012 21:38:33 +0000 (14:38 -0700)]
staging: comedi: adl_pci7432: factor out the PCI device code

Factor out the code that finds a matching PCI device from attach
function. This allows reducing the indent level of the remaining
code in the attach function.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: adl_pci8164: factor out the PCI device code
H Hartley Sweeten [Wed, 23 May 2012 22:44:10 +0000 (15:44 -0700)]
staging: comedi: adl_pci8164: factor out the PCI device code

Factor out the code that finds a matching PCI device from attach
function. This allows reducing the indent level of the remaining
code in the attach function.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: adl_pci9111: factor out the find PCI device code
H Hartley Sweeten [Wed, 23 May 2012 23:06:39 +0000 (16:06 -0700)]
staging: comedi: adl_pci9111: factor out the find PCI device code

Factor out the code that finds a matching PCI device from attach
function.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: adl_pci9118: factor out the find PCI device code
H Hartley Sweeten [Wed, 23 May 2012 23:34:58 +0000 (16:34 -0700)]
staging: comedi: adl_pci9118: factor out the find PCI device code

Factor out the code that finds a matching PCI device from attach
function.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: adl_pci7230: factor out the find PCI device code
H Hartley Sweeten [Wed, 23 May 2012 21:14:13 +0000 (14:14 -0700)]
staging: comedi: adl_pci7230: factor out the find PCI device code

Factor out the code that finds a matching PCI device from attach
function.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: cleanup comedi_recognize()
Dan Carpenter [Sat, 26 May 2012 12:14:45 +0000 (15:14 +0300)]
staging: comedi: cleanup comedi_recognize()

This function is more complicated than it needs to be because of the
consts.  It's not worth saving them when we drop the consts anyway
when we return (void *)name_ptr.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc:
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the s526 driver
H Hartley Sweeten [Wed, 23 May 2012 01:20:10 +0000 (18:20 -0700)]
staging: comedi: remove this_board macro in the s526 driver

The 'thisboard' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the acl7225b driver
H Hartley Sweeten [Tue, 22 May 2012 22:31:41 +0000 (15:31 -0700)]
staging: comedi: remove this_board macro in the acl7225b driver

The 'this_board' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove thisboard macro in the adq12b driver
H Hartley Sweeten [Tue, 22 May 2012 22:41:29 +0000 (15:41 -0700)]
staging: comedi: remove thisboard macro in the adq12b driver

The 'thisboard' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the aio_aio12_8 driver
H Hartley Sweeten [Tue, 22 May 2012 22:46:02 +0000 (15:46 -0700)]
staging: comedi: remove this_board macro in the aio_aio12_8 driver

The 'thisboard' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove thisboard macro in the aio_iiro_16 driver
H Hartley Sweeten [Tue, 22 May 2012 22:51:14 +0000 (15:51 -0700)]
staging: comedi: remove thisboard macro in the aio_iiro_16 driver

The 'thisboard' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove thisboard macro in the comedi_test driver
H Hartley Sweeten [Tue, 22 May 2012 22:58:28 +0000 (15:58 -0700)]
staging: comedi: remove thisboard macro in the comedi_test driver

The 'thisboard' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove thisboard macro in the das16 driver
H Hartley Sweeten [Tue, 22 May 2012 23:09:58 +0000 (16:09 -0700)]
staging: comedi: remove thisboard macro in the das16 driver

The 'thisboard' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove thisboard macro in the das16m1 driver
H Hartley Sweeten [Tue, 22 May 2012 23:13:38 +0000 (16:13 -0700)]
staging: comedi: remove thisboard macro in the das16m1 driver

The 'thisboard' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove thisboard macro in the dmm32at driver
H Hartley Sweeten [Tue, 22 May 2012 23:23:09 +0000 (16:23 -0700)]
staging: comedi: remove thisboard macro in the dmm32at driver

The 'thisboard' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the dt2811 driver
H Hartley Sweeten [Tue, 22 May 2012 23:28:02 +0000 (16:28 -0700)]
staging: comedi: remove this_board macro in the dt2811 driver

The 'this_board' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the dt282x driver
H Hartley Sweeten [Tue, 22 May 2012 23:33:51 +0000 (16:33 -0700)]
staging: comedi: remove this_board macro in the dt282x driver

The 'this_board' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove thisboard macro in the ni_at_ao driver
H Hartley Sweeten [Tue, 22 May 2012 23:41:39 +0000 (16:41 -0700)]
staging: comedi: remove thisboard macro in the ni_at_ao driver

The 'thisboard' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove boardtype macro in the ni_atmio16d driver
H Hartley Sweeten [Tue, 22 May 2012 23:46:07 +0000 (16:46 -0700)]
staging: comedi: remove boardtype macro in the ni_atmio16d driver

The 'boardtype' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the pcl711 driver
H Hartley Sweeten [Tue, 22 May 2012 23:52:00 +0000 (16:52 -0700)]
staging: comedi: remove this_board macro in the pcl711 driver

The 'this_board' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the pcl724 driver
H Hartley Sweeten [Tue, 22 May 2012 23:55:37 +0000 (16:55 -0700)]
staging: comedi: remove this_board macro in the pcl724 driver

The 'this_board' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the pcl726 driver
H Hartley Sweeten [Tue, 22 May 2012 23:59:57 +0000 (16:59 -0700)]
staging: comedi: remove this_board macro in the pcl726 driver

The 'this_board' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the pcl730 driver
H Hartley Sweeten [Wed, 23 May 2012 00:03:19 +0000 (17:03 -0700)]
staging: comedi: remove this_board macro in the pcl730 driver

The 'this_board' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the pcl812 driver
H Hartley Sweeten [Wed, 23 May 2012 00:09:03 +0000 (17:09 -0700)]
staging: comedi: remove this_board macro in the pcl812 driver

The 'this_board' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the pcl816 driver
H Hartley Sweeten [Wed, 23 May 2012 00:14:14 +0000 (17:14 -0700)]
staging: comedi: remove this_board macro in the pcl816 driver

The 'this_board' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the pcl818 driver
H Hartley Sweeten [Wed, 23 May 2012 00:22:48 +0000 (17:22 -0700)]
staging: comedi: remove this_board macro in the pcl818 driver

The 'this_board' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the pcm3724 driver
H Hartley Sweeten [Wed, 23 May 2012 00:26:43 +0000 (17:26 -0700)]
staging: comedi: remove this_board macro in the pcm3724 driver

The 'this_board' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the pcmad driver
H Hartley Sweeten [Wed, 23 May 2012 00:39:22 +0000 (17:39 -0700)]
staging: comedi: remove this_board macro in the pcmad driver

The 'this_board' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove thisboard macro in the pcmda12 driver
H Hartley Sweeten [Wed, 23 May 2012 00:42:55 +0000 (17:42 -0700)]
staging: comedi: remove thisboard macro in the pcmda12 driver

The 'thisboard' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the pcmmio driver
H Hartley Sweeten [Wed, 23 May 2012 00:46:56 +0000 (17:46 -0700)]
staging: comedi: remove this_board macro in the pcmmio driver

The 'thisboard' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the pcmuio driver
H Hartley Sweeten [Wed, 23 May 2012 00:51:35 +0000 (17:51 -0700)]
staging: comedi: remove this_board macro in the pcmuio driver

The 'thisboard' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the poc driver
H Hartley Sweeten [Wed, 23 May 2012 00:54:46 +0000 (17:54 -0700)]
staging: comedi: remove this_board macro in the poc driver

The 'this_board' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the rti800 driver
H Hartley Sweeten [Wed, 23 May 2012 00:59:07 +0000 (17:59 -0700)]
staging: comedi: remove this_board macro in the rti800 driver

The 'this_board' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove this_board macro in the serial2002 driver
H Hartley Sweeten [Wed, 23 May 2012 01:04:18 +0000 (18:04 -0700)]
staging: comedi: remove this_board macro in the serial2002 driver

The 'thisboard' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove thisboard macro in the ssv_dnp driver
H Hartley Sweeten [Wed, 23 May 2012 01:08:36 +0000 (18:08 -0700)]
staging: comedi: remove thisboard macro in the ssv_dnp driver

The 'thisboard' macro depends on having a local variable with
a magic name. The CodingStyle document suggests not doing this
to avoid confusion. Remove the macro and use the comedi_board()
inline helper to get the dev->board_ptr information.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: s626: base_addr is a void __iomem *
H Hartley Sweeten [Tue, 22 May 2012 01:21:39 +0000 (18:21 -0700)]
staging: comedi: s626: base_addr is a void __iomem *

The base_addr variable in struct s626_private is an ioremap'ed pci
resource and should be void __iomem * not a void *.

This quiets a lot of sparse warings for the writel and readl calls
like:

warning: incorrect type in argument 1 (different address spaces)
   expected void const volatile [noderef] <asn:2>*addr
   got void *<noident>

warning: incorrect type in argument 2 (different address spaces)
   expected void volatile [noderef] <asn:2>*addr
   got void *

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: ii_pci20kc: iobase and ioaddr are void __iomem *
H Hartley Sweeten [Tue, 22 May 2012 01:10:07 +0000 (18:10 -0700)]
staging: comedi: ii_pci20kc: iobase and ioaddr are void __iomem *

The iobase variables in struct pci20xxx_subdev_private and ioaddr
variable in struct pci20xxx_private should be void __iomem * not
void *.

This quiets a lot of sparse warings for the writeb and readb calls
like:

warning: incorrect type in argument 1 (different address spaces)
   expected void const volatile [noderef] <asn:2>*addr
   got void *<noident>

warning: incorrect type in argument 2 (different address spaces)
   expected void volatile [noderef] <asn:2>*addr
   got void *

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: icp_multi: io_addr is a void __iomem *
H Hartley Sweeten [Tue, 22 May 2012 00:55:33 +0000 (17:55 -0700)]
staging: comedi: icp_multi: io_addr is a void __iomem *

The io_addr variable in struct dt3k_private is an ioremap'ed pci
resource and should be void __iomem * not a void *.

This quiets a lot of sparse warings for the writew and readw calls
like:

warning: incorrect type in argument 1 (different address spaces)
   expected void const volatile [noderef] <asn:2>*addr
   got void *<noident>

warning: incorrect type in argument 2 (different address spaces)
   expected void volatile [noderef] <asn:2>*addr
   got void *

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: gsc_hpdi: plx9080_iobase and hpdi_iobase are void __iomem *
H Hartley Sweeten [Tue, 22 May 2012 00:52:07 +0000 (17:52 -0700)]
staging: comedi: gsc_hpdi: plx9080_iobase and hpdi_iobase are void __iomem *

The plx9080_iobase and hpdi_iobase variables in struct hpdi_private
are ioremap'ed pci resource and should be void __iomem * not void *.

This quiets a lot of sparse warings for the writel and readl calls
like:

warning: incorrect type in argument 1 (different address spaces)
   expected void const volatile [noderef] <asn:2>*addr
   got void *<noident>

warning: incorrect type in argument 2 (different address spaces)
   expected void volatile [noderef] <asn:2>*addr
   got void *

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: dt3000: io_addr is a void __iomem *
H Hartley Sweeten [Tue, 22 May 2012 00:43:31 +0000 (17:43 -0700)]
staging: comedi: dt3000: io_addr is a void __iomem *

The io_addr variable in struct dt3k_private is an ioremap'ed pci
resource and should be void __iomem * not a void *.

This quiets a lot of sparse warings for the writew and readw calls
like:

warning: incorrect type in argument 1 (different address spaces)
   expected void const volatile [noderef] <asn:2>*addr
   got void *<noident>

warning: incorrect type in argument 2 (different address spaces)
   expected void volatile [noderef] <asn:2>*addr
   got void *

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agostaging: comedi: remove private header comedi_pci.h
H Hartley Sweeten [Tue, 22 May 2012 00:12:12 +0000 (17:12 -0700)]
staging: comedi: remove private header comedi_pci.h

Remove the private header, comedi_pci.h, by moving the two
helper functions into divers.c and providing the prototypes
in comedidev.h.

This allows the comedi_pci_enable/disable helper functions
to be shared instead of having an inline version in every
comedi pci driver.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: Mori Hess <fmhess@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
12 years agoLinux 3.5-rc1 v3.5-rc1
Linus Torvalds [Sun, 3 Jun 2012 01:29:26 +0000 (18:29 -0700)]
Linux 3.5-rc1

12 years agoMerge tag 'dm-3.5-changes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/agk...
Linus Torvalds [Sun, 3 Jun 2012 00:39:40 +0000 (17:39 -0700)]
Merge tag 'dm-3.5-changes-1' of git://git./linux/kernel/git/agk/linux-dm

Pull device-mapper updates from Alasdair G Kergon:
 "Improve multipath's retrying mechanism in some defined circumstances
  and provide a simple reserve/release mechanism for userspace tools to
  access thin provisioning metadata while the pool is in use."

* tag 'dm-3.5-changes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-dm:
  dm thin: provide userspace access to pool metadata
  dm thin: use slab mempools
  dm mpath: allow ioctls to trigger pg init
  dm mpath: delay retry of bypassed pg
  dm mpath: reduce size of struct multipath

12 years agodm thin: provide userspace access to pool metadata
Joe Thornber [Sat, 2 Jun 2012 23:30:01 +0000 (00:30 +0100)]
dm thin: provide userspace access to pool metadata

This patch implements two new messages that can be sent to the thin
pool target allowing it to take a snapshot of the _metadata_.  This,
read-only snapshot can be accessed by userland, concurrently with the
live target.

Only one metadata snapshot can be held at a time.  The pool's status
line will give the block location for the current msnap.

Since version 0.1.5 of the userland thin provisioning tools, the
thin_dump program displays the msnap as follows:

    thin_dump -m <msnap root> <metadata dev>

Available here: https://github.com/jthornber/thin-provisioning-tools

Now that userland can access the metadata we can do various things
that have traditionally been kernel side tasks:

     i) Incremental backups.

     By using metadata snapshots we can work out what blocks have
     changed over time.  Combined with data snapshots we can ensure
     the data doesn't change while we back it up.

     A short proof of concept script can be found here:

     https://github.com/jthornber/thinp-test-suite/blob/master/incremental_backup_example.rb

     ii) Migration of thin devices from one pool to another.

     iii) Merging snapshots back into an external origin.

     iv) Asyncronous replication.

Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agodm thin: use slab mempools
Mike Snitzer [Sat, 2 Jun 2012 23:30:00 +0000 (00:30 +0100)]
dm thin: use slab mempools

Use dedicated caches prefixed with a "dm_" name rather than relying on
kmalloc mempools backed by generic slab caches so the memory usage of
thin provisioning (and any leaks) can be accounted for independently.

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agodm mpath: allow ioctls to trigger pg init
Mikulas Patocka [Sat, 2 Jun 2012 23:29:58 +0000 (00:29 +0100)]
dm mpath: allow ioctls to trigger pg init

After the failure of a group of paths, any alternative paths that
need initialising do not become available until further I/O is sent to
the device.  Until this has happened, ioctls return -EAGAIN.

With this patch, new paths are made available in response to an ioctl
too.  The processing of the ioctl gets delayed until this has happened.

Instead of returning an error, we submit a work item to kmultipathd
(that will potentially activate the new path) and retry in ten
milliseconds.

Note that the patch doesn't retry an ioctl if the ioctl itself fails due
to a path failure.  Such retries should be handled intelligently by the
code that generated the ioctl in the first place, noting that some SCSI
commands should not be retried because they are not idempotent (XOR write
commands).  For commands that could be retried, there is a danger that
if the device rejected the SCSI command, the path could be errorneously
marked as failed, and the request would be retried on another path which
might fail too.  It can be determined if the failure happens on the
device or on the SCSI controller, but there is no guarantee that all
SCSI drivers set these flags correctly.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agodm mpath: delay retry of bypassed pg
Mike Christie [Sat, 2 Jun 2012 23:29:45 +0000 (00:29 +0100)]
dm mpath: delay retry of bypassed pg

If I/O needs retrying and only bypassed priority groups are available,
set the pg_init_delay_retry flag to wait before retrying.

If, for example, the reason for the bypass is that the controller is
getting reset or there is a firmware upgrade happening, retrying right
away would cause a flood of log messages and retries for what could be a
few seconds or even several minutes.

Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Acked-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agodm mpath: reduce size of struct multipath
Mike Snitzer [Sat, 2 Jun 2012 23:29:43 +0000 (00:29 +0100)]
dm mpath: reduce size of struct multipath

Move multipath structure's 'lock' and 'queue_size' members to eliminate
two 4-byte holes.  Also use a bit within a single unsigned int for each
existing flag (saves 8-bytes).  This allows future flags to be added
without each consuming an unsigned int.

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Acked-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Linus Torvalds [Sat, 2 Jun 2012 23:22:51 +0000 (16:22 -0700)]
Merge git://git./linux/kernel/git/davem/net

Pull networking updates from David Miller:

 1) Make syn floods consume significantly less resources by

    a) Not pre-COW'ing routing metrics for SYN/ACKs
    b) Mirroring the device queue mapping of the SYN for the SYN/ACK
       reply.

    Both from Eric Dumazet.

 2) Fix calculation errors in Byte Queue Limiting, from Hiroaki SHIMODA.

 3) Validate the length requested when building a paged SKB for a
    socket, so we don't overrun the page vector accidently.  From Jason
    Wang.

 4) When netlabel is disabled, we abort all IP option processing when we
    see a CIPSO option.  This isn't the right thing to do, we should
    simply skip over it and continue processing the remaining options
    (if any).  Fix from Paul Moore.

 5) SRIOV fixes for the mellanox driver from Jack orgenstein and Marcel
    Apfelbaum.

 6) 8139cp enables the receiver before the ring address is properly
    programmed, which potentially lets the device crap over random
    memory.  Fix from Jason Wang.

 7) e1000/e1000e fixes for i217 RST handling, and an improper buffer
    address reference in jumbo RX frame processing from Bruce Allan and
    Sebastian Andrzej Siewior, respectively.

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
  fec_mpc52xx: fix timestamp filtering
  mcs7830: Implement link state detection
  e1000e: fix Rapid Start Technology support for i217
  e1000: look into the page instead of skb->data for e1000_tbi_adjust_stats()
  r8169: call netif_napi_del at errpaths and at driver unload
  tcp: reflect SYN queue_mapping into SYNACK packets
  tcp: do not create inetpeer on SYNACK message
  8139cp/8139too: terminate the eeprom access with the right opmode
  8139cp: set ring address before enabling receiver
  cipso: handle CIPSO options correctly when NetLabel is disabled
  net: sock: validate data_len before allocating skb in sock_alloc_send_pskb()
  bql: Avoid possible inconsistent calculation.
  bql: Avoid unneeded limit decrement.
  bql: Fix POSDIFF() to integer overflow aware.
  net/mlx4_core: Fix obscure mlx4_cmd_box parameter in QUERY_DEV_CAP
  net/mlx4_core: Check port out-of-range before using in mlx4_slave_cap
  net/mlx4_core: Fixes for VF / Guest startup flow
  net/mlx4_en: Fix improper use of "port" parameter in mlx4_en_event
  net/mlx4_core: Fix number of EQs used in ICM initialisation
  net/mlx4_core: Fix the slave_id out-of-range test in mlx4_eq_int

12 years agoMerge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sat, 2 Jun 2012 23:17:03 +0000 (16:17 -0700)]
Merge branch 'x86-urgent-for-linus' of git://git./linux/kernel/git/tip/tip

Pull straggler x86 fixes from Peter Anvin:
 "Three groups of patches:

  - EFI boot stub documentation and the ability to print error messages;
  - Removal for PTRACE_ARCH_PRCTL for x32 (obsolete interface which
    should never have been ported, and the port is broken and
    potentially dangerous.)
  - ftrace stack corruption fixes.  I'm not super-happy about the
    technical implementation, but it is probably the least invasive in
    the short term.  In the future I would like a single method for
    nesting the debug stack, however."

* 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86, x32, ptrace: Remove PTRACE_ARCH_PRCTL for x32
  x86, efi: Add EFI boot stub documentation
  x86, efi; Add EFI boot stub console support
  x86, efi: Only close open files in error path
  ftrace/x86: Do not change stacks in DEBUG when calling lockdep
  x86: Allow nesting of the debug stack IDT setting
  x86: Reset the debug_stack update counter
  ftrace: Use breakpoint method to update ftrace caller
  ftrace: Synchronize variable setting with breakpoints