diff options
| author | Greg Kroah-Hartman <gregkh@suse.de> | 2009-04-27 15:22:12 -0700 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@suse.de> | 2009-04-27 15:22:12 -0700 |
| commit | 688ca9b5ebe1e17de831df4f4a39ec82041a59e5 (patch) | |
| tree | 0997780432a7fc26dc5fb2a750be509bb137b5df | |
| parent | fb8c969114a736513bdd927d63625a787dc089e4 (diff) | |
| download | patches-688ca9b5ebe1e17de831df4f4a39ec82041a59e5.tar.gz | |
more patches
| -rw-r--r-- | series | 7 | ||||
| -rw-r--r-- | series.save | 245 | ||||
| -rw-r--r-- | staging/staging-comedi-remove-comedi-specific-wrappers.patch | 8139 | ||||
| -rw-r--r-- | staging/staging-comedi-remove-rt-code.patch | 2040 | ||||
| -rw-r--r-- | staging/staging-comedi-remove-some-rt-code-that-lingered.patch | 238 | ||||
| -rw-r--r-- | usb/usb-ehci-create-sysfs-companion-files-directly-in-the-controller-device.patch | 37 | ||||
| -rw-r--r-- | usb/usb-ohci-use-the-ohci-structure-directly-in-debugfs-files.patch | 135 | ||||
| -rw-r--r-- | usb/usb-remove-unused-usb_host-class.patch | 126 | ||||
| -rw-r--r-- | version | 2 |
9 files changed, 10722 insertions, 247 deletions
@@ -87,6 +87,9 @@ usb/usb-add-the-usbfs-devices-file-to-debugfs.patch usb/nls-utf8_wcstombs-use-correct-buffer-size-in-error-case.patch usb/nls-utf8_wcstombs-fix-buffer-overflow.patch usb/usb-return-device-strings-in-utf-8.patch +usb/usb-ohci-use-the-ohci-structure-directly-in-debugfs-files.patch +usb/usb-ehci-create-sysfs-companion-files-directly-in-the-controller-device.patch +usb/usb-remove-unused-usb_host-class.patch # stuff I want in my tree, but not to go into -next @@ -194,6 +197,9 @@ staging/staging-comedi-make-use-of-array_size-macro.patch staging/staging-comedi-comment-out-useless-if.patch staging/staging-comedi-move-while-to-same-line-as-in-do-loops.patch staging/staging-comedi-convert-usbdux-to-use-firmware_request.patch +staging/staging-comedi-remove-comedi-specific-wrappers.patch +staging/staging-comedi-remove-rt-code.patch +staging/staging-comedi-remove-some-rt-code-that-lingered.patch staging/staging-agnx-probe-cleanup.patch @@ -249,4 +255,3 @@ staging/staging-pohmelfs-remove-braces-around-single-statements.patch #staging/staging-add-intel-poulsbo-morrestown-drm-driver.patch - diff --git a/series.save b/series.save deleted file mode 100644 index e61e0862d71424..00000000000000 --- a/series.save +++ /dev/null @@ -1,245 +0,0 @@ -# My specific stuff, at the top to make it easier to work stuff below. -gregkh/gkh-version.patch - - -##################################################################### -# Stuff to be merged for 2.6.30 -##################################################################### - -################################# -# Driver core patches for 2.6.30 -################################# -driver-core.current/driver-core-platform-do-not-complain-for-platform_data-added-by-platform_device_add_data.patch -driver-core.current/driver-core-platform-fix-kernel-doc-warnings.patch -driver-core.current/doc-sysfs-rules-swap-the-order-of-the-words-so-the-sentence-makes-more-sense.patch -driver-core.current/remove-old-printk_debug-config-item.patch - - - -################################# -# USB patches for 2.6.30 -################################# -usb.current/usb-serial-fix-lifetime-and-locking-problems.patch -usb.current/usb-unusual-device-support-for-gold-mp3-player-energy.patch -usb.current/usb-gadget-mips-ci13xxx-udc-bugfixes.patch -usb.current/usb-musb-remove-my-email-address-from-few-musb-related-drivers.patch -usb.current/usb-musb-fix-build-when-config_pm.patch -usb.current/usb-mos7840-add-new-device-id.patch -usb.current/usb-fix-mos7840-problem-with-minor-numbers.patch -usb.current/usb-ehci-sched.c-ehci-sitd-scheduling-bugfix.patch -usb.current/usb-g_file_storage-fix-use-after-free-bug-when-closing-files.patch -usb.current/usb-pass-mem_flags-to-dma_alloc_coherent.patch -usb.current/usb-musb-prevent-multiple-includes-of-musb.h.patch -usb.current/usb-ci13xxx_udc-fix-build-error.patch -usb.current/usb-gadget-omap_udc-uses-platform_driver_probe.patch -usb.current/usb-serial-sierra-driver-bug-fix-for-composite-interface.patch -usb.current/usb-removal-of-tty-low_latency-hack-dating-back-to-the-old-serial-code.patch -usb.current/usb-correct-error-handling-in-cdc-wdm.patch -usb.current/usb-otg-fix-bug-on-remove-path-without-transceiver.patch -usb.current/usb-pwc-do-not-pass-stack-allocated-buffers-to-usb-core.patch - - -##################################################################### -# Stuff to be merged after 2.6.30 is out -##################################################################### - -################################# -# Driver core patches for after 2.6.30 is out -################################# -driver-core/driver-core-set-default-sysfs_deprecated-n.patch -driver-core/sched-delayed-cleanup-of-user_struct.patch -driver-core/driver-core-warn-driver-authors-about-adding-device-attributes.patch - - -################################# -# USB stuff (after 2.6.30 is out) -################################# -usb/musb_gadget-fix-unhandled-endpoint-0-irqs.patch -usb/musb_gadget-suppress-parasitic-tx-interrupts-with-cppi.patch -usb/musb_host-refactor-musb_save_toggle.patch -usb/musb_host-factor-out-musb_ep_-get-set-_qh.patch -usb/musb_host-simplify-check-for-active-urb.patch -usb/musb_host-streamline-musb_cleanup_urb-calls.patch -usb/musb_host-refactor-urb-giveback.patch -usb/musb-split-out-cppi-interrupt-handler.patch -usb/usb-move-twl4030_usb-s-probe-function-to-.devinit.text.patch -usb/usb-move-r8a66597_hcd-s-probe-function-to-.devinit.text.patch -usb/usb-move-orion-ehci-s-probe-function-to-.devinit.text.patch -usb/usb-twl4030-usb-fix-minor-reporting-goofage.patch -usb/usb-nop-usb-xceiv-behave-when-linked-as-a-module.patch -usb/musb-proper-hookup-to-transceiver-drivers.patch -usb/musb-otg-timer-cleanup.patch -usb/musb-make-initial-hnp-roleswitch-work.patch -usb/musb-support-disconnect-after-hnp-roleswitch.patch -usb/musb-use-dma-mode-1-for-tx-if-transfer-size-equals-maxpacket.patch -usb/musb-add-high-bandwidth-iso-support.patch -usb/usb-serial-ftdi-add-high-speed-device-support.patch -usb/usb-consolidate-usb_unbind_interface-and-usb_driver_release_interface.patch -usb/usb-usbfs-deprecate-and-hide-option-for-embedded.patch -usb/usb-ignore-storage-device-in-modem-mode-on-dwn-652.patch -usb/usb-core-sysfs-fix-sparse-warnings.patch -usb/usb-ci13xxx_udc-use-helper-functions-to-determine-endpoint-type-and-direction.patch -usb/usb-atmel_usba_udc-use-helper-functions-to-determine-endpoint-type-and-direction.patch -usb/usb-at91_udc-use-helper-functions-to-determine-endpoint-type-and-direction.patch -usb/usb-goku-s-use-helper-functions-to-determine-endpoint-type-and-direction.patch -usb/usb-gadgetfs-use-helper-functions-to-determine-endpoint-type-and-direction.patch -usb/usb-uhci-queue-use-usb_endpoint_type.patch -usb/usb-pxa27x_udc-introduce-pxa27x_clear_otgph.patch -usb/usb-pxa27x_udc-compatibility-with-pxa320-soc.patch -usb/usb-pxa27x_udc-single-thread-setup-requests.patch -usb/usb-host-ohci-hcd.c-fix-sparse-warnings.patch -usb/usb-hub.c-fix-sparse-warnings.patch -usb/usb-mos7840-fix-debug-log-messages.patch - -# stuff I want in my tree, but not to go into -next - - -################################# -# Staging stuff -################################# - -# for before .30 is done: -staging/staging-w35und-unregister-device-from-the-ieee80211-stack-upon-disconnect.patch -staging/staging-rt2870-new-device-id.patch -staging/staging-rtl8187se-fix-compilation-warnings-and-procfs-directory-leak.patch - -# for after .30: -staging/staging-comedi-remove-ni_board-typedef.patch -staging/staging-comedi-remove-ni_private-typedef.patch -staging/staging-comedi-remove-local_info_t-typedef-in-ni_labpc_cs.patch -staging/staging-comedi-remove-dio24_board_struct-typedef.patch -staging/staging-comedi-remove-local_info_t-typedef-in-ni_daq_dio24.patch -staging/staging-comedi-remove-byte-and-pbyte-typedefs-in-addi-data.patch -staging/staging-comedi-remove-short-and-pshort-typedefs-in-addi-data.patch -staging/staging-comedi-remove-ushort-and-pushort-typedefs-in-addi-data.patch -staging/staging-comedi-remove-word-and-pword-typedefs-in-addi-data.patch -staging/staging-comedi-remove-int-and-pint-typedefs-in-addi-data.patch -staging/staging-comedi-remove-uint-and-puint-typedefs-in-addi-data.patch -staging/staging-comedi-remove-long-and-plong-typedefs-in-addi-data.patch -staging/staging-comedi-remove-ulong-and-pulong-typedefs-in-addi-data.patch -staging/staging-comedi-remove-dword-and-pdword-typedefs-in-addi-data.patch -staging/staging-comedi-remove-ulong_ptr-typedef-in-addi-data.patch -staging/staging-comedi-remove-pcrange-typedef-in-addi-data.patch -staging/staging-comedi-remove-boardtype-typedef-in-addi-data.patch -staging/staging-comedi-remove-str_moduleinfo-typedef-in-addi-data.patch -staging/staging-comedi-remove-addi_private-typedef-in-addi-data.patch -staging/staging-comedi-remove-str_mainheader-typedef-in-addi-data-addi_eeprom.c.patch -staging/staging-comedi-remove-str_digitalinputheader-typedef-in-addi-data-addi_eeprom.c.patch -staging/staging-comedi-remove-str_digitaloutputheader-typedef-in-addi-data-addi_eeprom.c.patch -staging/staging-comedi-remove-str_timerdetails-typedef-in-addi-data-addi_eeprom.c.patch -staging/staging-comedi-remove-str_timermainheader-typedef-in-addi-data-addi_eeprom.c.patch -staging/staging-comedi-remove-str_analogreadinformation-typedef-in-addi-data-hwdrv_apci3120.h.patch -staging/staging-comedi-remove-str_module-typedef-in-addi-data-hwdrv_apci3200.h.patch -staging/staging-comedi-remove-str_boardinfos-typedef-in-addi-data-hwdrv_apci3200.patch -staging/staging-comedi-remove-str_addidata_rtdstruct-typedef-in-addi-data-hwdrv_apci3200.patch -staging/staging-comedi-remove-labpc_board_struct-typedef.patch -staging/staging-comedi-remove-labpc_private-typedef.patch -staging/staging-comedi-remove-str_analoginputheader-typedef-in-addi-data-addi_eeprom.c.patch -staging/staging-comedi-remove-c99-comments-in-8253.h.patch -staging/staging-comedi-remove-c99-comments-in-acl7225b.c.patch -staging/staging-comedi-remove-c99-comments-in-apci1710_82x54.c.patch -staging/staging-comedi-remove-c99-comments-in-das1800.c.patch -staging/staging-comedi-remove-c99-comments-in-pcl818.c.patch -staging/staging-comedi-remove-c99-comments-in-hwdrv_apci1500.c.patch -staging/staging-comedi-remove-c99-comments-in-apci1710_pwm.c.patch -staging/staging-comedi-remove-c99-comments-in-hwdrv_apci1564.c.patch -staging/staging-comedi-remove-c99-comments-in-hwdrv_apci3200.c.patch -staging/staging-comedi-remove-c99-comments-in-hwdrv_apci3120.c.patch -staging/staging-comedi-remove-c99-comments-in-adl_pci6208.c.patch -staging/staging-comedi-remove-c99-comments-in-adl_pci9118.c.patch -staging/staging-comedi-remove-c99-comments-in-adv_pci1723.c.patch -staging/staging-comedi-remove-c99-comments-in-c6xdigio.c.patch -staging/staging-comedi-remove-c99-comments-in-cb_pcidas64.c.patch -staging/staging-comedi-remove-c99-comments-in-cb_pcidas.c.patch -staging/staging-comedi-remove-c99-comments-in-cb_pcimdas.c.patch -staging/staging-comedi-remove-c99-comments-in-gsc_hpdi.c.patch -staging/staging-comedi-remove-c99-comments-in-mpc624.c.patch -staging/staging-comedi-remove-c99-comments-in-ni_at_a2150.c.patch -staging/staging-comedi-remove-c99-comments-in-ni_labpc.c.patch -staging/staging-comedi-remove-c99-comments-in-pcl724.c.patch -staging/staging-comedi-remove-c99-comments-in-pcl816.c.patch -staging/staging-comedi-remove-c99-comments-in-s526.c.patch -staging/staging-comedi-remove-interrupt.h.patch -staging/staging-comedi-remove-c99-comments.patch -staging/staging-comedi-finish-removing-ni_private-typedef.patch -staging/staging-comedi-pcmcia_parse_tuple-now-has-two-arguments-not-three.patch -staging/staging-comedi-fix-build-errors-in-pcmcia-comedi-drivers.patch -staging/staging-comedi-set-pci-and-pcmcia-defines.patch -staging/staging-comedi-fixed-kconfig-option-for-comedi_pcmcia_drivers.patch -staging/staging-comedi-pcl818-fix-option-handling-for-fifo-mode.patch -staging/staging-comedi-pcl818-tidy-up-ai-command-after-channel-dropout-or-similar-error.patch -staging/staging-comedi-ni_600x-added-support-for-comedi_poll.patch -staging/staging-comedi-work-around-malformed-rtai_version_code.patch -staging/staging-comedi-undo-stupid-commit-made-3-months-ago.patch -staging/staging-comedi-amplc_pc236-corrected-documentation.patch -staging/staging-comedi-added-sysfs-attribute-files-for-setting-and-querying-subdevice-buffer-sizes.patch -staging/staging-comedi-jr3_pci-use-struct-device-from-pci_dev-for-firmware-loading.patch -staging/staging-comedi-replace-__function__-usages.patch -staging/staging-comedi-remove-dupilcated-include.patch -staging/staging-comedi-fix-foo-bar-should-be-foo-bar.patch -staging/staging-comedi-add-spaces-after-commas.patch -staging/staging-comedi-fix-spacing-around-parens.patch -staging/staging-comedi-change-space-indentation-to-tabs.patch -staging/staging-comedi-add-vmk80xx-usb-driver.patch -staging/staging-comedi-vmk80xx.c-get-the-driver-to-build-properly.patch -staging/staging-comedi-makefile-changes.patch - -staging/staging-agnx-probe-cleanup.patch -staging/staging-agnx-remove-memlens-from-probe.patch -staging/staging-agnx-fix-fail-paths-in-probe.patch -staging/staging-agnx-fix-bssid-compiler-warnings.patch - -staging/staging-meilhaus-switch-to-misc-device.patch -staging/staging-meilhaus-annotate-cpi-functions.patch -staging/staging-meilhaus-move-tables-to-.c.patch - -staging/staging-sxg-replace-__function__-usages.patch -staging/staging-rt3070-replace-__function__-usages.patch -staging/staging-rt2860-don-t-call-sprintf-with-overlapping-input-and-output.patch -staging/staging-rt2870-don-t-call-sprintf-with-overlapping-input-and-output.patch -staging/staging-rspiusb-make-driver-compile.patch -staging/staging-rtl8187se-use-to_delayed_work.patch -staging/staging-rt3070-remove-dupilcated-include.patch -staging/staging-remove-unused-include-linux-version.h-s.patch -staging/staging-agnx-replace-print_mac-with-pm.patch -staging/staging-stlc45xx-replace-print_mac-with-pm.patch -staging/staging-winbond-boolean-negation-and-bitwise-operation-in-wrong-order.patch -staging/staging-fix-operator-precedence-errors.patch - -staging/staging-w35und-remove-unused-code-from-wbsoft_configure_filter.patch -staging/staging-w35und-replace-switch-error-handling-with-gotos-in-wb35_hw_init.patch -staging/staging-w35und-move-hal_init_hardware-and-hal_halt-int-wbusb.c.patch -staging/staging-w35und-simplify-error-handling-in-wb35_hw_init.patch -staging/staging-w35und-simplify-hal_init_hardware-error-handling.patch -staging/staging-w35und-more-simplify-hal_init_hardware-error-handling.patch -staging/staging-w35und-simplify-hal_init_hardware-and-hal_halt.patch -staging/staging-w35und-clean-up-comments-in-wbusb.c.patch -staging/staging-w35und-inline-hal_set_phy_type-to-wb35_hw_init.patch -staging/staging-w35und-reformat-wbusb.c.patch -staging/staging-w35und-remove-module_author.patch -staging/staging-w35und-make-led-lookup-tables-static.patch -staging/staging-w35und-reformat-wbhal.c.patch -staging/staging-w35und-merge-wbhal.c-to-wbusb.c.patch -staging/staging-w35und-inline-hal_set_rf_power-to-mto.c.patch -staging/staging-w35und-merge-rest-of-wbhal.c-to-phy_calibration.c.patch - -staging/staging-wlan-ng-move-firmware-loading-into-driver.patch - -staging/staging-pohmelfs-move-open-brace-to-same-line-on-structs.patch -staging/staging-pohmelfs-remove-c99-comments.patch -staging/staging-pohmelfs-remove-braces-around-single-statements.patch - -# for now, comment this out, it's a mess -#staging/drm-split-out-the-mm-declarations-in-a-separate-header.-add-atomic-operations.patch -#staging/drm-add-a-tracker-for-global-objects.patch -#staging/drm-export-hash-table-functionality.patch -#staging/drm-add-unlocked-ioctl-functionality-from-the-drm-repo.patch -#staging/staging-add-intel-poulsbo-morrestown-drm-driver.patch - -usb-add-usb-debugfs-directory.patch -usb-ehci-use-the-new-usb-debugfs-directory.patch -usb-fhci-use-the-new-usb-debugfs-directory.patch -usb-ohci-use-the-new-usb-debugfs-directory.patch -usb-uhci-use-the-new-usb-debugfs-directory.patch -usb-usbmon-use-the-new-usb-debugfs-directory.patch -usb-add-the-usbfs-devices-file-to-debugfs.patch diff --git a/staging/staging-comedi-remove-comedi-specific-wrappers.patch b/staging/staging-comedi-remove-comedi-specific-wrappers.patch new file mode 100644 index 00000000000000..9aea2c865d430e --- /dev/null +++ b/staging/staging-comedi-remove-comedi-specific-wrappers.patch @@ -0,0 +1,8139 @@ +From foo@baz Mon Apr 27 14:44:31 PDT 2009 +Date: Mon, 27 Apr 2009 14:44:31 -0700 +To: Greg KH <greg@kroah.com> +From: Greg Kroah-Hartman <gregkh@suse.de> +Subject: Staging: comedi: remove comedi-specific wrappers + +From: Greg Kroah-Hartman <gregkh@suse.de> + +There are a number of comedi "wrappers" for some RT functions that are +about to go away. This patch removes all of the wrapper calls within +the comedi drivers and core in order to prepare for removing the RT +comedi code. + +Cc: Ian Abbott <abbotti@mev.co.uk> +Cc: Frank Mori Hess <fmhess@users.sourceforge.net> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> +--- + drivers/staging/comedi/comedi_fops.c | 37 - + drivers/staging/comedi/drivers.c | 8 + drivers/staging/comedi/drivers/addi-data/addi_amcc_s5933.h | 10 + drivers/staging/comedi/drivers/addi-data/addi_common.c | 14 + drivers/staging/comedi/drivers/addi-data/amcc_s5933_58.h | 10 + drivers/staging/comedi/drivers/addi-data/hwdrv_apci3120.c | 2 + drivers/staging/comedi/drivers/adl_pci9111.c | 15 + drivers/staging/comedi/drivers/adl_pci9118.c | 66 +-- + drivers/staging/comedi/drivers/adq12b.c | 6 + drivers/staging/comedi/drivers/adv_pci1710.c | 54 +- + drivers/staging/comedi/drivers/adv_pci1723.c | 12 + drivers/staging/comedi/drivers/adv_pci_dio.c | 18 + drivers/staging/comedi/drivers/aio_aio12_8.c | 2 + drivers/staging/comedi/drivers/amplc_dio200.c | 20 - + drivers/staging/comedi/drivers/amplc_pc236.c | 16 + drivers/staging/comedi/drivers/amplc_pci224.c | 36 - + drivers/staging/comedi/drivers/amplc_pci230.c | 86 ++-- + drivers/staging/comedi/drivers/cb_das16_cs.c | 14 + drivers/staging/comedi/drivers/cb_pcidas.c | 106 ++--- + drivers/staging/comedi/drivers/cb_pcidas64.c | 122 +++--- + drivers/staging/comedi/drivers/cb_pcimdas.c | 4 + drivers/staging/comedi/drivers/comedi_fc.c | 2 + drivers/staging/comedi/drivers/comedi_parport.c | 6 + drivers/staging/comedi/drivers/comedi_rt_timer.c | 4 + drivers/staging/comedi/drivers/contec_pci_dio.c | 6 + drivers/staging/comedi/drivers/daqboard2000.c | 48 +- + drivers/staging/comedi/drivers/das08.c | 4 + drivers/staging/comedi/drivers/das16.c | 21 - + drivers/staging/comedi/drivers/das16m1.c | 10 + drivers/staging/comedi/drivers/das1800.c | 20 - + drivers/staging/comedi/drivers/das6402.c | 4 + drivers/staging/comedi/drivers/das800.c | 48 +- + drivers/staging/comedi/drivers/dmm32at.c | 5 + drivers/staging/comedi/drivers/dt2801.c | 4 + drivers/staging/comedi/drivers/dt2811.c | 8 + drivers/staging/comedi/drivers/dt2814.c | 10 + drivers/staging/comedi/drivers/dt2815.c | 6 + drivers/staging/comedi/drivers/dt282x.c | 15 + drivers/staging/comedi/drivers/dt3000.c | 8 + drivers/staging/comedi/drivers/fl512.c | 2 + drivers/staging/comedi/drivers/gsc_hpdi.c | 26 - + drivers/staging/comedi/drivers/icp_multi.c | 12 + drivers/staging/comedi/drivers/icp_multi.h | 12 + drivers/staging/comedi/drivers/jr3_pci.c | 12 + drivers/staging/comedi/drivers/me4000.c | 2 + drivers/staging/comedi/drivers/mite.c | 28 - + drivers/staging/comedi/drivers/mite.h | 2 + drivers/staging/comedi/drivers/mpc624.c | 66 +-- + drivers/staging/comedi/drivers/ni_6527.c | 6 + drivers/staging/comedi/drivers/ni_65xx.c | 10 + drivers/staging/comedi/drivers/ni_660x.c | 40 -- + drivers/staging/comedi/drivers/ni_670x.c | 2 + drivers/staging/comedi/drivers/ni_at_a2150.c | 18 + drivers/staging/comedi/drivers/ni_atmio.c | 14 + drivers/staging/comedi/drivers/ni_atmio16d.c | 7 + drivers/staging/comedi/drivers/ni_daq_700.c | 2 + drivers/staging/comedi/drivers/ni_daq_dio24.c | 2 + drivers/staging/comedi/drivers/ni_labpc.c | 72 +-- + drivers/staging/comedi/drivers/ni_mio_common.c | 255 ++++++------- + drivers/staging/comedi/drivers/ni_mio_cs.c | 12 + drivers/staging/comedi/drivers/ni_pcidio.c | 21 - + drivers/staging/comedi/drivers/ni_pcimio.c | 27 - + drivers/staging/comedi/drivers/ni_stc.h | 14 + drivers/staging/comedi/drivers/ni_tio.c | 4 + drivers/staging/comedi/drivers/ni_tio_internal.h | 8 + drivers/staging/comedi/drivers/ni_tiocmd.c | 36 - + drivers/staging/comedi/drivers/pcl711.c | 8 + drivers/staging/comedi/drivers/pcl724.c | 11 + drivers/staging/comedi/drivers/pcl726.c | 10 + drivers/staging/comedi/drivers/pcl812.c | 81 ++-- + drivers/staging/comedi/drivers/pcl816.c | 96 ++-- + drivers/staging/comedi/drivers/pcl818.c | 108 ++--- + drivers/staging/comedi/drivers/pcmmio.c | 34 - + drivers/staging/comedi/drivers/pcmuio.c | 34 - + drivers/staging/comedi/drivers/plx9080.h | 8 + drivers/staging/comedi/drivers/rtd520.c | 22 - + drivers/staging/comedi/drivers/rti800.c | 13 + drivers/staging/comedi/drivers/s526.c | 4 + drivers/staging/comedi/drivers/s626.c | 14 + drivers/staging/comedi/drivers/s626.h | 2 + drivers/staging/comedi/drivers/serial2002.c | 2 + drivers/staging/comedi/drivers/skel.c | 4 + drivers/staging/comedi/drivers/unioxx5.c | 2 + drivers/staging/comedi/kcomedilib/data.c | 4 + drivers/staging/comedi/kcomedilib/kcomedilib_main.c | 24 - + drivers/staging/comedi/range.c | 7 + 86 files changed, 1026 insertions(+), 1061 deletions(-) + +--- a/drivers/staging/comedi/comedi_fops.c ++++ b/drivers/staging/comedi/comedi_fops.c +@@ -728,7 +728,7 @@ static int check_insn_config_length(stru + /* by default we allow the insn since we don't have checks for + * all possible cases yet */ + default: +- rt_printk("comedi: no check for data length of config insn id " ++ printk("comedi: no check for data length of config insn id " + "%i is implemented.\n" + " Add a check to %s in %s.\n" + " Assuming n=%i is correct.\n", data[0], __func__, +@@ -1219,12 +1219,12 @@ static int do_lock_ioctl(struct comedi_d + return -EINVAL; + s = dev->subdevices + arg; + +- comedi_spin_lock_irqsave(&s->spin_lock, flags); ++ spin_lock_irqsave(&s->spin_lock, flags); + if (s->busy || s->lock) + ret = -EBUSY; + else + s->lock = file; +- comedi_spin_unlock_irqrestore(&s->spin_lock, flags); ++ spin_unlock_irqrestore(&s->spin_lock, flags); + + if (ret < 0) + return ret; +@@ -1984,8 +1984,7 @@ module_exit(comedi_cleanup); + + void comedi_error(const struct comedi_device *dev, const char *s) + { +- rt_printk("comedi%d: %s: %s\n", dev->minor, dev->driver->driver_name, +- s); ++ printk("comedi%d: %s: %s\n", dev->minor, dev->driver->driver_name, s); + } + + void comedi_event(struct comedi_device *dev, struct comedi_subdevice *s) +@@ -2054,10 +2053,10 @@ void comedi_set_subdevice_runflags(struc + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&s->spin_lock, flags); ++ spin_lock_irqsave(&s->spin_lock, flags); + s->runflags &= ~mask; + s->runflags |= (bits & mask); +- comedi_spin_unlock_irqrestore(&s->spin_lock, flags); ++ spin_unlock_irqrestore(&s->spin_lock, flags); + } + + unsigned comedi_get_subdevice_runflags(struct comedi_subdevice *s) +@@ -2065,9 +2064,9 @@ unsigned comedi_get_subdevice_runflags(s + unsigned long flags; + unsigned runflags; + +- comedi_spin_lock_irqsave(&s->spin_lock, flags); ++ spin_lock_irqsave(&s->spin_lock, flags); + runflags = s->runflags; +- comedi_spin_unlock_irqrestore(&s->spin_lock, flags); ++ spin_unlock_irqrestore(&s->spin_lock, flags); + return runflags; + } + +@@ -2125,14 +2124,14 @@ int comedi_alloc_board_minor(struct devi + return -ENOMEM; + } + comedi_device_init(info->device); +- comedi_spin_lock_irqsave(&comedi_file_info_table_lock, flags); ++ spin_lock_irqsave(&comedi_file_info_table_lock, flags); + for (i = 0; i < COMEDI_NUM_BOARD_MINORS; ++i) { + if (comedi_file_info_table[i] == NULL) { + comedi_file_info_table[i] = info; + break; + } + } +- comedi_spin_unlock_irqrestore(&comedi_file_info_table_lock, flags); ++ spin_unlock_irqrestore(&comedi_file_info_table_lock, flags); + if (i == COMEDI_NUM_BOARD_MINORS) { + comedi_device_cleanup(info->device); + kfree(info->device); +@@ -2184,10 +2183,10 @@ void comedi_free_board_minor(unsigned mi + struct comedi_device_file_info *info; + + BUG_ON(minor >= COMEDI_NUM_BOARD_MINORS); +- comedi_spin_lock_irqsave(&comedi_file_info_table_lock, flags); ++ spin_lock_irqsave(&comedi_file_info_table_lock, flags); + info = comedi_file_info_table[minor]; + comedi_file_info_table[minor] = NULL; +- comedi_spin_unlock_irqrestore(&comedi_file_info_table_lock, flags); ++ spin_unlock_irqrestore(&comedi_file_info_table_lock, flags); + + if (info) { + struct comedi_device *dev = info->device; +@@ -2218,14 +2217,14 @@ int comedi_alloc_subdevice_minor(struct + info->device = dev; + info->read_subdevice = s; + info->write_subdevice = s; +- comedi_spin_lock_irqsave(&comedi_file_info_table_lock, flags); ++ spin_lock_irqsave(&comedi_file_info_table_lock, flags); + for (i = COMEDI_FIRST_SUBDEVICE_MINOR; i < COMEDI_NUM_MINORS; ++i) { + if (comedi_file_info_table[i] == NULL) { + comedi_file_info_table[i] = info; + break; + } + } +- comedi_spin_unlock_irqrestore(&comedi_file_info_table_lock, flags); ++ spin_unlock_irqrestore(&comedi_file_info_table_lock, flags); + if (i == COMEDI_NUM_MINORS) { + kfree(info); + printk(KERN_ERR "comedi: error: ran out of minor numbers for board device files.\n"); +@@ -2283,10 +2282,10 @@ void comedi_free_subdevice_minor(struct + BUG_ON(s->minor >= COMEDI_NUM_MINORS); + BUG_ON(s->minor < COMEDI_FIRST_SUBDEVICE_MINOR); + +- comedi_spin_lock_irqsave(&comedi_file_info_table_lock, flags); ++ spin_lock_irqsave(&comedi_file_info_table_lock, flags); + info = comedi_file_info_table[s->minor]; + comedi_file_info_table[s->minor] = NULL; +- comedi_spin_unlock_irqrestore(&comedi_file_info_table_lock, flags); ++ spin_unlock_irqrestore(&comedi_file_info_table_lock, flags); + + if (s->class_dev) { + device_destroy(comedi_class, MKDEV(COMEDI_MAJOR, s->minor)); +@@ -2301,9 +2300,9 @@ struct comedi_device_file_info *comedi_g + struct comedi_device_file_info *info; + + BUG_ON(minor >= COMEDI_NUM_MINORS); +- comedi_spin_lock_irqsave(&comedi_file_info_table_lock, flags); ++ spin_lock_irqsave(&comedi_file_info_table_lock, flags); + info = comedi_file_info_table[minor]; +- comedi_spin_unlock_irqrestore(&comedi_file_info_table_lock, flags); ++ spin_unlock_irqrestore(&comedi_file_info_table_lock, flags); + return info; + } + +--- a/drivers/staging/comedi/drivers/addi-data/addi_amcc_s5933.h ++++ b/drivers/staging/comedi/drivers/addi-data/addi_amcc_s5933.h +@@ -343,7 +343,7 @@ int i_find_free_pci_card_by_position(uns + *card = amcc; + return 0; /* ok, card is found */ + } else { +- rt_printk(" - \nCard on requested position is used b:s %d:%d!\n", ++ printk(" - \nCard on requested position is used b:s %d:%d!\n", + pci_bus, pci_slot); + return 2; /* card exist but is used */ + } +@@ -447,7 +447,7 @@ struct pcilst_struct *ptr_select_and_all + /* use autodetection */ + card = ptr_find_free_pci_card_by_device(vendor_id, device_id); + if (card == NULL) { +- rt_printk(" - Unused card not found in system!\n"); ++ printk(" - Unused card not found in system!\n"); + return NULL; + } + } else { +@@ -455,18 +455,18 @@ struct pcilst_struct *ptr_select_and_all + pci_bus, pci_slot, + &card)) { + case 1: +- rt_printk(" - Card not found on requested position b:s %d:%d!\n", ++ printk(" - Card not found on requested position b:s %d:%d!\n", + pci_bus, pci_slot); + return NULL; + case 2: +- rt_printk(" - Card on requested position is used b:s %d:%d!\n", ++ printk(" - Card on requested position is used b:s %d:%d!\n", + pci_bus, pci_slot); + return NULL; + } + } + + if (pci_card_alloc(card, i_Master) != 0) { +- rt_printk(" - Can't allocate card!\n"); ++ printk(" - Can't allocate card!\n"); + return NULL; + + } +--- a/drivers/staging/comedi/drivers/addi-data/addi_common.c ++++ b/drivers/staging/comedi/drivers/addi-data/addi_common.c +@@ -2583,7 +2583,7 @@ static int i_ADDI_Attach(struct comedi_d + v_pci_card_list_init(this_board->i_VendorId, 1); /* 1 for displaying the list.. */ + pci_list_builded = 1; + } +- /* rt_printk("comedi%d: addi_common: board=%s",dev->minor,this_board->pc_DriverName); */ ++ /* printk("comedi%d: addi_common: board=%s",dev->minor,this_board->pc_DriverName); */ + + if ((this_board->i_Dma) && (it->options[2] == 0)) { + i_Dma = 1; +@@ -2648,16 +2648,16 @@ static int i_ADDI_Attach(struct comedi_d + /* ## */ + + if (irq > 0) { +- if (comedi_request_irq(irq, v_ADDI_Interrupt, IRQF_SHARED, ++ if (request_irq(irq, v_ADDI_Interrupt, IRQF_SHARED, + c_Identifier, dev) < 0) { + printk(", unable to allocate IRQ %u, DISABLING IT", + irq); + irq = 0; /* Can't use IRQ */ + } else { +- rt_printk("\nirq=%u", irq); ++ printk("\nirq=%u", irq); + } + } else { +- rt_printk(", IRQ disabled"); ++ printk(", IRQ disabled"); + } + + printk("\nOption %d %d %d\n", it->options[0], it->options[1], +@@ -2719,7 +2719,7 @@ static int i_ADDI_Attach(struct comedi_d + } + } + if (!devpriv->ul_DmaBufferVirtual[0]) { +- rt_printk ++ printk + (", Can't allocate DMA buffer, DMA disabled!"); + devpriv->us_UseDma = ADDI_DISABLE; + } +@@ -2730,7 +2730,7 @@ static int i_ADDI_Attach(struct comedi_d + } + + if ((devpriv->us_UseDma == ADDI_ENABLE)) { +- rt_printk("\nDMA ENABLED\n"); ++ printk("\nDMA ENABLED\n"); + } else { + printk("\nDMA DISABLED\n"); + } +@@ -2937,7 +2937,7 @@ static int i_ADDI_Detach(struct comedi_d + } + + if (dev->irq) { +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + + if ((devpriv->ps_BoardInfo->pc_EepromChip == NULL) +--- a/drivers/staging/comedi/drivers/addi-data/amcc_s5933_58.h ++++ b/drivers/staging/comedi/drivers/addi-data/amcc_s5933_58.h +@@ -335,7 +335,7 @@ int i_find_free_pci_card_by_position(uns + *card = amcc; + return 0; /* ok, card is found */ + } else { +- rt_printk ++ printk + (" - \nCard on requested position is used b:s %d:%d!\n", + pci_bus, pci_slot); + return 2; /* card exist but is used */ +@@ -425,7 +425,7 @@ struct pcilst_struct *ptr_select_and_all + if ((pci_bus < 1) & (pci_slot < 1)) { /* use autodetection */ + card = ptr_find_free_pci_card_by_device(vendor_id, device_id); + if (card == NULL) { +- rt_printk(" - Unused card not found in system!\n"); ++ printk(" - Unused card not found in system!\n"); + return NULL; + } + } else { +@@ -433,12 +433,12 @@ struct pcilst_struct *ptr_select_and_all + pci_bus, pci_slot, + &card)) { + case 1: +- rt_printk ++ printk + (" - Card not found on requested position b:s %d:%d!\n", + pci_bus, pci_slot); + return NULL; + case 2: +- rt_printk ++ printk + (" - Card on requested position is used b:s %d:%d!\n", + pci_bus, pci_slot); + return NULL; +@@ -446,7 +446,7 @@ struct pcilst_struct *ptr_select_and_all + } + + if (i_pci_card_alloc(card) != 0) { +- rt_printk(" - Can't allocate card!\n"); ++ printk(" - Can't allocate card!\n"); + return NULL; + } + +--- a/drivers/staging/comedi/drivers/addi-data/hwdrv_apci3120.c ++++ b/drivers/staging/comedi/drivers/addi-data/hwdrv_apci3120.c +@@ -2637,7 +2637,7 @@ int i_APCI3120_InsnWriteAnalogOutput(str + } + + /* +- * out put n values at the given channel. rt_printk("\nwaiting for ++ * out put n values at the given channel. printk("\nwaiting for + * DA_READY BIT"); + */ + do /* Waiting of DA_READY BIT */ +--- a/drivers/staging/comedi/drivers/adl_pci9111.c ++++ b/drivers/staging/comedi/drivers/adl_pci9111.c +@@ -420,7 +420,7 @@ static void pci9111_timer_set(struct com + PCI9111_8254_READ_LOAD_LSB_MSB | + PCI9111_8254_MODE_2 | PCI9111_8254_BINARY_COUNTER); + +- comedi_udelay(1); ++ udelay(1); + + pci9111_8254_counter_2_set(dev_private->timer_divisor_2); + pci9111_8254_counter_1_set(dev_private->timer_divisor_1); +@@ -901,7 +901,7 @@ static irqreturn_t pci9111_interrupt(int + + async = subdevice->async; + +- comedi_spin_lock_irqsave(&dev->spinlock, irq_flags); ++ spin_lock_irqsave(&dev->spinlock, irq_flags); + + /* Check if we are source of interrupt */ + intcsr = inb(dev_private->lcr_io_base + +@@ -919,7 +919,7 @@ static irqreturn_t pci9111_interrupt(int + PLX9050_LINTI2_STATUS))))) { + /* Not the source of the interrupt. */ + /* (N.B. not using PLX9050_SOFTWARE_INTERRUPT) */ +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + return IRQ_NONE; + } + +@@ -928,7 +928,7 @@ static irqreturn_t pci9111_interrupt(int + /* Interrupt comes from fifo_half-full signal */ + + if (pci9111_is_fifo_full()) { +- comedi_spin_unlock_irqrestore(&dev->spinlock, ++ spin_unlock_irqrestore(&dev->spinlock, + irq_flags); + comedi_error(dev, PCI9111_DRIVER_NAME " fifo overflow"); + pci9111_interrupt_clear(); +@@ -1028,7 +1028,7 @@ static irqreturn_t pci9111_interrupt(int + + pci9111_interrupt_clear(); + +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + + comedi_event(dev, subdevice); + +@@ -1298,8 +1298,7 @@ static int pci9111_attach(struct comedi_ + + dev->irq = 0; + if (pci_device->irq > 0) { +- if (comedi_request_irq(pci_device->irq, +- pci9111_interrupt, ++ if (request_irq(pci_device->irq, pci9111_interrupt, + IRQF_SHARED, PCI9111_DRIVER_NAME, dev) != 0) { + printk("comedi%d: unable to allocate irq %u\n", + dev->minor, pci_device->irq); +@@ -1379,7 +1378,7 @@ static int pci9111_detach(struct comedi_ + /* Release previously allocated irq */ + + if (dev->irq != 0) { +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + + if (dev_private != 0 && dev_private->pci_device != 0) { +--- a/drivers/staging/comedi/drivers/adl_pci9118.c ++++ b/drivers/staging/comedi/drivers/adl_pci9118.c +@@ -80,7 +80,7 @@ Configuration options: + + #undef DPRINTK + #ifdef PCI9118_EXTDEBUG +-#define DPRINTK(fmt, args...) rt_printk(fmt, ## args) ++#define DPRINTK(fmt, args...) printk(fmt, ## args) + #else + #define DPRINTK(fmt, args...) + #endif +@@ -345,12 +345,12 @@ static int pci9118_insn_read_ai(struct c + + for (n = 0; n < insn->n; n++) { + outw(0, dev->iobase + PCI9118_SOFTTRG); /* start conversion */ +- comedi_udelay(2); ++ udelay(2); + timeout = 100; + while (timeout--) { + if (inl(dev->iobase + PCI9118_ADSTAT) & AdStatus_ADrdy) + goto conv_finish; +- comedi_udelay(1); ++ udelay(1); + } + + comedi_error(dev, "A/D insn timeout"); +@@ -569,7 +569,7 @@ static void interrupt_pci9118_ai_onesamp + #ifdef PCI9118_PARANOIDCHECK + if (devpriv->ai16bits == 0) { + if ((sampl & 0x000f) != devpriv->chanlist[s->async->cur_chan]) { /* data dropout! */ +- rt_printk ++ printk + ("comedi: A/D SAMPL - data dropout: received channel %d, expected %d!\n", + sampl & 0x000f, + devpriv->chanlist[s->async->cur_chan]); +@@ -950,11 +950,11 @@ static int pci9118_ai_cmdtest(struct com + + if (cmd->scan_begin_src == TRIG_TIMER) { + tmp = cmd->scan_begin_arg; +-/* rt_printk("S1 timer1=%u timer2=%u\n",cmd->scan_begin_arg,cmd->convert_arg); */ ++/* printk("S1 timer1=%u timer2=%u\n",cmd->scan_begin_arg,cmd->convert_arg); */ + i8253_cascade_ns_to_timer(devpriv->i8254_osc_base, &divisor1, + &divisor2, &cmd->scan_begin_arg, + cmd->flags & TRIG_ROUND_MASK); +-/* rt_printk("S2 timer1=%u timer2=%u\n",cmd->scan_begin_arg,cmd->convert_arg); */ ++/* printk("S2 timer1=%u timer2=%u\n",cmd->scan_begin_arg,cmd->convert_arg); */ + if (cmd->scan_begin_arg < this_board->ai_ns_min) + cmd->scan_begin_arg = this_board->ai_ns_min; + if (tmp != cmd->scan_begin_arg) +@@ -966,7 +966,7 @@ static int pci9118_ai_cmdtest(struct com + i8253_cascade_ns_to_timer(devpriv->i8254_osc_base, &divisor1, + &divisor2, &cmd->convert_arg, + cmd->flags & TRIG_ROUND_MASK); +-/* rt_printk("s1 timer1=%u timer2=%u\n",cmd->scan_begin_arg,cmd->convert_arg); */ ++/* printk("s1 timer1=%u timer2=%u\n",cmd->scan_begin_arg,cmd->convert_arg); */ + if (cmd->convert_arg < this_board->ai_ns_min) + cmd->convert_arg = this_board->ai_ns_min; + if (tmp != cmd->convert_arg) +@@ -980,7 +980,7 @@ static int pci9118_ai_cmdtest(struct com + cmd->scan_begin_arg = + this_board->ai_ns_min * + (cmd->scan_end_arg + 2); +-/* rt_printk("s2 timer1=%u timer2=%u\n",cmd->scan_begin_arg,cmd->convert_arg); */ ++/* printk("s2 timer1=%u timer2=%u\n",cmd->scan_begin_arg,cmd->convert_arg); */ + err++; + } + } else { +@@ -989,7 +989,7 @@ static int pci9118_ai_cmdtest(struct com + cmd->scan_begin_arg = + cmd->convert_arg * + cmd->chanlist_len; +-/* rt_printk("s3 timer1=%u timer2=%u\n",cmd->scan_begin_arg,cmd->convert_arg); */ ++/* printk("s3 timer1=%u timer2=%u\n",cmd->scan_begin_arg,cmd->convert_arg); */ + err++; + } + } +@@ -1033,7 +1033,7 @@ static int Compute_and_setup_dma(struct + if (dmalen0 < (devpriv->ai_n_realscanlen << 1)) { + /* uff, too short DMA buffer, disable EOS support! */ + devpriv->ai_flags &= (~TRIG_WAKE_EOS); +- rt_printk ++ printk + ("comedi%d: WAR: DMA0 buf too short, cann't support TRIG_WAKE_EOS (%d<%d)\n", + dev->minor, dmalen0, + devpriv->ai_n_realscanlen << 1); +@@ -1044,7 +1044,7 @@ static int Compute_and_setup_dma(struct + if (devpriv->useeoshandle) + dmalen0 += 2; + if (dmalen0 < 4) { +- rt_printk ++ printk + ("comedi%d: ERR: DMA0 buf len bug? (%d<4)\n", + dev->minor, dmalen0); + dmalen0 = 4; +@@ -1055,7 +1055,7 @@ static int Compute_and_setup_dma(struct + if (dmalen1 < (devpriv->ai_n_realscanlen << 1)) { + /* uff, too short DMA buffer, disable EOS support! */ + devpriv->ai_flags &= (~TRIG_WAKE_EOS); +- rt_printk ++ printk + ("comedi%d: WAR: DMA1 buf too short, cann't support TRIG_WAKE_EOS (%d<%d)\n", + dev->minor, dmalen1, + devpriv->ai_n_realscanlen << 1); +@@ -1066,7 +1066,7 @@ static int Compute_and_setup_dma(struct + if (devpriv->useeoshandle) + dmalen1 -= 2; + if (dmalen1 < 4) { +- rt_printk ++ printk + ("comedi%d: ERR: DMA1 buf len bug? (%d<4)\n", + dev->minor, dmalen1); + dmalen1 = 4; +@@ -1464,7 +1464,7 @@ static int pci9118_ai_cmd(struct comedi_ + outl(devpriv->AdControlReg, dev->iobase + PCI9118_ADCNTRL); + devpriv->AdFunctionReg = AdFunction_PDTrg | AdFunction_PETrg; /* positive triggers, no S&H, no burst, burst stop, no post trigger, no about trigger, trigger stop */ + outl(devpriv->AdFunctionReg, dev->iobase + PCI9118_ADFUNC); +- comedi_udelay(1); ++ udelay(1); + outl(0, dev->iobase + PCI9118_DELFIFO); /* flush FIFO */ + inl(dev->iobase + PCI9118_ADSTAT); /* flush A/D and INT status register */ + inl(dev->iobase + PCI9118_INTSRC); +@@ -1497,7 +1497,7 @@ static int check_channel_list(struct com + return 0; + } + if ((frontadd + n_chan + backadd) > s->len_chanlist) { +- rt_printk ++ printk + ("comedi%d: range/channel list is too long for actual configuration (%d>%d)!", + dev->minor, n_chan, + s->len_chanlist - frontadd - backadd); +@@ -1641,7 +1641,7 @@ static int setup_channel_list(struct com + #endif + #endif + outl(0, dev->iobase + PCI9118_SCANMOD); /* close scan queue */ +-/* comedi_udelay(100); important delay, or first sample will be cripled */ ++/* udelay(100); important delay, or first sample will be cripled */ + + DPRINTK("adl_pci9118 EDBG: END: setup_channel_list()\n"); + return 1; /* we can serve this with scan logic */ +@@ -1716,7 +1716,7 @@ static void start_pacer(struct comedi_de + outl(0x74, dev->iobase + PCI9118_CNTCTRL); + outl(0xb4, dev->iobase + PCI9118_CNTCTRL); + /* outl(0x30, dev->iobase + PCI9118_CNTCTRL); */ +- comedi_udelay(1); ++ udelay(1); + + if ((mode == 1) || (mode == 2) || (mode == 4)) { + outl(divisor2 & 0xff, dev->iobase + PCI9118_CNT2); +@@ -1817,7 +1817,7 @@ static int pci9118_reset(struct comedi_d + outl(devpriv->ao_data[0], dev->iobase + PCI9118_DA1); /* reset A/D outs to 0V */ + outl(devpriv->ao_data[1], dev->iobase + PCI9118_DA2); + outl(0, dev->iobase + PCI9118_DO); /* reset digi outs to L */ +- comedi_udelay(10); ++ udelay(10); + inl(dev->iobase + PCI9118_AD_DATA); + outl(0, dev->iobase + PCI9118_DELFIFO); /* flush FIFO */ + outl(0, dev->iobase + PCI9118_INTSRC); /* remove INT requests */ +@@ -1848,7 +1848,7 @@ static int pci9118_attach(struct comedi_ + unsigned char pci_bus, pci_slot, pci_func; + u16 u16w; + +- rt_printk("comedi%d: adl_pci9118: board=%s", dev->minor, ++ printk("comedi%d: adl_pci9118: board=%s", dev->minor, + this_board->name); + + opt_bus = it->options[0]; +@@ -1861,7 +1861,7 @@ static int pci9118_attach(struct comedi_ + + ret = alloc_private(dev, sizeof(struct pci9118_private)); + if (ret < 0) { +- rt_printk(" - Allocation failed!\n"); ++ printk(" - Allocation failed!\n"); + return -ENOMEM; + } + +@@ -1890,10 +1890,10 @@ static int pci9118_attach(struct comedi_ + + if (!pcidev) { + if (opt_bus || opt_slot) { +- rt_printk(" - Card at b:s %d:%d %s\n", ++ printk(" - Card at b:s %d:%d %s\n", + opt_bus, opt_slot, errstr); + } else { +- rt_printk(" - Card %s\n", errstr); ++ printk(" - Card %s\n", errstr); + } + return -EIO; + } +@@ -1909,7 +1909,7 @@ static int pci9118_attach(struct comedi_ + iobase_a = pci_resource_start(pcidev, 0); + iobase_9 = pci_resource_start(pcidev, 2); + +- rt_printk(", b:s:f=%d:%d:%d, io=0x%4lx, 0x%4lx", pci_bus, pci_slot, ++ printk(", b:s:f=%d:%d:%d, io=0x%4lx, 0x%4lx", pci_bus, pci_slot, + pci_func, iobase_9, iobase_a); + + dev->iobase = iobase_9; +@@ -1923,16 +1923,16 @@ static int pci9118_attach(struct comedi_ + if (it->options[3] & 2) + irq = 0; /* user don't want use IRQ */ + if (irq > 0) { +- if (comedi_request_irq(irq, interrupt_pci9118, IRQF_SHARED, ++ if (request_irq(irq, interrupt_pci9118, IRQF_SHARED, + "ADLink PCI-9118", dev)) { +- rt_printk(", unable to allocate IRQ %d, DISABLING IT", ++ printk(", unable to allocate IRQ %d, DISABLING IT", + irq); + irq = 0; /* Can't use IRQ */ + } else { +- rt_printk(", irq=%u", irq); ++ printk(", irq=%u", irq); + } + } else { +- rt_printk(", IRQ disabled"); ++ printk(", IRQ disabled"); + } + + dev->irq = irq; +@@ -1958,7 +1958,7 @@ static int pci9118_attach(struct comedi_ + } + } + if (!devpriv->dmabuf_virt[0]) { +- rt_printk(", Can't allocate DMA buffer, DMA disabled!"); ++ printk(", Can't allocate DMA buffer, DMA disabled!"); + master = 0; + } + +@@ -1969,9 +1969,9 @@ static int pci9118_attach(struct comedi_ + + devpriv->master = master; + if (devpriv->master) +- rt_printk(", bus master"); ++ printk(", bus master"); + else +- rt_printk(", no bus master"); ++ printk(", no bus master"); + + devpriv->usemux = 0; + if (it->options[2] > 0) { +@@ -1982,7 +1982,7 @@ static int pci9118_attach(struct comedi_ + if (devpriv->usemux > 128) { + devpriv->usemux = 128; /* max 128 channels with softare S&H! */ + } +- rt_printk(", ext. mux %d channels", devpriv->usemux); ++ printk(", ext. mux %d channels", devpriv->usemux); + } + + devpriv->softsshdelay = it->options[4]; +@@ -1995,7 +1995,7 @@ static int pci9118_attach(struct comedi_ + devpriv->softsshhold = 0x80; + } + +- rt_printk(".\n"); ++ printk(".\n"); + + pci_read_config_word(devpriv->pcidev, PCI_COMMAND, &u16w); + pci_write_config_word(devpriv->pcidev, PCI_COMMAND, u16w | 64); /* Enable parity check for parity error */ +@@ -2081,7 +2081,7 @@ static int pci9118_detach(struct comedi_ + if (devpriv->valid) + pci9118_reset(dev); + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + if (devpriv->pcidev) { + if (dev->iobase) { + comedi_pci_disable(devpriv->pcidev); +--- a/drivers/staging/comedi/drivers/adq12b.c ++++ b/drivers/staging/comedi/drivers/adq12b.c +@@ -325,7 +325,7 @@ static int adq12b_ai_rinsn(struct comedi + channel = CR_CHAN(insn->chanspec); + if (channel != devpriv->last_channel || range != devpriv->last_range) { + outb((range << 4) | channel, dev->iobase + ADQ12B_CTREG); +- comedi_udelay(50); /* wait for the mux to settle */ ++ udelay(50); /* wait for the mux to settle */ + } + + /* trigger conversion */ +@@ -337,7 +337,7 @@ static int adq12b_ai_rinsn(struct comedi + /* wait for end of convertion */ + i = 0; + do { +-/* comedi_udelay(1); */ ++/* udelay(1); */ + status = inb(dev->iobase + ADQ12B_STINR); + status = status & ADQ12B_EOC; + } while (status == 0 && ++i < TIMEOUT); +@@ -347,7 +347,7 @@ static int adq12b_ai_rinsn(struct comedi + hi = inb(dev->iobase + ADQ12B_ADHIG); + lo = inb(dev->iobase + ADQ12B_ADLOW); + +- /* rt_printk("debug: chan=%d range=%d status=%d hi=%d lo=%d\n", channel, range, status, hi, lo); */ ++ /* printk("debug: chan=%d range=%d status=%d hi=%d lo=%d\n", channel, range, status, hi, lo); */ + data[n] = (hi << 8) | lo; + + } +--- a/drivers/staging/comedi/drivers/adv_pci1710.c ++++ b/drivers/staging/comedi/drivers/adv_pci1710.c +@@ -58,7 +58,7 @@ Configuration options: + + #undef DPRINTK + #ifdef PCI171X_EXTDEBUG +-#define DPRINTK(fmt, args...) rt_printk(fmt, ## args) ++#define DPRINTK(fmt, args...) printk(fmt, ## args) + #else + #define DPRINTK(fmt, args...) + #endif +@@ -348,7 +348,7 @@ static int pci171x_insn_read_ai(struct c + outw(0, dev->iobase + PCI171x_SOFTTRG); /* start conversion */ + DPRINTK("adv_pci1710 B n=%d ST=%4x\n", n, + inw(dev->iobase + PCI171x_STATUS)); +- /* comedi_udelay(1); */ ++ /* udelay(1); */ + DPRINTK("adv_pci1710 C n=%d ST=%4x\n", n, + inw(dev->iobase + PCI171x_STATUS)); + timeout = 100; +@@ -588,14 +588,14 @@ static void interrupt_pci1710_every_samp + DPRINTK("adv_pci1710 EDBG: BGN: interrupt_pci1710_every_sample(...)\n"); + m = inw(dev->iobase + PCI171x_STATUS); + if (m & Status_FE) { +- rt_printk("comedi%d: A/D FIFO empty (%4x)\n", dev->minor, m); ++ printk("comedi%d: A/D FIFO empty (%4x)\n", dev->minor, m); + pci171x_ai_cancel(dev, s); + s->async->events |= COMEDI_CB_EOA | COMEDI_CB_ERROR; + comedi_event(dev, s); + return; + } + if (m & Status_FF) { +- rt_printk ++ printk + ("comedi%d: A/D FIFO Full status (Fatal Error!) (%4x)\n", + dev->minor, m); + pci171x_ai_cancel(dev, s); +@@ -614,7 +614,7 @@ static void interrupt_pci1710_every_samp + if (this_board->cardtype != TYPE_PCI1713) + if ((sampl & 0xf000) != + devpriv->act_chanlist[s->async->cur_chan]) { +- rt_printk ++ printk + ("comedi: A/D data dropout: received data from channel %d, expected %d!\n", + (sampl & 0xf000) >> 12, + (devpriv->act_chanlist[s->async-> +@@ -676,7 +676,7 @@ static int move_block_from_fifo(struct c + sampl = inw(dev->iobase + PCI171x_AD_DATA); + if (this_board->cardtype != TYPE_PCI1713) + if ((sampl & 0xf000) != devpriv->act_chanlist[j]) { +- rt_printk ++ printk + ("comedi%d: A/D FIFO data dropout: received data from channel %d, expected %d! (%d/%d/%d/%d/%d/%4x)\n", + dev->minor, (sampl & 0xf000) >> 12, + (devpriv-> +@@ -716,7 +716,7 @@ static void interrupt_pci1710_half_fifo( + DPRINTK("adv_pci1710 EDBG: BGN: interrupt_pci1710_half_fifo(...)\n"); + m = inw(dev->iobase + PCI171x_STATUS); + if (!(m & Status_FH)) { +- rt_printk("comedi%d: A/D FIFO not half full! (%4x)\n", ++ printk("comedi%d: A/D FIFO not half full! (%4x)\n", + dev->minor, m); + pci171x_ai_cancel(dev, s); + s->async->events |= COMEDI_CB_EOA | COMEDI_CB_ERROR; +@@ -724,7 +724,7 @@ static void interrupt_pci1710_half_fifo( + return; + } + if (m & Status_FF) { +- rt_printk ++ printk + ("comedi%d: A/D FIFO Full status (Fatal Error!) (%4x)\n", + dev->minor, m); + pci171x_ai_cancel(dev, s); +@@ -888,13 +888,13 @@ static int pci171x_ai_docmd_and_mode(int + */ + static void pci171x_cmdtest_out(int e, struct comedi_cmd *cmd) + { +- rt_printk("adv_pci1710 e=%d startsrc=%x scansrc=%x convsrc=%x\n", e, ++ printk("adv_pci1710 e=%d startsrc=%x scansrc=%x convsrc=%x\n", e, + cmd->start_src, cmd->scan_begin_src, cmd->convert_src); +- rt_printk("adv_pci1710 e=%d startarg=%d scanarg=%d convarg=%d\n", e, ++ printk("adv_pci1710 e=%d startarg=%d scanarg=%d convarg=%d\n", e, + cmd->start_arg, cmd->scan_begin_arg, cmd->convert_arg); +- rt_printk("adv_pci1710 e=%d stopsrc=%x scanend=%x\n", e, cmd->stop_src, ++ printk("adv_pci1710 e=%d stopsrc=%x scanend=%x\n", e, cmd->stop_src, + cmd->scan_end_src); +- rt_printk("adv_pci1710 e=%d stoparg=%d scanendarg=%d chanlistlen=%d\n", ++ printk("adv_pci1710 e=%d stoparg=%d scanendarg=%d chanlistlen=%d\n", + e, cmd->stop_arg, cmd->scan_end_arg, cmd->chanlist_len); + } + #endif +@@ -1122,7 +1122,7 @@ static int check_channel_list(struct com + if (n_chan > 1) { + chansegment[0] = chanlist[0]; /* first channel is everytime ok */ + for (i = 1, seglen = 1; i < n_chan; i++, seglen++) { /* build part of chanlist */ +- /* rt_printk("%d. %d %d\n",i,CR_CHAN(chanlist[i]),CR_RANGE(chanlist[i])); */ ++ /* printk("%d. %d %d\n",i,CR_CHAN(chanlist[i]),CR_RANGE(chanlist[i])); */ + if (chanlist[0] == chanlist[i]) + break; /* we detect loop, this must by finish */ + if (CR_CHAN(chanlist[i]) & 1) /* odd channel cann't by differencial */ +@@ -1136,7 +1136,7 @@ static int check_channel_list(struct com + if (CR_AREF(chansegment[i - 1]) == AREF_DIFF) + nowmustbechan = (nowmustbechan + 1) % s->n_chan; + if (nowmustbechan != CR_CHAN(chanlist[i])) { /* channel list isn't continous :-( */ +- rt_printk ++ printk + ("channel list must be continous! chanlist[%i]=%d but must be %d or %d!\n", + i, CR_CHAN(chanlist[i]), nowmustbechan, + CR_CHAN(chanlist[0])); +@@ -1146,9 +1146,9 @@ static int check_channel_list(struct com + } + + for (i = 0, segpos = 0; i < n_chan; i++) { /* check whole chanlist */ +- /* rt_printk("%d %d=%d %d\n",CR_CHAN(chansegment[i%seglen]),CR_RANGE(chansegment[i%seglen]),CR_CHAN(chanlist[i]),CR_RANGE(chanlist[i])); */ ++ /* printk("%d %d=%d %d\n",CR_CHAN(chansegment[i%seglen]),CR_RANGE(chansegment[i%seglen]),CR_CHAN(chanlist[i]),CR_RANGE(chanlist[i])); */ + if (chanlist[i] != chansegment[i % seglen]) { +- rt_printk ++ printk + ("bad channel, reference or range number! chanlist[%i]=%d,%d,%d and not %d,%d,%d!\n", + i, CR_CHAN(chansegment[i]), + CR_RANGE(chansegment[i]), +@@ -1331,14 +1331,14 @@ static int pci1710_attach(struct comedi_ + int i; + int board_index; + +- rt_printk("comedi%d: adv_pci1710: ", dev->minor); ++ printk("comedi%d: adv_pci1710: ", dev->minor); + + opt_bus = it->options[0]; + opt_slot = it->options[1]; + + ret = alloc_private(dev, sizeof(struct pci1710_private)); + if (ret < 0) { +- rt_printk(" - Allocation failed!\n"); ++ printk(" - Allocation failed!\n"); + return -ENOMEM; + } + +@@ -1386,10 +1386,10 @@ static int pci1710_attach(struct comedi_ + + if (!pcidev) { + if (opt_bus || opt_slot) { +- rt_printk(" - Card at b:s %d:%d %s\n", ++ printk(" - Card at b:s %d:%d %s\n", + opt_bus, opt_slot, errstr); + } else { +- rt_printk(" - Card %s\n", errstr); ++ printk(" - Card %s\n", errstr); + } + return -EIO; + } +@@ -1400,7 +1400,7 @@ static int pci1710_attach(struct comedi_ + irq = pcidev->irq; + iobase = pci_resource_start(pcidev, 2); + +- rt_printk(", b:s:f=%d:%d:%d, io=0x%4lx", pci_bus, pci_slot, pci_func, ++ printk(", b:s:f=%d:%d:%d, io=0x%4lx", pci_bus, pci_slot, pci_func, + iobase); + + dev->iobase = iobase; +@@ -1422,7 +1422,7 @@ static int pci1710_attach(struct comedi_ + + ret = alloc_subdevices(dev, n_subdevices); + if (ret < 0) { +- rt_printk(" - Allocation failed!\n"); ++ printk(" - Allocation failed!\n"); + return ret; + } + +@@ -1430,18 +1430,18 @@ static int pci1710_attach(struct comedi_ + + if (this_board->have_irq) { + if (irq) { +- if (comedi_request_irq(irq, interrupt_service_pci1710, ++ if (request_irq(irq, interrupt_service_pci1710, + IRQF_SHARED, "Advantech PCI-1710", + dev)) { +- rt_printk ++ printk + (", unable to allocate IRQ %d, DISABLING IT", + irq); + irq = 0; /* Can't use IRQ */ + } else { +- rt_printk(", irq=%u", irq); ++ printk(", irq=%u", irq); + } + } else { +- rt_printk(", IRQ disabled"); ++ printk(", IRQ disabled"); + } + } else { + irq = 0; +@@ -1551,7 +1551,7 @@ static int pci1710_detach(struct comedi_ + if (devpriv->valid) + pci1710_reset(dev); + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + if (devpriv->pcidev) { + if (dev->iobase) { + comedi_pci_disable(devpriv->pcidev); +--- a/drivers/staging/comedi/drivers/adv_pci1723.c ++++ b/drivers/staging/comedi/drivers/adv_pci1723.c +@@ -304,7 +304,7 @@ static int pci1723_attach(struct comedi_ + int opt_bus, opt_slot; + const char *errstr; + +- rt_printk("comedi%d: adv_pci1723: board=%s", dev->minor, ++ printk("comedi%d: adv_pci1723: board=%s", dev->minor, + this_board->name); + + opt_bus = it->options[0]; +@@ -312,7 +312,7 @@ static int pci1723_attach(struct comedi_ + + ret = alloc_private(dev, sizeof(struct pci1723_private)); + if (ret < 0) { +- rt_printk(" - Allocation failed!\n"); ++ printk(" - Allocation failed!\n"); + return -ENOMEM; + } + +@@ -342,10 +342,10 @@ static int pci1723_attach(struct comedi_ + + if (!pcidev) { + if (opt_bus || opt_slot) { +- rt_printk(" - Card at b:s %d:%d %s\n", ++ printk(" - Card at b:s %d:%d %s\n", + opt_bus, opt_slot, errstr); + } else { +- rt_printk(" - Card %s\n", errstr); ++ printk(" - Card %s\n", errstr); + } + return -EIO; + } +@@ -355,7 +355,7 @@ static int pci1723_attach(struct comedi_ + pci_func = PCI_FUNC(pcidev->devfn); + iobase = pci_resource_start(pcidev, 2); + +- rt_printk(", b:s:f=%d:%d:%d, io=0x%4x", pci_bus, pci_slot, pci_func, ++ printk(", b:s:f=%d:%d:%d, io=0x%4x", pci_bus, pci_slot, pci_func, + iobase); + + dev->iobase = iobase; +@@ -372,7 +372,7 @@ static int pci1723_attach(struct comedi_ + + ret = alloc_subdevices(dev, n_subdevices); + if (ret < 0) { +- rt_printk(" - Allocation failed!\n"); ++ printk(" - Allocation failed!\n"); + return ret; + } + +--- a/drivers/staging/comedi/drivers/adv_pci_dio.c ++++ b/drivers/staging/comedi/drivers/adv_pci_dio.c +@@ -40,7 +40,7 @@ Configuration options: + + #undef DPRINTK + #ifdef PCI_DIO_EXTDEBUG +-#define DPRINTK(fmt, args...) rt_printk(fmt, ## args) ++#define DPRINTK(fmt, args...) printk(fmt, ## args) + #else + #define DPRINTK(fmt, args...) + #endif +@@ -451,7 +451,7 @@ static int pci1760_unchecked_mbxrequest( + ok = 1; + break; + } +- comedi_udelay(1); ++ udelay(1); + } + if (ok) + return 0; +@@ -896,11 +896,11 @@ static int pci_dio_attach(struct comedi_ + unsigned long iobase; + struct pci_dev *pcidev; + +- rt_printk("comedi%d: adv_pci_dio: ", dev->minor); ++ printk("comedi%d: adv_pci_dio: ", dev->minor); + + ret = alloc_private(dev, sizeof(struct pci_dio_private)); + if (ret < 0) { +- rt_printk(", Error: Cann't allocate private memory!\n"); ++ printk(", Error: Cann't allocate private memory!\n"); + return -ENOMEM; + } + +@@ -932,18 +932,18 @@ static int pci_dio_attach(struct comedi_ + } + + if (!dev->board_ptr) { +- rt_printk ++ printk + (", Error: Requested type of the card was not found!\n"); + return -EIO; + } + + if (comedi_pci_enable(pcidev, driver_pci_dio.driver_name)) { +- rt_printk ++ printk + (", Error: Can't enable PCI device and request regions!\n"); + return -EIO; + } + iobase = pci_resource_start(pcidev, this_board->main_pci_region); +- rt_printk(", b:s:f=%d:%d:%d, io=0x%4lx", ++ printk(", b:s:f=%d:%d:%d, io=0x%4lx", + pcidev->bus->number, PCI_SLOT(pcidev->devfn), + PCI_FUNC(pcidev->devfn), iobase); + +@@ -968,11 +968,11 @@ static int pci_dio_attach(struct comedi_ + + ret = alloc_subdevices(dev, n_subdevices); + if (ret < 0) { +- rt_printk(", Error: Cann't allocate subdevice memory!\n"); ++ printk(", Error: Cann't allocate subdevice memory!\n"); + return ret; + } + +- rt_printk(".\n"); ++ printk(".\n"); + + subdev = 0; + +--- a/drivers/staging/comedi/drivers/aio_aio12_8.c ++++ b/drivers/staging/comedi/drivers/aio_aio12_8.c +@@ -110,7 +110,7 @@ static int aio_aio12_8_ai_read(struct co + !(inb(dev->iobase + AIO12_8_STATUS) & STATUS_ADC_EOC)) { + timeout--; + printk("timeout %d\n", timeout); +- comedi_udelay(1); ++ udelay(1); + } + if (timeout == 0) { + comedi_error(dev, "ADC timeout"); +--- a/drivers/staging/comedi/drivers/amplc_dio200.c ++++ b/drivers/staging/comedi/drivers/amplc_dio200.c +@@ -655,12 +655,12 @@ dio200_inttrig_start_intr(struct comedi_ + + subpriv = s->private; + +- comedi_spin_lock_irqsave(&subpriv->spinlock, flags); ++ spin_lock_irqsave(&subpriv->spinlock, flags); + s->async->inttrig = 0; + if (subpriv->active) { + event = dio200_start_intr(dev, s); + } +- comedi_spin_unlock_irqrestore(&subpriv->spinlock, flags); ++ spin_unlock_irqrestore(&subpriv->spinlock, flags); + + if (event) { + comedi_event(dev, s); +@@ -684,7 +684,7 @@ static int dio200_handle_read_intr(struc + + triggered = 0; + +- comedi_spin_lock_irqsave(&subpriv->spinlock, flags); ++ spin_lock_irqsave(&subpriv->spinlock, flags); + oldevents = s->async->events; + if (subpriv->has_int_sce) { + /* +@@ -773,7 +773,7 @@ static int dio200_handle_read_intr(struc + } + } + } +- comedi_spin_unlock_irqrestore(&subpriv->spinlock, flags); ++ spin_unlock_irqrestore(&subpriv->spinlock, flags); + + if (oldevents != s->async->events) { + comedi_event(dev, s); +@@ -790,11 +790,11 @@ static int dio200_subdev_intr_cancel(str + struct dio200_subdev_intr *subpriv = s->private; + unsigned long flags; + +- comedi_spin_lock_irqsave(&subpriv->spinlock, flags); ++ spin_lock_irqsave(&subpriv->spinlock, flags); + if (subpriv->active) { + dio200_stop_intr(dev, s); + } +- comedi_spin_unlock_irqrestore(&subpriv->spinlock, flags); ++ spin_unlock_irqrestore(&subpriv->spinlock, flags); + + return 0; + } +@@ -916,7 +916,7 @@ static int dio200_subdev_intr_cmd(struct + unsigned long flags; + int event = 0; + +- comedi_spin_lock_irqsave(&subpriv->spinlock, flags); ++ spin_lock_irqsave(&subpriv->spinlock, flags); + subpriv->active = 1; + + /* Set up end of acquisition. */ +@@ -942,7 +942,7 @@ static int dio200_subdev_intr_cmd(struct + event = dio200_start_intr(dev, s); + break; + } +- comedi_spin_unlock_irqrestore(&subpriv->spinlock, flags); ++ spin_unlock_irqrestore(&subpriv->spinlock, flags); + + if (event) { + comedi_event(dev, s); +@@ -1398,7 +1398,7 @@ static int dio200_attach(struct comedi_d + if (irq) { + unsigned long flags = share_irq ? IRQF_SHARED : 0; + +- if (comedi_request_irq(irq, dio200_interrupt, flags, ++ if (request_irq(irq, dio200_interrupt, flags, + DIO200_DRIVER_NAME, dev) >= 0) { + dev->irq = irq; + } else { +@@ -1444,7 +1444,7 @@ static int dio200_detach(struct comedi_d + DIO200_DRIVER_NAME); + + if (dev->irq) { +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + if (dev->subdevices) { + layout = thislayout; +--- a/drivers/staging/comedi/drivers/amplc_pc236.c ++++ b/drivers/staging/comedi/drivers/amplc_pc236.c +@@ -372,7 +372,7 @@ static int pc236_attach(struct comedi_de + if (irq) { + unsigned long flags = share_irq ? IRQF_SHARED : 0; + +- if (comedi_request_irq(irq, pc236_interrupt, flags, ++ if (request_irq(irq, pc236_interrupt, flags, + PC236_DRIVER_NAME, dev) >= 0) { + dev->irq = irq; + s->type = COMEDI_SUBD_DI; +@@ -421,7 +421,7 @@ static int pc236_detach(struct comedi_de + pc236_intr_disable(dev); + } + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + if (dev->subdevices) { + subdev_8255_cleanup(dev, dev->subdevices + 0); + } +@@ -471,13 +471,13 @@ static void pc236_intr_disable(struct co + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + devpriv->enable_irq = 0; + #ifdef CONFIG_COMEDI_PCI + if (devpriv->lcr_iobase) + outl(PCI236_INTR_DISABLE, devpriv->lcr_iobase + PLX9052_INTCSR); + #endif +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + } + + /* +@@ -489,13 +489,13 @@ static void pc236_intr_enable(struct com + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + devpriv->enable_irq = 1; + #ifdef CONFIG_COMEDI_PCI + if (devpriv->lcr_iobase) + outl(PCI236_INTR_ENABLE, devpriv->lcr_iobase + PLX9052_INTCSR); + #endif +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + } + + /* +@@ -510,7 +510,7 @@ static int pc236_intr_check(struct comed + int retval = 0; + unsigned long flags; + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + if (devpriv->enable_irq) { + retval = 1; + #ifdef CONFIG_COMEDI_PCI +@@ -527,7 +527,7 @@ static int pc236_intr_check(struct comed + } + #endif + } +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + return retval; + } +--- a/drivers/staging/comedi/drivers/amplc_pci224.c ++++ b/drivers/staging/comedi/drivers/amplc_pci224.c +@@ -542,7 +542,7 @@ static void pci224_ao_stop(struct comedi + return; + } + +- comedi_spin_lock_irqsave(&devpriv->ao_spinlock, flags); ++ spin_lock_irqsave(&devpriv->ao_spinlock, flags); + /* Kill the interrupts. */ + devpriv->intsce = 0; + outb(0, devpriv->iobase1 + PCI224_INT_SCE); +@@ -558,10 +558,10 @@ static void pci224_ao_stop(struct comedi + * routine. + */ + while (devpriv->intr_running && devpriv->intr_cpuid != THISCPU) { +- comedi_spin_unlock_irqrestore(&devpriv->ao_spinlock, flags); +- comedi_spin_lock_irqsave(&devpriv->ao_spinlock, flags); ++ spin_unlock_irqrestore(&devpriv->ao_spinlock, flags); ++ spin_lock_irqsave(&devpriv->ao_spinlock, flags); + } +- comedi_spin_unlock_irqrestore(&devpriv->ao_spinlock, flags); ++ spin_unlock_irqrestore(&devpriv->ao_spinlock, flags); + /* Reconfigure DAC for insn_write usage. */ + outw(0, dev->iobase + PCI224_DACCEN); /* Disable channels. */ + devpriv->daccon = COMBINE(devpriv->daccon, +@@ -587,14 +587,14 @@ static void pci224_ao_start(struct comed + comedi_event(dev, s); + } else { + /* Enable interrupts. */ +- comedi_spin_lock_irqsave(&devpriv->ao_spinlock, flags); ++ spin_lock_irqsave(&devpriv->ao_spinlock, flags); + if (cmd->stop_src == TRIG_EXT) { + devpriv->intsce = PCI224_INTR_EXT | PCI224_INTR_DAC; + } else { + devpriv->intsce = PCI224_INTR_DAC; + } + outb(devpriv->intsce, devpriv->iobase1 + PCI224_INT_SCE); +- comedi_spin_unlock_irqrestore(&devpriv->ao_spinlock, flags); ++ spin_unlock_irqrestore(&devpriv->ao_spinlock, flags); + } + } + +@@ -655,7 +655,7 @@ static void pci224_ao_handle_fifo(struct + /* Nothing left to put in the FIFO. */ + pci224_ao_stop(dev, s); + s->async->events |= COMEDI_CB_OVERFLOW; +- rt_printk(KERN_ERR "comedi%d: " ++ printk(KERN_ERR "comedi%d: " + "AO buffer underrun\n", dev->minor); + } + } +@@ -1155,16 +1155,16 @@ static int pci224_ao_cmd(struct comedi_d + */ + switch (cmd->start_src) { + case TRIG_INT: +- comedi_spin_lock_irqsave(&devpriv->ao_spinlock, flags); ++ spin_lock_irqsave(&devpriv->ao_spinlock, flags); + s->async->inttrig = &pci224_ao_inttrig_start; +- comedi_spin_unlock_irqrestore(&devpriv->ao_spinlock, flags); ++ spin_unlock_irqrestore(&devpriv->ao_spinlock, flags); + break; + case TRIG_EXT: + /* Enable external interrupt trigger to start acquisition. */ +- comedi_spin_lock_irqsave(&devpriv->ao_spinlock, flags); ++ spin_lock_irqsave(&devpriv->ao_spinlock, flags); + devpriv->intsce |= PCI224_INTR_EXT; + outb(devpriv->intsce, devpriv->iobase1 + PCI224_INT_SCE); +- comedi_spin_unlock_irqrestore(&devpriv->ao_spinlock, flags); ++ spin_unlock_irqrestore(&devpriv->ao_spinlock, flags); + break; + } + +@@ -1227,14 +1227,14 @@ static irqreturn_t pci224_interrupt(int + intstat = inb(devpriv->iobase1 + PCI224_INT_SCE) & 0x3F; + if (intstat) { + retval = 1; +- comedi_spin_lock_irqsave(&devpriv->ao_spinlock, flags); ++ spin_lock_irqsave(&devpriv->ao_spinlock, flags); + valid_intstat = devpriv->intsce & intstat; + /* Temporarily disable interrupt sources. */ + curenab = devpriv->intsce & ~intstat; + outb(curenab, devpriv->iobase1 + PCI224_INT_SCE); + devpriv->intr_running = 1; + devpriv->intr_cpuid = THISCPU; +- comedi_spin_unlock_irqrestore(&devpriv->ao_spinlock, flags); ++ spin_unlock_irqrestore(&devpriv->ao_spinlock, flags); + if (valid_intstat != 0) { + cmd = &s->async->cmd; + if (valid_intstat & PCI224_INTR_EXT) { +@@ -1250,13 +1250,13 @@ static irqreturn_t pci224_interrupt(int + } + } + /* Reenable interrupt sources. */ +- comedi_spin_lock_irqsave(&devpriv->ao_spinlock, flags); ++ spin_lock_irqsave(&devpriv->ao_spinlock, flags); + if (curenab != devpriv->intsce) { + outb(devpriv->intsce, + devpriv->iobase1 + PCI224_INT_SCE); + } + devpriv->intr_running = 0; +- comedi_spin_unlock_irqrestore(&devpriv->ao_spinlock, flags); ++ spin_unlock_irqrestore(&devpriv->ao_spinlock, flags); + } + return IRQ_RETVAL(retval); + } +@@ -1478,8 +1478,8 @@ static int pci224_attach(struct comedi_d + dev->board_name = thisboard->name; + + if (irq) { +- ret = comedi_request_irq(irq, pci224_interrupt, IRQF_SHARED, +- DRIVER_NAME, dev); ++ ret = request_irq(irq, pci224_interrupt, IRQF_SHARED, ++ DRIVER_NAME, dev); + if (ret < 0) { + printk(KERN_ERR "comedi%d: error! " + "unable to allocate irq %u\n", dev->minor, irq); +@@ -1515,7 +1515,7 @@ static int pci224_detach(struct comedi_d + printk(KERN_DEBUG "comedi%d: %s: detach\n", dev->minor, DRIVER_NAME); + + if (dev->irq) { +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + if (dev->subdevices) { + struct comedi_subdevice *s; +--- a/drivers/staging/comedi/drivers/amplc_pci230.c ++++ b/drivers/staging/comedi/drivers/amplc_pci230.c +@@ -876,8 +876,8 @@ static int pci230_attach(struct comedi_d + dev->iobase + PCI230_ADCCON); + + /* Register the interrupt handler. */ +- irq_hdl = comedi_request_irq(devpriv->pci_dev->irq, pci230_interrupt, +- IRQF_SHARED, "amplc_pci230", dev); ++ irq_hdl = request_irq(devpriv->pci_dev->irq, pci230_interrupt, ++ IRQF_SHARED, "amplc_pci230", dev); + if (irq_hdl < 0) { + printk("comedi%d: unable to register irq, " + "commands will not be available %d\n", dev->minor, +@@ -970,7 +970,7 @@ static int pci230_detach(struct comedi_d + subdev_8255_cleanup(dev, dev->subdevices + 2); + + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + + if (devpriv) { + if (devpriv->pci_dev) { +@@ -995,7 +995,7 @@ static int get_resources(struct comedi_d + + ok = 1; + claimed = 0; +- comedi_spin_lock_irqsave(&devpriv->res_spinlock, irqflags); ++ spin_lock_irqsave(&devpriv->res_spinlock, irqflags); + for (b = 1, i = 0; (i < NUM_RESOURCES) + && (res_mask != 0); b <<= 1, i++) { + if ((res_mask & b) != 0) { +@@ -1016,7 +1016,7 @@ static int get_resources(struct comedi_d + } + } + } +- comedi_spin_unlock_irqrestore(&devpriv->res_spinlock, irqflags); ++ spin_unlock_irqrestore(&devpriv->res_spinlock, irqflags); + return ok; + } + +@@ -1033,7 +1033,7 @@ static void put_resources(struct comedi_ + unsigned int b; + unsigned long irqflags; + +- comedi_spin_lock_irqsave(&devpriv->res_spinlock, irqflags); ++ spin_lock_irqsave(&devpriv->res_spinlock, irqflags); + for (b = 1, i = 0; (i < NUM_RESOURCES) + && (res_mask != 0); b <<= 1, i++) { + if ((res_mask & b) != 0) { +@@ -1043,7 +1043,7 @@ static void put_resources(struct comedi_ + } + } + } +- comedi_spin_unlock_irqrestore(&devpriv->res_spinlock, irqflags); ++ spin_unlock_irqrestore(&devpriv->res_spinlock, irqflags); + } + + static inline void put_one_resource(struct comedi_device *dev, unsigned int resource, +@@ -1145,12 +1145,12 @@ static int pci230_ai_rinsn(struct comedi + status = inw(dev->iobase + PCI230_ADCCON); + if (!(status & PCI230_ADC_FIFO_EMPTY)) + break; +- comedi_udelay(1); ++ udelay(1); + } + if (i == TIMEOUT) { +- /* rt_printk() should be used instead of printk() ++ /* printk() should be used instead of printk() + * whenever the code can be called from real-time. */ +- rt_printk("timeout\n"); ++ printk("timeout\n"); + return -ETIMEDOUT; + } + +@@ -1426,12 +1426,12 @@ static int pci230_ao_inttrig_scan_begin( + if (trig_num != 0) + return -EINVAL; + +- comedi_spin_lock_irqsave(&devpriv->ao_stop_spinlock, irqflags); ++ spin_lock_irqsave(&devpriv->ao_stop_spinlock, irqflags); + if (test_bit(AO_CMD_STARTED, &devpriv->state)) { + /* Perform scan. */ + if (devpriv->hwver < 2) { + /* Not using DAC FIFO. */ +- comedi_spin_unlock_irqrestore(&devpriv-> ++ spin_unlock_irqrestore(&devpriv-> + ao_stop_spinlock, irqflags); + pci230_handle_ao_nofifo(dev, s); + comedi_event(dev, s); +@@ -1439,12 +1439,12 @@ static int pci230_ao_inttrig_scan_begin( + /* Using DAC FIFO. */ + /* Read DACSWTRIG register to trigger conversion. */ + inw(dev->iobase + PCI230P2_DACSWTRIG); +- comedi_spin_unlock_irqrestore(&devpriv-> ++ spin_unlock_irqrestore(&devpriv-> + ao_stop_spinlock, irqflags); + } + /* Delay. Should driver be responsible for this? */ + /* XXX TODO: See if DAC busy bit can be used. */ +- comedi_udelay(8); ++ udelay(8); + } + + return 1; +@@ -1508,13 +1508,13 @@ static void pci230_ao_start(struct comed + if (devpriv->hwver < 2) { + /* Not using DAC FIFO. */ + /* Enable CT1 timer interrupt. */ +- comedi_spin_lock_irqsave(&devpriv->isr_spinlock, ++ spin_lock_irqsave(&devpriv->isr_spinlock, + irqflags); + devpriv->int_en |= PCI230_INT_ZCLK_CT1; + devpriv->ier |= PCI230_INT_ZCLK_CT1; + outb(devpriv->ier, + devpriv->iobase1 + PCI230_INT_SCE); +- comedi_spin_unlock_irqrestore(&devpriv-> ++ spin_unlock_irqrestore(&devpriv-> + isr_spinlock, irqflags); + } + /* Set CT1 gate high to start counting. */ +@@ -1527,12 +1527,12 @@ static void pci230_ao_start(struct comed + } + if (devpriv->hwver >= 2) { + /* Using DAC FIFO. Enable DAC FIFO interrupt. */ +- comedi_spin_lock_irqsave(&devpriv->isr_spinlock, ++ spin_lock_irqsave(&devpriv->isr_spinlock, + irqflags); + devpriv->int_en |= PCI230P2_INT_DAC; + devpriv->ier |= PCI230P2_INT_DAC; + outb(devpriv->ier, devpriv->iobase1 + PCI230_INT_SCE); +- comedi_spin_unlock_irqrestore(&devpriv->isr_spinlock, ++ spin_unlock_irqrestore(&devpriv->isr_spinlock, + irqflags); + } + } +@@ -2088,7 +2088,7 @@ static int pci230_ai_inttrig_convert(str + if (trig_num != 0) + return -EINVAL; + +- comedi_spin_lock_irqsave(&devpriv->ai_stop_spinlock, irqflags); ++ spin_lock_irqsave(&devpriv->ai_stop_spinlock, irqflags); + if (test_bit(AI_CMD_STARTED, &devpriv->state)) { + unsigned int delayus; + +@@ -2112,11 +2112,11 @@ static int pci230_ai_inttrig_convert(str + /* single-ended or PCI230+/260+ */ + delayus = 4; + } +- comedi_spin_unlock_irqrestore(&devpriv->ai_stop_spinlock, ++ spin_unlock_irqrestore(&devpriv->ai_stop_spinlock, + irqflags); +- comedi_udelay(delayus); ++ udelay(delayus); + } else { +- comedi_spin_unlock_irqrestore(&devpriv->ai_stop_spinlock, ++ spin_unlock_irqrestore(&devpriv->ai_stop_spinlock, + irqflags); + } + +@@ -2132,7 +2132,7 @@ static int pci230_ai_inttrig_scan_begin( + if (trig_num != 0) + return -EINVAL; + +- comedi_spin_lock_irqsave(&devpriv->ai_stop_spinlock, irqflags); ++ spin_lock_irqsave(&devpriv->ai_stop_spinlock, irqflags); + if (test_bit(AI_CMD_STARTED, &devpriv->state)) { + /* Trigger scan by waggling CT0 gate source. */ + zgat = GAT_CONFIG(0, GAT_GND); +@@ -2140,7 +2140,7 @@ static int pci230_ai_inttrig_scan_begin( + zgat = GAT_CONFIG(0, GAT_VCC); + outb(zgat, devpriv->iobase1 + PCI230_ZGAT_SCE); + } +- comedi_spin_unlock_irqrestore(&devpriv->ai_stop_spinlock, irqflags); ++ spin_unlock_irqrestore(&devpriv->ai_stop_spinlock, irqflags); + + return 1; + } +@@ -2160,11 +2160,11 @@ static void pci230_ai_start(struct comed + comedi_event(dev, s); + } else { + /* Enable ADC FIFO trigger level interrupt. */ +- comedi_spin_lock_irqsave(&devpriv->isr_spinlock, irqflags); ++ spin_lock_irqsave(&devpriv->isr_spinlock, irqflags); + devpriv->int_en |= PCI230_INT_ADC; + devpriv->ier |= PCI230_INT_ADC; + outb(devpriv->ier, devpriv->iobase1 + PCI230_INT_SCE); +- comedi_spin_unlock_irqrestore(&devpriv->isr_spinlock, irqflags); ++ spin_unlock_irqrestore(&devpriv->isr_spinlock, irqflags); + + /* Update conversion trigger source which is currently set + * to CT2 output, which is currently stuck high. */ +@@ -2426,7 +2426,7 @@ static int pci230_ai_cmd(struct comedi_d + * FIFO reset (above) and the second FIFO reset (below). Setting the + * channel gains and scan list _before_ the first FIFO reset also + * helps, though only slightly. */ +- comedi_udelay(25); ++ udelay(25); + + /* Reset FIFO again. */ + outw(adccon | PCI230_ADC_FIFO_RESET, dev->iobase + PCI230_ADCCON); +@@ -2575,7 +2575,7 @@ static irqreturn_t pci230_interrupt(int + return IRQ_NONE; + } + +- comedi_spin_lock_irqsave(&devpriv->isr_spinlock, irqflags); ++ spin_lock_irqsave(&devpriv->isr_spinlock, irqflags); + valid_status_int = devpriv->int_en & status_int; + /* Disable triggered interrupts. + * (Only those interrupts that need re-enabling, are, later in the +@@ -2584,7 +2584,7 @@ static irqreturn_t pci230_interrupt(int + outb(devpriv->ier, devpriv->iobase1 + PCI230_INT_SCE); + devpriv->intr_running = 1; + devpriv->intr_cpuid = THISCPU; +- comedi_spin_unlock_irqrestore(&devpriv->isr_spinlock, irqflags); ++ spin_unlock_irqrestore(&devpriv->isr_spinlock, irqflags); + + /* + * Check the source of interrupt and handle it. +@@ -2613,13 +2613,13 @@ static irqreturn_t pci230_interrupt(int + } + + /* Reenable interrupts. */ +- comedi_spin_lock_irqsave(&devpriv->isr_spinlock, irqflags); ++ spin_lock_irqsave(&devpriv->isr_spinlock, irqflags); + if (devpriv->ier != devpriv->int_en) { + devpriv->ier = devpriv->int_en; + outb(devpriv->ier, devpriv->iobase1 + PCI230_INT_SCE); + } + devpriv->intr_running = 0; +- comedi_spin_unlock_irqrestore(&devpriv->isr_spinlock, irqflags); ++ spin_unlock_irqrestore(&devpriv->isr_spinlock, irqflags); + + return IRQ_HANDLED; + } +@@ -2870,9 +2870,9 @@ static void pci230_ao_stop(struct comedi + int started; + struct comedi_cmd *cmd; + +- comedi_spin_lock_irqsave(&devpriv->ao_stop_spinlock, irqflags); ++ spin_lock_irqsave(&devpriv->ao_stop_spinlock, irqflags); + started = test_and_clear_bit(AO_CMD_STARTED, &devpriv->state); +- comedi_spin_unlock_irqrestore(&devpriv->ao_stop_spinlock, irqflags); ++ spin_unlock_irqrestore(&devpriv->ao_stop_spinlock, irqflags); + if (!started) { + return; + } +@@ -2893,17 +2893,17 @@ static void pci230_ao_stop(struct comedi + } + /* Disable interrupt and wait for interrupt routine to finish running + * unless we are called from the interrupt routine. */ +- comedi_spin_lock_irqsave(&devpriv->isr_spinlock, irqflags); ++ spin_lock_irqsave(&devpriv->isr_spinlock, irqflags); + devpriv->int_en &= ~intsrc; + while (devpriv->intr_running && devpriv->intr_cpuid != THISCPU) { +- comedi_spin_unlock_irqrestore(&devpriv->isr_spinlock, irqflags); +- comedi_spin_lock_irqsave(&devpriv->isr_spinlock, irqflags); ++ spin_unlock_irqrestore(&devpriv->isr_spinlock, irqflags); ++ spin_lock_irqsave(&devpriv->isr_spinlock, irqflags); + } + if (devpriv->ier != devpriv->int_en) { + devpriv->ier = devpriv->int_en; + outb(devpriv->ier, devpriv->iobase1 + PCI230_INT_SCE); + } +- comedi_spin_unlock_irqrestore(&devpriv->isr_spinlock, irqflags); ++ spin_unlock_irqrestore(&devpriv->isr_spinlock, irqflags); + + if (devpriv->hwver >= 2) { + /* Using DAC FIFO. Reset FIFO, clear underrun error, +@@ -2930,9 +2930,9 @@ static void pci230_ai_stop(struct comedi + struct comedi_cmd *cmd; + int started; + +- comedi_spin_lock_irqsave(&devpriv->ai_stop_spinlock, irqflags); ++ spin_lock_irqsave(&devpriv->ai_stop_spinlock, irqflags); + started = test_and_clear_bit(AI_CMD_STARTED, &devpriv->state); +- comedi_spin_unlock_irqrestore(&devpriv->ai_stop_spinlock, irqflags); ++ spin_unlock_irqrestore(&devpriv->ai_stop_spinlock, irqflags); + if (!started) { + return; + } +@@ -2947,19 +2947,19 @@ static void pci230_ai_stop(struct comedi + pci230_cancel_ct(dev, 0); + } + +- comedi_spin_lock_irqsave(&devpriv->isr_spinlock, irqflags); ++ spin_lock_irqsave(&devpriv->isr_spinlock, irqflags); + /* Disable ADC interrupt and wait for interrupt routine to finish + * running unless we are called from the interrupt routine. */ + devpriv->int_en &= ~PCI230_INT_ADC; + while (devpriv->intr_running && devpriv->intr_cpuid != THISCPU) { +- comedi_spin_unlock_irqrestore(&devpriv->isr_spinlock, irqflags); +- comedi_spin_lock_irqsave(&devpriv->isr_spinlock, irqflags); ++ spin_unlock_irqrestore(&devpriv->isr_spinlock, irqflags); ++ spin_lock_irqsave(&devpriv->isr_spinlock, irqflags); + } + if (devpriv->ier != devpriv->int_en) { + devpriv->ier = devpriv->int_en; + outb(devpriv->ier, devpriv->iobase1 + PCI230_INT_SCE); + } +- comedi_spin_unlock_irqrestore(&devpriv->isr_spinlock, irqflags); ++ spin_unlock_irqrestore(&devpriv->isr_spinlock, irqflags); + + /* Reset FIFO, disable FIFO and set start conversion source to none. + * Keep se/diff and bip/uni settings */ +--- a/drivers/staging/comedi/drivers.c ++++ b/drivers/staging/comedi/drivers.c +@@ -554,7 +554,7 @@ unsigned int comedi_buf_munge(struct com + + block_size = num_bytes - count; + if (block_size < 0) { +- rt_printk("%s: %s: bug! block_size is negative\n", ++ printk("%s: %s: bug! block_size is negative\n", + __FILE__, __func__); + break; + } +@@ -633,8 +633,7 @@ unsigned comedi_buf_write_free(struct co + { + if ((int)(async->buf_write_count + nbytes - + async->buf_write_alloc_count) > 0) { +- rt_printk +- ("comedi: attempted to write-free more bytes than have been write-allocated.\n"); ++ printk("comedi: attempted to write-free more bytes than have been write-allocated.\n"); + nbytes = async->buf_write_alloc_count - async->buf_write_count; + } + async->buf_write_count += nbytes; +@@ -667,8 +666,7 @@ unsigned comedi_buf_read_free(struct com + smp_mb(); + if ((int)(async->buf_read_count + nbytes - + async->buf_read_alloc_count) > 0) { +- rt_printk +- ("comedi: attempted to read-free more bytes than have been read-allocated.\n"); ++ printk("comedi: attempted to read-free more bytes than have been read-allocated.\n"); + nbytes = async->buf_read_alloc_count - async->buf_read_count; + } + async->buf_read_count += nbytes; +--- a/drivers/staging/comedi/drivers/cb_das16_cs.c ++++ b/drivers/staging/comedi/drivers/cb_das16_cs.c +@@ -187,8 +187,8 @@ static int das16cs_attach(struct comedi_ + } + printk("\n"); + +- ret = comedi_request_irq(link->irq.AssignedIRQ, das16cs_interrupt, +- IRQF_SHARED, "cb_das16_cs", dev); ++ ret = request_irq(link->irq.AssignedIRQ, das16cs_interrupt, ++ IRQF_SHARED, "cb_das16_cs", dev); + if (ret < 0) { + return ret; + } +@@ -270,7 +270,7 @@ static int das16cs_detach(struct comedi_ + printk("comedi%d: das16cs: remove\n", dev->minor); + + if (dev->irq) { +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + + return 0; +@@ -503,7 +503,7 @@ static int das16cs_ao_winsn(struct comed + d = data[i]; + + outw(devpriv->status1, dev->iobase + 4); +- comedi_udelay(1); ++ udelay(1); + + status1 = devpriv->status1 & ~0xf; + if (chan) +@@ -513,17 +513,17 @@ static int das16cs_ao_winsn(struct comed + + /* printk("0x%04x\n",status1);*/ + outw(status1, dev->iobase + 4); +- comedi_udelay(1); ++ udelay(1); + + for (bit = 15; bit >= 0; bit--) { + int b = (d >> bit) & 0x1; + b <<= 1; + /* printk("0x%04x\n",status1 | b | 0x0000);*/ + outw(status1 | b | 0x0000, dev->iobase + 4); +- comedi_udelay(1); ++ udelay(1); + /* printk("0x%04x\n",status1 | b | 0x0004);*/ + outw(status1 | b | 0x0004, dev->iobase + 4); +- comedi_udelay(1); ++ udelay(1); + } + /* make high both DAC0CS and DAC1CS to load + new data and update analog output*/ +--- a/drivers/staging/comedi/drivers/cb_pcidas64.c ++++ b/drivers/staging/comedi/drivers/cb_pcidas64.c +@@ -98,7 +98,7 @@ TODO: + /* #define PCIDAS64_DEBUG enable debugging code */ + + #ifdef PCIDAS64_DEBUG +-#define DEBUG_PRINT(format, args...) rt_printk(format , ## args) ++#define DEBUG_PRINT(format, args...) printk(format , ## args) + #else + #define DEBUG_PRINT(format, args...) + #endif +@@ -1535,7 +1535,7 @@ static void init_stc_registers(struct co + uint16_t bits; + unsigned long flags; + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + + /* bit should be set for 6025, although docs say boards with <= 16 chans should be cleared XXX */ + if (1) +@@ -1556,7 +1556,7 @@ static void init_stc_registers(struct co + writew(0, priv(dev)->main_iobase + DAQ_SYNC_REG); + writew(0, priv(dev)->main_iobase + CALIBRATION_REG); + +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + /* set fifos to maximum size */ + priv(dev)->fifo_size_bits |= DAC_FIFO_BITS; +@@ -1794,7 +1794,7 @@ static int attach(struct comedi_device * + init_plx9080(dev); + init_stc_registers(dev); + /* get irq */ +- if (comedi_request_irq(pcidev->irq, handle_interrupt, IRQF_SHARED, ++ if (request_irq(pcidev->irq, handle_interrupt, IRQF_SHARED, + "cb_pcidas64", dev)) { + printk(" unable to allocate irq %u\n", pcidev->irq); + return -EINVAL; +@@ -1825,7 +1825,7 @@ static int detach(struct comedi_device * + printk("comedi%d: cb_pcidas: remove\n", dev->minor); + + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + if (priv(dev)) { + if (priv(dev)->hw_dev) { + if (priv(dev)->plx9080_iobase) { +@@ -1895,14 +1895,14 @@ static int ai_rinsn(struct comedi_device + /* 4020 generates dac done interrupts even though they are disabled */ + disable_ai_pacing(dev); + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + if (insn->chanspec & CR_ALT_FILTER) + priv(dev)->adc_control1_bits |= ADC_DITHER_BIT; + else + priv(dev)->adc_control1_bits &= ~ADC_DITHER_BIT; + writew(priv(dev)->adc_control1_bits, + priv(dev)->main_iobase + ADC_CONTROL1_REG); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + if (board(dev)->layout != LAYOUT_4020) { + /* use internal queue */ +@@ -1995,12 +1995,12 @@ static int ai_rinsn(struct comedi_device + if (pipe_full_bits(bits)) + break; + } +- comedi_udelay(1); ++ udelay(1); + } + DEBUG_PRINT(" looped %i times waiting for data\n", i); + if (i == timeout) { + comedi_error(dev, " analog input read insn timed out"); +- rt_printk(" status 0x%x\n", bits); ++ printk(" status 0x%x\n", bits); + return -ETIME; + } + if (board(dev)->layout == LAYOUT_4020) +@@ -2357,11 +2357,11 @@ static void disable_ai_pacing(struct com + + disable_ai_interrupts(dev); + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + priv(dev)->adc_control1_bits &= ~ADC_SW_GATE_BIT; + writew(priv(dev)->adc_control1_bits, + priv(dev)->main_iobase + ADC_CONTROL1_REG); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + /* disable pacing, triggering, etc */ + writew(ADC_DMA_DISABLE_BIT | ADC_SOFT_GATE_BITS | ADC_GATE_LEVEL_BIT, +@@ -2372,14 +2372,14 @@ static void disable_ai_interrupts(struct + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + priv(dev)->intr_enable_bits &= + ~EN_ADC_INTR_SRC_BIT & ~EN_ADC_DONE_INTR_BIT & + ~EN_ADC_ACTIVE_INTR_BIT & ~EN_ADC_STOP_INTR_BIT & + ~EN_ADC_OVERRUN_BIT & ~ADC_INTR_SRC_MASK; + writew(priv(dev)->intr_enable_bits, + priv(dev)->main_iobase + INTR_ENABLE_REG); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + DEBUG_PRINT("intr enable bits 0x%x\n", priv(dev)->intr_enable_bits); + } +@@ -2397,12 +2397,12 @@ static void enable_ai_interrupts(struct + if (board(dev)->layout != LAYOUT_4020) + bits |= ADC_INTR_EOSCAN_BITS | EN_ADC_INTR_SRC_BIT; + } +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + priv(dev)->intr_enable_bits |= bits; + writew(priv(dev)->intr_enable_bits, + priv(dev)->main_iobase + INTR_ENABLE_REG); + DEBUG_PRINT("intr enable bits 0x%x\n", priv(dev)->intr_enable_bits); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + } + + static uint32_t ai_convert_counter_6xxx(const struct comedi_device *dev, +@@ -2488,7 +2488,7 @@ static inline void dma_start_sync(struct + unsigned long flags; + + /* spinlock for plx dma control/status reg */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + if (channel) + writeb(PLX_DMA_EN_BIT | PLX_DMA_START_BIT | + PLX_CLEAR_DMA_INTR_BIT, +@@ -2497,7 +2497,7 @@ static inline void dma_start_sync(struct + writeb(PLX_DMA_EN_BIT | PLX_DMA_START_BIT | + PLX_CLEAR_DMA_INTR_BIT, + priv(dev)->plx9080_iobase + PLX_DMA0_CS_REG); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + } + + static void set_ai_pacing(struct comedi_device *dev, struct comedi_cmd *cmd) +@@ -2701,7 +2701,7 @@ static int ai_cmd(struct comedi_device * + + enable_ai_interrupts(dev, cmd); + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + /* set mode, allow conversions through software gate */ + priv(dev)->adc_control1_bits |= ADC_SW_GATE_BIT; + priv(dev)->adc_control1_bits &= ~ADC_DITHER_BIT; +@@ -2728,7 +2728,7 @@ static int ai_cmd(struct comedi_device * + writew(priv(dev)->adc_control1_bits, + priv(dev)->main_iobase + ADC_CONTROL1_REG); + DEBUG_PRINT("control1 bits 0x%x\n", priv(dev)->adc_control1_bits); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + /* clear adc buffer */ + writew(0, priv(dev)->main_iobase + ADC_BUFFER_CLEAR_REG); +@@ -2762,7 +2762,7 @@ static int ai_cmd(struct comedi_device * + writew(bits, priv(dev)->main_iobase + DAQ_ATRIG_LOW_4020_REG); + } + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + + /* enable pacing, triggering, etc */ + bits = ADC_ENABLE_BIT | ADC_SOFT_GATE_BITS | ADC_GATE_LEVEL_BIT; +@@ -2782,7 +2782,7 @@ static int ai_cmd(struct comedi_device * + + priv(dev)->ai_cmd_running = 1; + +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + /* start aquisition */ + if (cmd->start_src == TRIG_NOW) { +@@ -2842,7 +2842,7 @@ static void pio_drain_ai_fifo_16(struct + } + + if (num_samples < 0) { +- rt_printk(" cb_pcidas64: bug! num_samples < 0\n"); ++ printk(" cb_pcidas64: bug! num_samples < 0\n"); + break; + } + +@@ -2964,7 +2964,7 @@ void handle_ai_interrupt(struct comedi_d + async->events |= COMEDI_CB_EOA | COMEDI_CB_ERROR; + } + /* spin lock makes sure noone else changes plx dma control reg */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + dma1_status = readb(priv(dev)->plx9080_iobase + PLX_DMA1_CS_REG); + if (plx_status & ICS_DMA1_A) { /* dma chan 1 interrupt */ + writeb((dma1_status & PLX_DMA_EN_BIT) | PLX_CLEAR_DMA_INTR_BIT, +@@ -2976,7 +2976,7 @@ void handle_ai_interrupt(struct comedi_d + } + DEBUG_PRINT(" cleared dma ch1 interrupt\n"); + } +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + if (status & ADC_DONE_BIT) + DEBUG_PRINT("adc done interrupt\n"); +@@ -2987,12 +2987,12 @@ void handle_ai_interrupt(struct comedi_d + (status & ADC_INTR_PENDING_BIT) && + (board(dev)->layout != LAYOUT_4020))) { + DEBUG_PRINT("pio fifo drain\n"); +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + if (priv(dev)->ai_cmd_running) { +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + pio_drain_ai_fifo(dev); + } else +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + } + /* if we are have all the data, then quit */ + if ((cmd->stop_src == TRIG_COUNT && priv(dev)->ai_count <= 0) || +@@ -3087,7 +3087,7 @@ static void handle_ao_interrupt(struct c + cmd = &async->cmd; + + /* spin lock makes sure noone else changes plx dma control reg */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + dma0_status = readb(priv(dev)->plx9080_iobase + PLX_DMA0_CS_REG); + if (plx_status & ICS_DMA0_A) { /* dma chan 0 interrupt */ + if ((dma0_status & PLX_DMA_EN_BIT) +@@ -3097,7 +3097,7 @@ static void handle_ao_interrupt(struct c + else + writeb(PLX_CLEAR_DMA_INTR_BIT, + priv(dev)->plx9080_iobase + PLX_DMA0_CS_REG); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + DEBUG_PRINT("dma0 status 0x%x\n", dma0_status); + if (dma0_status & PLX_DMA_EN_BIT) { + load_ao_dma(dev, cmd); +@@ -3107,7 +3107,7 @@ static void handle_ao_interrupt(struct c + } + DEBUG_PRINT(" cleared dma ch0 interrupt\n"); + } else +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + if ((status & DAC_DONE_BIT)) { + async->events |= COMEDI_CB_EOA; +@@ -3164,24 +3164,24 @@ void abort_dma(struct comedi_device *dev + unsigned long flags; + + /* spinlock for plx dma control/status reg */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + + plx9080_abort_dma(priv(dev)->plx9080_iobase, channel); + +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + } + + static int ai_cancel(struct comedi_device *dev, struct comedi_subdevice *s) + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + if (priv(dev)->ai_cmd_running == 0) { +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + return 0; + } + priv(dev)->ai_cmd_running = 0; +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + disable_ai_pacing(dev); + +@@ -3722,12 +3722,12 @@ static void ad8402_write(struct comedi_d + static const int bitstream_length = 10; + unsigned int bit, register_bits; + unsigned int bitstream = ((channel & 0x3) << 8) | (value & 0xff); +- static const int ad8402_comedi_udelay = 1; ++ static const int ad8402_udelay = 1; + + priv(dev)->ad8402_state[channel] = value; + + register_bits = SELECT_8402_64XX_BIT; +- comedi_udelay(ad8402_comedi_udelay); ++ udelay(ad8402_udelay); + writew(register_bits, priv(dev)->main_iobase + CALIBRATION_REG); + + for (bit = 1 << (bitstream_length - 1); bit; bit >>= 1) { +@@ -3735,14 +3735,14 @@ static void ad8402_write(struct comedi_d + register_bits |= SERIAL_DATA_IN_BIT; + else + register_bits &= ~SERIAL_DATA_IN_BIT; +- comedi_udelay(ad8402_comedi_udelay); ++ udelay(ad8402_udelay); + writew(register_bits, priv(dev)->main_iobase + CALIBRATION_REG); +- comedi_udelay(ad8402_comedi_udelay); ++ udelay(ad8402_udelay); + writew(register_bits | SERIAL_CLOCK_BIT, + priv(dev)->main_iobase + CALIBRATION_REG); + } + +- comedi_udelay(ad8402_comedi_udelay); ++ udelay(ad8402_udelay); + writew(0, priv(dev)->main_iobase + CALIBRATION_REG); + } + +@@ -3784,32 +3784,32 @@ static uint16_t read_eeprom(struct comed + priv(dev)->plx9080_iobase + PLX_CONTROL_REG; + uint16_t value; + static const int value_length = 16; +- static const int eeprom_comedi_udelay = 1; ++ static const int eeprom_udelay = 1; + +- comedi_udelay(eeprom_comedi_udelay); ++ udelay(eeprom_udelay); + priv(dev)->plx_control_bits &= ~CTL_EE_CLK & ~CTL_EE_CS; + /* make sure we don't send anything to the i2c bus on 4020 */ + priv(dev)->plx_control_bits |= CTL_USERO; + writel(priv(dev)->plx_control_bits, plx_control_addr); + /* activate serial eeprom */ +- comedi_udelay(eeprom_comedi_udelay); ++ udelay(eeprom_udelay); + priv(dev)->plx_control_bits |= CTL_EE_CS; + writel(priv(dev)->plx_control_bits, plx_control_addr); + + /* write read command and desired memory address */ + for (bit = 1 << (bitstream_length - 1); bit; bit >>= 1) { + /* set bit to be written */ +- comedi_udelay(eeprom_comedi_udelay); ++ udelay(eeprom_udelay); + if (bitstream & bit) + priv(dev)->plx_control_bits |= CTL_EE_W; + else + priv(dev)->plx_control_bits &= ~CTL_EE_W; + writel(priv(dev)->plx_control_bits, plx_control_addr); + /* clock in bit */ +- comedi_udelay(eeprom_comedi_udelay); ++ udelay(eeprom_udelay); + priv(dev)->plx_control_bits |= CTL_EE_CLK; + writel(priv(dev)->plx_control_bits, plx_control_addr); +- comedi_udelay(eeprom_comedi_udelay); ++ udelay(eeprom_udelay); + priv(dev)->plx_control_bits &= ~CTL_EE_CLK; + writel(priv(dev)->plx_control_bits, plx_control_addr); + } +@@ -3817,19 +3817,19 @@ static uint16_t read_eeprom(struct comed + value = 0; + for (bit = 1 << (value_length - 1); bit; bit >>= 1) { + /* clock out bit */ +- comedi_udelay(eeprom_comedi_udelay); ++ udelay(eeprom_udelay); + priv(dev)->plx_control_bits |= CTL_EE_CLK; + writel(priv(dev)->plx_control_bits, plx_control_addr); +- comedi_udelay(eeprom_comedi_udelay); ++ udelay(eeprom_udelay); + priv(dev)->plx_control_bits &= ~CTL_EE_CLK; + writel(priv(dev)->plx_control_bits, plx_control_addr); +- comedi_udelay(eeprom_comedi_udelay); ++ udelay(eeprom_udelay); + if (readl(plx_control_addr) & CTL_EE_R) + value |= bit; + } + + /* deactivate eeprom serial input */ +- comedi_udelay(eeprom_comedi_udelay); ++ udelay(eeprom_udelay); + priv(dev)->plx_control_bits &= ~CTL_EE_CS; + writel(priv(dev)->plx_control_bits, plx_control_addr); + +@@ -4018,17 +4018,17 @@ static int caldac_8800_write(struct come + register_bits = 0; + if (bitstream & bit) + register_bits |= SERIAL_DATA_IN_BIT; +- comedi_udelay(caldac_8800_udelay); ++ udelay(caldac_8800_udelay); + writew(register_bits, priv(dev)->main_iobase + CALIBRATION_REG); + register_bits |= SERIAL_CLOCK_BIT; +- comedi_udelay(caldac_8800_udelay); ++ udelay(caldac_8800_udelay); + writew(register_bits, priv(dev)->main_iobase + CALIBRATION_REG); + } +- comedi_udelay(caldac_8800_udelay); ++ udelay(caldac_8800_udelay); + writew(SELECT_8800_BIT, priv(dev)->main_iobase + CALIBRATION_REG); +- comedi_udelay(caldac_8800_udelay); ++ udelay(caldac_8800_udelay); + writew(0, priv(dev)->main_iobase + CALIBRATION_REG); +- comedi_udelay(caldac_8800_udelay); ++ udelay(caldac_8800_udelay); + return 0; + } + +@@ -4094,8 +4094,8 @@ static int caldac_i2c_write(struct comed + } + + /* Their i2c requires a huge delay on setting clock or data high for some reason */ +-static const int i2c_high_comedi_udelay = 1000; +-static const int i2c_low_comedi_udelay = 10; ++static const int i2c_high_udelay = 1000; ++static const int i2c_low_udelay = 10; + + /* set i2c data line high or low */ + static void i2c_set_sda(struct comedi_device *dev, int state) +@@ -4107,12 +4107,12 @@ static void i2c_set_sda(struct comedi_de + /* set data line high */ + priv(dev)->plx_control_bits &= ~data_bit; + writel(priv(dev)->plx_control_bits, plx_control_addr); +- comedi_udelay(i2c_high_comedi_udelay); ++ udelay(i2c_high_udelay); + } else /* set data line low */ + { + priv(dev)->plx_control_bits |= data_bit; + writel(priv(dev)->plx_control_bits, plx_control_addr); +- comedi_udelay(i2c_low_comedi_udelay); ++ udelay(i2c_low_udelay); + } + } + +@@ -4126,12 +4126,12 @@ static void i2c_set_scl(struct comedi_de + /* set clock line high */ + priv(dev)->plx_control_bits &= ~clock_bit; + writel(priv(dev)->plx_control_bits, plx_control_addr); +- comedi_udelay(i2c_high_comedi_udelay); ++ udelay(i2c_high_udelay); + } else /* set clock line low */ + { + priv(dev)->plx_control_bits |= clock_bit; + writel(priv(dev)->plx_control_bits, plx_control_addr); +- comedi_udelay(i2c_low_comedi_udelay); ++ udelay(i2c_low_udelay); + } + } + +--- a/drivers/staging/comedi/drivers/cb_pcidas.c ++++ b/drivers/staging/comedi/drivers/cb_pcidas.c +@@ -588,7 +588,7 @@ static int cb_pcidas_attach(struct comed + devpriv->s5933_config + AMCC_OP_REG_INTCSR); + + /* get irq */ +- if (comedi_request_irq(devpriv->pci_dev->irq, cb_pcidas_interrupt, ++ if (request_irq(devpriv->pci_dev->irq, cb_pcidas_interrupt, + IRQF_SHARED, "cb_pcidas", dev)) { + printk(" unable to allocate irq %d\n", devpriv->pci_dev->irq); + return -EINVAL; +@@ -727,14 +727,14 @@ static int cb_pcidas_detach(struct comed + outl(INTCSR_INBOX_INTR_STATUS, + devpriv->s5933_config + AMCC_OP_REG_INTCSR); + #ifdef CB_PCIDAS_DEBUG +- rt_printk("detaching, incsr is 0x%x\n", ++ printk("detaching, incsr is 0x%x\n", + inl(devpriv->s5933_config + + AMCC_OP_REG_INTCSR)); + #endif + } + } + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + if (dev->subdevices) + subdev_8255_cleanup(dev, dev->subdevices + 2); + if (devpriv && devpriv->pci_dev) { +@@ -843,13 +843,13 @@ static int cb_pcidas_ao_nofifo_winsn(str + + /* set channel and range */ + channel = CR_CHAN(insn->chanspec); +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + devpriv->ao_control_bits &= + ~DAC_MODE_UPDATE_BOTH & ~DAC_RANGE_MASK(channel); + devpriv->ao_control_bits |= + DACEN | DAC_RANGE(channel, CR_RANGE(insn->chanspec)); + outw(devpriv->ao_control_bits, devpriv->control_status + DAC_CSR); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + /* remember value for readback */ + devpriv->ao_value[channel] = data[0]; +@@ -871,7 +871,7 @@ static int cb_pcidas_ao_fifo_winsn(struc + + /* set channel and range */ + channel = CR_CHAN(insn->chanspec); +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + devpriv->ao_control_bits &= + ~DAC_CHAN_EN(0) & ~DAC_CHAN_EN(1) & ~DAC_RANGE_MASK(channel) & + ~DAC_PACER_MASK; +@@ -879,7 +879,7 @@ static int cb_pcidas_ao_fifo_winsn(struc + DACEN | DAC_RANGE(channel, + CR_RANGE(insn->chanspec)) | DAC_CHAN_EN(channel) | DAC_START; + outw(devpriv->ao_control_bits, devpriv->control_status + DAC_CSR); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + /* remember value for readback */ + devpriv->ao_value[channel] = data[0]; +@@ -940,13 +940,13 @@ static int dac08_write(struct comedi_dev + + outw(cal_enable_bits(dev) | (value & 0xff), + devpriv->control_status + CALIBRATION_REG); +- comedi_udelay(1); ++ udelay(1); + outw(cal_enable_bits(dev) | SELECT_DAC08_BIT | (value & 0xff), + devpriv->control_status + CALIBRATION_REG); +- comedi_udelay(1); ++ udelay(1); + outw(cal_enable_bits(dev) | (value & 0xff), + devpriv->control_status + CALIBRATION_REG); +- comedi_udelay(1); ++ udelay(1); + + return 1; + } +@@ -1193,7 +1193,7 @@ static int cb_pcidas_ai_cmd(struct comed + outw(bits, devpriv->control_status + ADCMUX_CONT); + + #ifdef CB_PCIDAS_DEBUG +- rt_printk("comedi: sent 0x%x to adcmux control\n", bits); ++ printk("comedi: sent 0x%x to adcmux control\n", bits); + #endif + + /* load counters */ +@@ -1209,7 +1209,7 @@ static int cb_pcidas_ai_cmd(struct comed + devpriv->count = cmd->chanlist_len * cmd->stop_arg; + } + /* enable interrupts */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + devpriv->adc_fifo_bits |= INTE; + devpriv->adc_fifo_bits &= ~INT_MASK; + if (cmd->flags & TRIG_WAKE_EOS) { +@@ -1221,12 +1221,12 @@ static int cb_pcidas_ai_cmd(struct comed + devpriv->adc_fifo_bits |= INT_FHF; /* interrupt fifo half full */ + } + #ifdef CB_PCIDAS_DEBUG +- rt_printk("comedi: adc_fifo_bits are 0x%x\n", devpriv->adc_fifo_bits); ++ printk("comedi: adc_fifo_bits are 0x%x\n", devpriv->adc_fifo_bits); + #endif + /* enable (and clear) interrupts */ + outw(devpriv->adc_fifo_bits | EOAI | INT | LADFUL, + devpriv->control_status + INT_ADCFIFO); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + /* set start trigger and burst mode */ + bits = 0; +@@ -1242,7 +1242,7 @@ static int cb_pcidas_ai_cmd(struct comed + bits |= BURSTE; + outw(bits, devpriv->control_status + TRIG_CONTSTAT); + #ifdef CB_PCIDAS_DEBUG +- rt_printk("comedi: sent 0x%x to trig control\n", bits); ++ printk("comedi: sent 0x%x to trig control\n", bits); + #endif + + return 0; +@@ -1369,7 +1369,7 @@ static int cb_pcidas_ao_cmd(struct comed + unsigned long flags; + + /* set channel limits, gain */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + for (i = 0; i < cmd->chanlist_len; i++) { + /* enable channel */ + devpriv->ao_control_bits |= +@@ -1381,7 +1381,7 @@ static int cb_pcidas_ao_cmd(struct comed + + /* disable analog out before settings pacer source and count values */ + outw(devpriv->ao_control_bits, devpriv->control_status + DAC_CSR); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + /* clear fifo */ + outw(0, devpriv->ao_registers + DACFIFOCLR); +@@ -1403,7 +1403,7 @@ static int cb_pcidas_ao_cmd(struct comed + devpriv->ao_count = cmd->chanlist_len * cmd->stop_arg; + } + /* set pacer source */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + switch (cmd->scan_begin_src) { + case TRIG_TIMER: + devpriv->ao_control_bits |= DAC_PACER_INT; +@@ -1412,12 +1412,12 @@ static int cb_pcidas_ao_cmd(struct comed + devpriv->ao_control_bits |= DAC_PACER_EXT_RISE; + break; + default: +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + comedi_error(dev, "error setting dac pacer source"); + return -1; + break; + } +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + async->inttrig = cb_pcidas_ao_inttrig; + +@@ -1451,10 +1451,10 @@ static int cb_pcidas_ao_inttrig(struct c + outsw(devpriv->ao_registers + DACDATA, devpriv->ao_buffer, num_bytes); + + /* enable dac half-full and empty interrupts */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + devpriv->adc_fifo_bits |= DAEMIE | DAHFIE; + #ifdef CB_PCIDAS_DEBUG +- rt_printk("comedi: adc_fifo_bits are 0x%x\n", devpriv->adc_fifo_bits); ++ printk("comedi: adc_fifo_bits are 0x%x\n", devpriv->adc_fifo_bits); + #endif + /* enable and clear interrupts */ + outw(devpriv->adc_fifo_bits | DAEMI | DAHFI, +@@ -1464,10 +1464,10 @@ static int cb_pcidas_ao_inttrig(struct c + devpriv->ao_control_bits |= DAC_START | DACEN | DAC_EMPTY; + outw(devpriv->ao_control_bits, devpriv->control_status + DAC_CSR); + #ifdef CB_PCIDAS_DEBUG +- rt_printk("comedi: sent 0x%x to dac control\n", ++ printk("comedi: sent 0x%x to dac control\n", + devpriv->ao_control_bits); + #endif +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + async->inttrig = NULL; + +@@ -1494,8 +1494,8 @@ static irqreturn_t cb_pcidas_interrupt(i + + s5933_status = inl(devpriv->s5933_config + AMCC_OP_REG_INTCSR); + #ifdef CB_PCIDAS_DEBUG +- rt_printk("intcsr 0x%x\n", s5933_status); +- rt_printk("mbef 0x%x\n", inl(devpriv->s5933_config + AMCC_OP_REG_MBEF)); ++ printk("intcsr 0x%x\n", s5933_status); ++ printk("mbef 0x%x\n", inl(devpriv->s5933_config + AMCC_OP_REG_MBEF)); + #endif + + if ((INTCSR_INTR_ASSERTED & s5933_status) == 0) +@@ -1537,10 +1537,10 @@ static irqreturn_t cb_pcidas_interrupt(i + cb_pcidas_cancel(dev, s); + } + /* clear half-full interrupt latch */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + outw(devpriv->adc_fifo_bits | INT, + devpriv->control_status + INT_ADCFIFO); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + /* else if fifo not empty */ + } else if (status & (ADNEI | EOBI)) { + for (i = 0; i < timeout; i++) { +@@ -1556,27 +1556,27 @@ static irqreturn_t cb_pcidas_interrupt(i + } + } + /* clear not-empty interrupt latch */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + outw(devpriv->adc_fifo_bits | INT, + devpriv->control_status + INT_ADCFIFO); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + } else if (status & EOAI) { + comedi_error(dev, + "bug! encountered end of aquisition interrupt?"); + /* clear EOA interrupt latch */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + outw(devpriv->adc_fifo_bits | EOAI, + devpriv->control_status + INT_ADCFIFO); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + } + /* check for fifo overflow */ + if (status & LADFUL) { + comedi_error(dev, "fifo overflow"); + /* clear overflow interrupt latch */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + outw(devpriv->adc_fifo_bits | LADFUL, + devpriv->control_status + INT_ADCFIFO); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + cb_pcidas_cancel(dev, s); + async->events |= COMEDI_CB_EOA | COMEDI_CB_ERROR; + } +@@ -1599,10 +1599,10 @@ static void handle_ao_interrupt(struct c + + if (status & DAEMI) { + /* clear dac empty interrupt latch */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + outw(devpriv->adc_fifo_bits | DAEMI, + devpriv->control_status + INT_ADCFIFO); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + if (inw(devpriv->ao_registers + DAC_CSR) & DAC_EMPTY) { + if (cmd->stop_src == TRIG_NONE || + (cmd->stop_src == TRIG_COUNT +@@ -1633,10 +1633,10 @@ static void handle_ao_interrupt(struct c + outsw(devpriv->ao_registers + DACDATA, devpriv->ao_buffer, + num_points); + /* clear half-full interrupt latch */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + outw(devpriv->adc_fifo_bits | DAHFI, + devpriv->control_status + INT_ADCFIFO); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + } + + comedi_event(dev, s); +@@ -1647,11 +1647,11 @@ static int cb_pcidas_cancel(struct comed + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + /* disable interrupts */ + devpriv->adc_fifo_bits &= ~INTE & ~EOAIE; + outw(devpriv->adc_fifo_bits, devpriv->control_status + INT_ADCFIFO); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + /* disable start trigger source and burst mode */ + outw(0, devpriv->control_status + TRIG_CONTSTAT); +@@ -1667,7 +1667,7 @@ static int cb_pcidas_ao_cancel(struct co + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + /* disable interrupts */ + devpriv->adc_fifo_bits &= ~DAHFIE & ~DAEMIE; + outw(devpriv->adc_fifo_bits, devpriv->control_status + INT_ADCFIFO); +@@ -1675,7 +1675,7 @@ static int cb_pcidas_ao_cancel(struct co + /* disable output */ + devpriv->ao_control_bits &= ~DACEN & ~DAC_PACER_MASK; + outw(devpriv->ao_control_bits, devpriv->control_status + DAC_CSR); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + return 0; + } +@@ -1705,7 +1705,7 @@ static void write_calibration_bitstream( + register_bits |= SERIAL_DATA_IN_BIT; + else + register_bits &= ~SERIAL_DATA_IN_BIT; +- comedi_udelay(write_delay); ++ udelay(write_delay); + outw(register_bits, devpriv->control_status + CALIBRATION_REG); + } + } +@@ -1716,7 +1716,7 @@ static int caldac_8800_write(struct come + static const int num_caldac_channels = 8; + static const int bitstream_length = 11; + unsigned int bitstream = ((address & 0x7) << 8) | value; +- static const int caldac_8800_comedi_udelay = 1; ++ static const int caldac_8800_udelay = 1; + + if (address >= num_caldac_channels) { + comedi_error(dev, "illegal caldac channel"); +@@ -1731,10 +1731,10 @@ static int caldac_8800_write(struct come + write_calibration_bitstream(dev, cal_enable_bits(dev), bitstream, + bitstream_length); + +- comedi_udelay(caldac_8800_comedi_udelay); ++ udelay(caldac_8800_udelay); + outw(cal_enable_bits(dev) | SELECT_8800_BIT, + devpriv->control_status + CALIBRATION_REG); +- comedi_udelay(caldac_8800_comedi_udelay); ++ udelay(caldac_8800_udelay); + outw(cal_enable_bits(dev), devpriv->control_status + CALIBRATION_REG); + + return 1; +@@ -1745,16 +1745,16 @@ static int trimpot_7376_write(struct com + static const int bitstream_length = 7; + unsigned int bitstream = value & 0x7f; + unsigned int register_bits; +- static const int ad7376_comedi_udelay = 1; ++ static const int ad7376_udelay = 1; + + register_bits = cal_enable_bits(dev) | SELECT_TRIMPOT_BIT; +- comedi_udelay(ad7376_comedi_udelay); ++ udelay(ad7376_udelay); + outw(register_bits, devpriv->control_status + CALIBRATION_REG); + + write_calibration_bitstream(dev, register_bits, bitstream, + bitstream_length); + +- comedi_udelay(ad7376_comedi_udelay); ++ udelay(ad7376_udelay); + outw(cal_enable_bits(dev), devpriv->control_status + CALIBRATION_REG); + + return 0; +@@ -1769,16 +1769,16 @@ static int trimpot_8402_write(struct com + static const int bitstream_length = 10; + unsigned int bitstream = ((channel & 0x3) << 8) | (value & 0xff); + unsigned int register_bits; +- static const int ad8402_comedi_udelay = 1; ++ static const int ad8402_udelay = 1; + + register_bits = cal_enable_bits(dev) | SELECT_TRIMPOT_BIT; +- comedi_udelay(ad8402_comedi_udelay); ++ udelay(ad8402_udelay); + outw(register_bits, devpriv->control_status + CALIBRATION_REG); + + write_calibration_bitstream(dev, register_bits, bitstream, + bitstream_length); + +- comedi_udelay(ad8402_comedi_udelay); ++ udelay(ad8402_udelay); + outw(cal_enable_bits(dev), devpriv->control_status + CALIBRATION_REG); + + return 0; +@@ -1794,7 +1794,7 @@ static int wait_for_nvram_ready(unsigned + AMCC_OP_REG_MCSR_NVCMD) & MCSR_NV_BUSY) + == 0) + return 0; +- comedi_udelay(1); ++ udelay(1); + } + return -1; + } +--- a/drivers/staging/comedi/drivers/cb_pcimdas.c ++++ b/drivers/staging/comedi/drivers/cb_pcimdas.c +@@ -282,7 +282,7 @@ static int cb_pcimdas_attach(struct come + + /* Dont support IRQ yet */ + /* get irq */ +-/* if(comedi_request_irq(devpriv->pci_dev->irq, cb_pcimdas_interrupt, IRQF_SHARED, "cb_pcimdas", dev )) */ ++/* if(request_irq(devpriv->pci_dev->irq, cb_pcimdas_interrupt, IRQF_SHARED, "cb_pcimdas", dev )) */ + /* { */ + /* printk(" unable to allocate irq %u\n", devpriv->pci_dev->irq); */ + /* return -EINVAL; */ +@@ -355,7 +355,7 @@ static int cb_pcimdas_detach(struct come + #endif + printk("comedi%d: cb_pcimdas: remove\n", dev->minor); + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + if (devpriv) { + if (devpriv->pci_dev) { + if (devpriv->BADR0) { +--- a/drivers/staging/comedi/drivers/comedi_fc.c ++++ b/drivers/staging/comedi/drivers/comedi_fc.c +@@ -53,7 +53,7 @@ unsigned int cfc_write_array_to_buffer(s + + retval = comedi_buf_write_alloc(async, num_bytes); + if (retval != num_bytes) { +- rt_printk("comedi: buffer overrun\n"); ++ printk("comedi: buffer overrun\n"); + async->events |= COMEDI_CB_OVERFLOW; + return 0; + } +--- a/drivers/staging/comedi/drivers/comedi_parport.c ++++ b/drivers/staging/comedi/drivers/comedi_parport.c +@@ -310,8 +310,8 @@ static int parport_attach(struct comedi_ + irq = it->options[1]; + if (irq) { + printk(" irq=%u", irq); +- ret = comedi_request_irq(irq, parport_interrupt, 0, +- "comedi_parport", dev); ++ ret = request_irq(irq, parport_interrupt, 0, "comedi_parport", ++ dev); + if (ret < 0) { + printk(" irq not available\n"); + return -EINVAL; +@@ -385,7 +385,7 @@ static int parport_detach(struct comedi_ + release_region(dev->iobase, PARPORT_SIZE); + + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + + return 0; + } +--- a/drivers/staging/comedi/drivers/comedi_rt_timer.c ++++ b/drivers/staging/comedi/drivers/comedi_rt_timer.c +@@ -204,7 +204,7 @@ inline static int check_scan_timing(stru + timing_error = now - (devpriv->start + scan * devpriv->scan_period); + if (timing_error > devpriv->scan_period) { + comedi_error(dev, "timing error"); +- rt_printk("scan started %i ns late\n", timing_error * 838); ++ printk("scan started %i ns late\n", timing_error * 838); + return -1; + } + +@@ -222,7 +222,7 @@ inline static int check_conversion_timin + now - (scan_start + conversion * devpriv->convert_period); + if (timing_error > devpriv->convert_period) { + comedi_error(dev, "timing error"); +- rt_printk("conversion started %i ns late\n", ++ printk("conversion started %i ns late\n", + timing_error * 838); + return -1; + } +--- a/drivers/staging/comedi/drivers/contec_pci_dio.c ++++ b/drivers/staging/comedi/drivers/contec_pci_dio.c +@@ -205,7 +205,7 @@ static int contec_do_insn_bits(struct co + if (data[0]) { + s->state &= ~data[0]; + s->state |= data[0] & data[1]; +- rt_printk(" out: %d on %lx\n", s->state, ++ printk(" out: %d on %lx\n", s->state, + dev->iobase + thisboard->out_offs); + outw(s->state, dev->iobase + thisboard->out_offs); + } +@@ -216,8 +216,8 @@ static int contec_di_insn_bits(struct co + struct comedi_insn *insn, unsigned int *data) + { + +- rt_printk("contec_di_insn_bits called\n"); +- rt_printk(" data: %d %d\n", data[0], data[1]); ++ printk("contec_di_insn_bits called\n"); ++ printk(" data: %d %d\n", data[0], data[1]); + + if (insn->n != 2) + return -EINVAL; +--- a/drivers/staging/comedi/drivers/daqboard2000.c ++++ b/drivers/staging/comedi/drivers/daqboard2000.c +@@ -342,9 +342,9 @@ static void writeAcqScanListEntry(struct + { + struct daqboard2000_hw *fpga = devpriv->daq; + +-/* comedi_udelay(4); */ ++/* udelay(4); */ + fpga->acqScanListFIFO = entry & 0x00ff; +-/* comedi_udelay(4); */ ++/* udelay(4); */ + fpga->acqScanListFIFO = (entry >> 8) & 0x00ff; + } + +@@ -425,14 +425,14 @@ static int daqboard2000_ai_insn_read(str + if (fpga->acqControl & DAQBOARD2000_AcqConfigPipeFull) { + break; + } +- /* comedi_udelay(2); */ ++ /* udelay(2); */ + } + fpga->acqControl = DAQBOARD2000_AdcPacerEnable; + for (timeout = 0; timeout < 20; timeout++) { + if (fpga->acqControl & DAQBOARD2000_AcqLogicScanning) { + break; + } +- /* comedi_udelay(2); */ ++ /* udelay(2); */ + } + for (timeout = 0; timeout < 20; timeout++) { + if (fpga-> +@@ -440,7 +440,7 @@ static int daqboard2000_ai_insn_read(str + DAQBOARD2000_AcqResultsFIFOHasValidData) { + break; + } +- /* comedi_udelay(2); */ ++ /* udelay(2); */ + } + data[i] = fpga->acqResultsFIFO; + fpga->acqControl = DAQBOARD2000_AdcPacerDisable; +@@ -476,18 +476,18 @@ static int daqboard2000_ao_insn_write(st + * OK, since it works OK without enabling the DAC's, let's keep + * it as simple as possible... + */ +- /* fpga->dacControl = (chan + 2) * 0x0010 | 0x0001; comedi_udelay(1000); */ ++ /* fpga->dacControl = (chan + 2) * 0x0010 | 0x0001; udelay(1000); */ + fpga->dacSetting[chan] = data[i]; + for (timeout = 0; timeout < 20; timeout++) { + if ((fpga->dacControl & ((chan + 1) * 0x0010)) == 0) { + break; + } +- /* comedi_udelay(2); */ ++ /* udelay(2); */ + } + devpriv->ao_readback[chan] = data[i]; + /* + * Since we never enabled the DAC's, we don't need to disable it... +- * fpga->dacControl = (chan + 2) * 0x0010 | 0x0000; comedi_udelay(1000); ++ * fpga->dacControl = (chan + 2) * 0x0010 | 0x0000; udelay(1000); + */ + } + +@@ -498,29 +498,29 @@ static void daqboard2000_resetLocalBus(s + { + printk("daqboard2000_resetLocalBus\n"); + writel(DAQBOARD2000_SECRLocalBusHi, devpriv->plx + 0x6c); +- comedi_udelay(10000); ++ udelay(10000); + writel(DAQBOARD2000_SECRLocalBusLo, devpriv->plx + 0x6c); +- comedi_udelay(10000); ++ udelay(10000); + } + + static void daqboard2000_reloadPLX(struct comedi_device *dev) + { + printk("daqboard2000_reloadPLX\n"); + writel(DAQBOARD2000_SECRReloadLo, devpriv->plx + 0x6c); +- comedi_udelay(10000); ++ udelay(10000); + writel(DAQBOARD2000_SECRReloadHi, devpriv->plx + 0x6c); +- comedi_udelay(10000); ++ udelay(10000); + writel(DAQBOARD2000_SECRReloadLo, devpriv->plx + 0x6c); +- comedi_udelay(10000); ++ udelay(10000); + } + + static void daqboard2000_pulseProgPin(struct comedi_device *dev) + { + printk("daqboard2000_pulseProgPin 1\n"); + writel(DAQBOARD2000_SECRProgPinHi, devpriv->plx + 0x6c); +- comedi_udelay(10000); ++ udelay(10000); + writel(DAQBOARD2000_SECRProgPinLo, devpriv->plx + 0x6c); +- comedi_udelay(10000); /* Not in the original code, but I like symmetry... */ ++ udelay(10000); /* Not in the original code, but I like symmetry... */ + } + + static int daqboard2000_pollCPLD(struct comedi_device *dev, int mask) +@@ -536,9 +536,9 @@ static int daqboard2000_pollCPLD(struct + result = 1; + break; + } +- comedi_udelay(100); ++ udelay(100); + } +- comedi_udelay(5); ++ udelay(5); + return result; + } + +@@ -546,7 +546,7 @@ static int daqboard2000_writeCPLD(struct + { + int result = 0; + +- comedi_udelay(10); ++ udelay(10); + writew(data, devpriv->daq + 0x1000); + if ((readw(devpriv->daq + 0x1000) & DAQBOARD2000_CPLD_INIT) == + DAQBOARD2000_CPLD_INIT) { +@@ -623,17 +623,17 @@ static void daqboard2000_adcDisarm(struc + struct daqboard2000_hw *fpga = devpriv->daq; + + /* Disable hardware triggers */ +- comedi_udelay(2); ++ udelay(2); + fpga->trigControl = DAQBOARD2000_TrigAnalog | DAQBOARD2000_TrigDisable; +- comedi_udelay(2); ++ udelay(2); + fpga->trigControl = DAQBOARD2000_TrigTTL | DAQBOARD2000_TrigDisable; + + /* Stop the scan list FIFO from loading the configuration pipe */ +- comedi_udelay(2); ++ udelay(2); + fpga->acqControl = DAQBOARD2000_SeqStopScanList; + + /* Stop the pacer clock */ +- comedi_udelay(2); ++ udelay(2); + fpga->acqControl = DAQBOARD2000_AdcPacerDisable; + + /* Stop the input dma (abort channel 1) */ +@@ -651,7 +651,7 @@ static void daqboard2000_activateReferen + if ((fpga->dacControl & DAQBOARD2000_RefBusy) == 0) { + break; + } +- comedi_udelay(2); ++ udelay(2); + } + /* printk("DAQBOARD2000_PosRefDacSelect %d\n", timeout);*/ + +@@ -661,7 +661,7 @@ static void daqboard2000_activateReferen + if ((fpga->dacControl & DAQBOARD2000_RefBusy) == 0) { + break; + } +- comedi_udelay(2); ++ udelay(2); + } + /* printk("DAQBOARD2000_NegRefDacSelect %d\n", timeout);*/ + } +--- a/drivers/staging/comedi/drivers/das08.c ++++ b/drivers/staging/comedi/drivers/das08.c +@@ -545,7 +545,7 @@ static int das08_ai_rinsn(struct comedi_ + /* clear over-range bits for 16-bit boards */ + if (thisboard->ai_nbits == 16) + if (inb(dev->iobase + DAS08_MSB) & 0x80) +- rt_printk("das08: over-range\n"); ++ printk("das08: over-range\n"); + + /* trigger conversion */ + outb_p(0, dev->iobase + DAS08_TRIG_12BIT); +@@ -555,7 +555,7 @@ static int das08_ai_rinsn(struct comedi_ + break; + } + if (i == TIMEOUT) { +- rt_printk("das08: timeout\n"); ++ printk("das08: timeout\n"); + return -ETIME; + } + msb = inb(dev->iobase + DAS08_MSB); +--- a/drivers/staging/comedi/drivers/das16.c ++++ b/drivers/staging/comedi/drivers/das16.c +@@ -90,7 +90,7 @@ Computer boards manuals also available f + /* #define DEBUG */ + + #ifdef DEBUG +-#define DEBUG_PRINT(format, args...) rt_printk("das16: " format, ## args) ++#define DEBUG_PRINT(format, args...) printk("das16: " format, ## args) + #else + #define DEBUG_PRINT(format, args...) + #endif +@@ -998,7 +998,7 @@ static int das16_cancel(struct comedi_de + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + /* disable interrupts, dma and pacer clocked conversions */ + devpriv->control_state &= ~DAS16_INTE & ~PACING_MASK & ~DMA_ENABLE; + outb(devpriv->control_state, dev->iobase + DAS16_CONTROL); +@@ -1016,7 +1016,7 @@ static int das16_cancel(struct comedi_de + outb(0, dev->iobase + DAS1600_BURST); + } + +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + return 0; + } +@@ -1062,7 +1062,7 @@ static int das16_ai_rinsn(struct comedi_ + break; + } + if (i == DAS16_TIMEOUT) { +- rt_printk("das16: timeout\n"); ++ printk("das16: timeout\n"); + return -ETIME; + } + msb = inb(dev->iobase + DAS16_AI_MSB); +@@ -1180,7 +1180,7 @@ static int disable_dma_on_even(struct co + enable_dma(devpriv->dma_chan); + for (j = 0; j < enable_timeout; ++j) { + int new_residue; +- comedi_udelay(2); ++ udelay(2); + new_residue = get_dma_residue(devpriv->dma_chan); + if (new_residue != residue) + break; +@@ -1217,9 +1217,9 @@ static void das16_interrupt(struct comed + return; + } + +- comedi_spin_lock_irqsave(&dev->spinlock, spin_flags); ++ spin_lock_irqsave(&dev->spinlock, spin_flags); + if ((devpriv->control_state & DMA_ENABLE) == 0) { +- comedi_spin_unlock_irqrestore(&dev->spinlock, spin_flags); ++ spin_unlock_irqrestore(&dev->spinlock, spin_flags); + DEBUG_PRINT("interrupt while dma disabled?\n"); + return; + } +@@ -1263,7 +1263,7 @@ static void das16_interrupt(struct comed + } + release_dma_lock(dma_flags); + +- comedi_spin_unlock_irqrestore(&dev->spinlock, spin_flags); ++ spin_unlock_irqrestore(&dev->spinlock, spin_flags); + + cfc_write_array_to_buffer(s, + devpriv->dma_buffer[buffer_index], num_bytes); +@@ -1449,8 +1449,7 @@ static int das16_attach(struct comedi_de + + /* now for the irq */ + if (irq > 1 && irq < 8) { +- ret = comedi_request_irq(irq, das16_dma_interrupt, 0, +- "das16", dev); ++ ret = request_irq(irq, das16_dma_interrupt, 0, "das16", dev); + + if (ret < 0) + return ret; +@@ -1658,7 +1657,7 @@ static int das16_detach(struct comedi_de + } + + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + + if (dev->iobase) { + if (thisboard->size < 0x400) { +--- a/drivers/staging/comedi/drivers/das16m1.c ++++ b/drivers/staging/comedi/drivers/das16m1.c +@@ -466,10 +466,10 @@ static int das16m1_poll(struct comedi_de + unsigned int status; + + /* prevent race with interrupt handler */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + status = inb(dev->iobase + DAS16M1_CS); + das16m1_handler(dev, status); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + return s->async->buf_write_count - s->async->buf_read_count; + } +@@ -669,8 +669,8 @@ static int das16m1_attach(struct comedi_ + irq = it->options[1]; + /* make sure it is valid */ + if (das16m1_irq_bits(irq) >= 0) { +- ret = comedi_request_irq(irq, das16m1_interrupt, 0, +- driver_das16m1.driver_name, dev); ++ ret = request_irq(irq, das16m1_interrupt, 0, ++ driver_das16m1.driver_name, dev); + if (ret < 0) { + printk(", irq unavailable\n"); + return ret; +@@ -753,7 +753,7 @@ static int das16m1_detach(struct comedi_ + subdev_8255_cleanup(dev, dev->subdevices + 3); + + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + + if (dev->iobase) { + release_region(dev->iobase, DAS16M1_SIZE); +--- a/drivers/staging/comedi/drivers/das1800.c ++++ b/drivers/staging/comedi/drivers/das1800.c +@@ -651,7 +651,7 @@ static int das1800_attach(struct comedi_ + + /* grab our IRQ */ + if (irq) { +- if (comedi_request_irq(irq, das1800_interrupt, 0, ++ if (request_irq(irq, das1800_interrupt, 0, + driver_das1800.driver_name, dev)) { + printk(" unable to allocate irq %u\n", irq); + return -EINVAL; +@@ -771,7 +771,7 @@ static int das1800_detach(struct comedi_ + if (dev->iobase) + release_region(dev->iobase, DAS1800_SIZE); + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + if (dev->private) { + if (devpriv->iobase2) + release_region(devpriv->iobase2, DAS1800_SIZE); +@@ -872,9 +872,9 @@ static int das1800_ai_poll(struct comedi + unsigned long flags; + + /* prevent race with interrupt handler */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + das1800_ai_handler(dev); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + return s->async->buf_write_count - s->async->buf_read_count; + } +@@ -1471,7 +1471,7 @@ static void program_chanlist(struct come + + n = cmd.chanlist_len; + /* spinlock protects indirect addressing */ +- comedi_spin_lock_irqsave(&dev->spinlock, irq_flags); ++ spin_lock_irqsave(&dev->spinlock, irq_flags); + outb(QRAM, dev->iobase + DAS1800_SELECT); /* select QRAM for baseAddress + 0x0 */ + outb(n - 1, dev->iobase + DAS1800_QRAM_ADDRESS); /*set QRAM address start */ + /* make channel / gain list */ +@@ -1483,7 +1483,7 @@ static void program_chanlist(struct come + outw(chan_range, dev->iobase + DAS1800_QRAM); + } + outb(n - 1, dev->iobase + DAS1800_QRAM_ADDRESS); /*finish write to QRAM */ +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + + return; + } +@@ -1582,7 +1582,7 @@ static int das1800_ai_rinsn(struct comed + /* mask of unipolar/bipolar bit from range */ + range = CR_RANGE(insn->chanspec) & 0x3; + chan_range = chan | (range << 8); +- comedi_spin_lock_irqsave(&dev->spinlock, irq_flags); ++ spin_lock_irqsave(&dev->spinlock, irq_flags); + outb(QRAM, dev->iobase + DAS1800_SELECT); /* select QRAM for baseAddress + 0x0 */ + outb(0x0, dev->iobase + DAS1800_QRAM_ADDRESS); /* set QRAM address start */ + outw(chan_range, dev->iobase + DAS1800_QRAM); +@@ -1606,7 +1606,7 @@ static int das1800_ai_rinsn(struct comed + dpnt += 1 << (thisboard->resolution - 1); + data[n] = dpnt; + } +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + + return n; + } +@@ -1627,7 +1627,7 @@ static int das1800_ao_winsn(struct comed + if (chan == update_chan) + devpriv->ao_update_bits = output; + /* write to channel */ +- comedi_spin_lock_irqsave(&dev->spinlock, irq_flags); ++ spin_lock_irqsave(&dev->spinlock, irq_flags); + outb(DAC(chan), dev->iobase + DAS1800_SELECT); /* select dac channel for baseAddress + 0x0 */ + outw(output, dev->iobase + DAS1800_DAC); + /* now we need to write to 'update' channel to update all dac channels */ +@@ -1635,7 +1635,7 @@ static int das1800_ao_winsn(struct comed + outb(DAC(update_chan), dev->iobase + DAS1800_SELECT); /* select 'update' channel for baseAddress + 0x0 */ + outw(devpriv->ao_update_bits, dev->iobase + DAS1800_DAC); + } +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + + return 1; + } +--- a/drivers/staging/comedi/drivers/das6402.c ++++ b/drivers/staging/comedi/drivers/das6402.c +@@ -292,7 +292,7 @@ static int board_init(struct comedi_devi + static int das6402_detach(struct comedi_device *dev) + { + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + if (dev->iobase) + release_region(dev->iobase, DAS6402_SIZE); + +@@ -324,7 +324,7 @@ static int das6402_attach(struct comedi_ + + irq = it->options[0]; + printk(" ( irq = %u )", irq); +- ret = comedi_request_irq(irq, intr_handler, 0, "das6402", dev); ++ ret = request_irq(irq, intr_handler, 0, "das6402", dev); + if (ret < 0) { + printk("irq conflict\n"); + return ret; +--- a/drivers/staging/comedi/drivers/das800.c ++++ b/drivers/staging/comedi/drivers/das800.c +@@ -279,10 +279,10 @@ static int das800_probe(struct comedi_de + int board; + + /* 'comedi spin lock irqsave' disables even rt interrupts, we use them to protect indirect addressing */ +- comedi_spin_lock_irqsave(&dev->spinlock, irq_flags); ++ spin_lock_irqsave(&dev->spinlock, irq_flags); + outb(ID, dev->iobase + DAS800_GAIN); /* select base address + 7 to be ID register */ + id_bits = inb(dev->iobase + DAS800_ID) & 0x3; /* get id bits */ +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + + board = thisboard - das800_boards; + +@@ -370,12 +370,12 @@ static irqreturn_t das800_interrupt(int + async = s->async; + + /* if hardware conversions are not enabled, then quit */ +- comedi_spin_lock_irqsave(&dev->spinlock, irq_flags); ++ spin_lock_irqsave(&dev->spinlock, irq_flags); + outb(CONTROL1, dev->iobase + DAS800_GAIN); /* select base address + 7 to be STATUS2 register */ + status = inb(dev->iobase + DAS800_STATUS2) & STATUS2_HCEN; + /* don't release spinlock yet since we want to make sure noone else disables hardware conversions */ + if (status == 0) { +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + return IRQ_HANDLED; + } + +@@ -415,7 +415,7 @@ static irqreturn_t das800_interrupt(int + fifo_overflow = inb(dev->iobase + DAS800_GAIN) & CIO_FFOV; + } + if (fifo_overflow) { +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + comedi_error(dev, "DAS800 FIFO overflow"); + das800_cancel(dev, dev->subdevices + 0); + async->events |= COMEDI_CB_ERROR | COMEDI_CB_EOA; +@@ -429,10 +429,10 @@ static irqreturn_t das800_interrupt(int + outb(CONTROL1, dev->iobase + DAS800_GAIN); /* select dev->iobase + 2 to be control register 1 */ + outb(CONTROL1_INTE | devpriv->do_bits, + dev->iobase + DAS800_CONTROL1); +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + /* otherwise, stop taking data */ + } else { +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + disable_das800(dev); /* diable hardware triggered conversions */ + async->events |= COMEDI_CB_EOA; + } +@@ -484,7 +484,7 @@ static int das800_attach(struct comedi_d + return -EINVAL; + } + if (irq) { +- if (comedi_request_irq(irq, das800_interrupt, 0, "das800", dev)) { ++ if (request_irq(irq, das800_interrupt, 0, "das800", dev)) { + printk("unable to allocate irq %u\n", irq); + return -EINVAL; + } +@@ -531,10 +531,10 @@ static int das800_attach(struct comedi_d + disable_das800(dev); + + /* initialize digital out channels */ +- comedi_spin_lock_irqsave(&dev->spinlock, irq_flags); ++ spin_lock_irqsave(&dev->spinlock, irq_flags); + outb(CONTROL1, dev->iobase + DAS800_GAIN); /* select dev->iobase + 2 to be control register 1 */ + outb(CONTROL1_INTE | devpriv->do_bits, dev->iobase + DAS800_CONTROL1); +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + + return 0; + }; +@@ -547,7 +547,7 @@ static int das800_detach(struct comedi_d + if (dev->iobase) + release_region(dev->iobase, DAS800_SIZE); + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + return 0; + }; + +@@ -563,7 +563,7 @@ static int das800_cancel(struct comedi_d + static void enable_das800(struct comedi_device *dev) + { + unsigned long irq_flags; +- comedi_spin_lock_irqsave(&dev->spinlock, irq_flags); ++ spin_lock_irqsave(&dev->spinlock, irq_flags); + /* enable fifo-half full interrupts for cio-das802/16 */ + if (thisboard->resolution == 16) + outb(CIO_ENHF, dev->iobase + DAS800_GAIN); +@@ -571,17 +571,17 @@ static void enable_das800(struct comedi_ + outb(CONV_HCEN, dev->iobase + DAS800_CONV_CONTROL); /* enable hardware triggering */ + outb(CONTROL1, dev->iobase + DAS800_GAIN); /* select dev->iobase + 2 to be control register 1 */ + outb(CONTROL1_INTE | devpriv->do_bits, dev->iobase + DAS800_CONTROL1); /* enable card's interrupt */ +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + } + + /* disable_das800 stops hardware triggered conversions */ + static void disable_das800(struct comedi_device *dev) + { + unsigned long irq_flags; +- comedi_spin_lock_irqsave(&dev->spinlock, irq_flags); ++ spin_lock_irqsave(&dev->spinlock, irq_flags); + outb(CONV_CONTROL, dev->iobase + DAS800_GAIN); /* select dev->iobase + 2 to be conversion control register */ + outb(0x0, dev->iobase + DAS800_CONV_CONTROL); /* disable hardware triggering of conversions */ +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + } + + static int das800_ai_do_cmdtest(struct comedi_device *dev, struct comedi_subdevice *s, +@@ -729,10 +729,10 @@ static int das800_ai_do_cmd(struct comed + endChan = (startChan + async->cmd.chanlist_len - 1) % 8; + scan = (endChan << 3) | startChan; + +- comedi_spin_lock_irqsave(&dev->spinlock, irq_flags); ++ spin_lock_irqsave(&dev->spinlock, irq_flags); + outb(SCAN_LIMITS, dev->iobase + DAS800_GAIN); /* select base address + 2 to be scan limits register */ + outb(scan, dev->iobase + DAS800_SCAN_LIMITS); /* set scan limits */ +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + + /* set gain */ + gain = CR_RANGE(async->cmd.chanlist[0]); +@@ -779,10 +779,10 @@ static int das800_ai_do_cmd(struct comed + break; + } + +- comedi_spin_lock_irqsave(&dev->spinlock, irq_flags); ++ spin_lock_irqsave(&dev->spinlock, irq_flags); + outb(CONV_CONTROL, dev->iobase + DAS800_GAIN); /* select dev->iobase + 2 to be conversion control register */ + outb(conv_bits, dev->iobase + DAS800_CONV_CONTROL); +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + async->events = 0; + enable_das800(dev); + return 0; +@@ -803,10 +803,10 @@ static int das800_ai_rinsn(struct comedi + /* set multiplexer */ + chan = CR_CHAN(insn->chanspec); + +- comedi_spin_lock_irqsave(&dev->spinlock, irq_flags); ++ spin_lock_irqsave(&dev->spinlock, irq_flags); + outb(CONTROL1, dev->iobase + DAS800_GAIN); /* select dev->iobase + 2 to be control register 1 */ + outb(chan | devpriv->do_bits, dev->iobase + DAS800_CONTROL1); +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + + /* set gain / range */ + range = CR_RANGE(insn->chanspec); +@@ -815,7 +815,7 @@ static int das800_ai_rinsn(struct comedi + range &= 0xf; + outb(range, dev->iobase + DAS800_GAIN); + +- comedi_udelay(5); ++ udelay(5); + + for (n = 0; n < insn->n; n++) { + /* trigger conversion */ +@@ -868,10 +868,10 @@ static int das800_do_wbits(struct comedi + wbits |= data[0] & data[1]; + devpriv->do_bits = wbits << 4; + +- comedi_spin_lock_irqsave(&dev->spinlock, irq_flags); ++ spin_lock_irqsave(&dev->spinlock, irq_flags); + outb(CONTROL1, dev->iobase + DAS800_GAIN); /* select dev->iobase + 2 to be control register 1 */ + outb(devpriv->do_bits | CONTROL1_INTE, dev->iobase + DAS800_CONTROL1); +- comedi_spin_unlock_irqrestore(&dev->spinlock, irq_flags); ++ spin_unlock_irqrestore(&dev->spinlock, irq_flags); + + data[1] = wbits; + +--- a/drivers/staging/comedi/drivers/dmm32at.c ++++ b/drivers/staging/comedi/drivers/dmm32at.c +@@ -380,8 +380,7 @@ static int dmm32at_attach(struct comedi_ + + /* board is there, register interrupt */ + if (irq) { +- ret = comedi_request_irq(irq, dmm32at_isr, 0, thisboard->name, +- dev); ++ ret = request_irq(irq, dmm32at_isr, 0, thisboard->name, dev); + if (ret < 0) { + printk("irq conflict\n"); + return ret; +@@ -485,7 +484,7 @@ static int dmm32at_detach(struct comedi_ + { + printk("comedi%d: dmm32at: remove\n", dev->minor); + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + if (dev->iobase) + release_region(dev->iobase, DMM32AT_MEMSIZE); + +--- a/drivers/staging/comedi/drivers/dt2801.c ++++ b/drivers/staging/comedi/drivers/dt2801.c +@@ -384,7 +384,7 @@ static int dt2801_reset(struct comedi_de + outb_p(DT_C_STOP, dev->iobase + DT2801_CMD); + + /* dt2801_wait_for_ready(dev); */ +- comedi_udelay(100); ++ udelay(100); + timeout = 10000; + do { + stat = inb_p(dev->iobase + DT2801_STATUS); +@@ -402,7 +402,7 @@ static int dt2801_reset(struct comedi_de + outb_p(DT_C_RESET, dev->iobase + DT2801_CMD); + /* dt2801_writecmd(dev,DT_C_RESET); */ + +- comedi_udelay(100); ++ udelay(100); + timeout = 10000; + do { + stat = inb_p(dev->iobase + DT2801_STATUS); +--- a/drivers/staging/comedi/drivers/dt2811.c ++++ b/drivers/staging/comedi/drivers/dt2811.c +@@ -335,7 +335,7 @@ static int dt2811_attach(struct comedi_d + + #if 0 + outb(0, dev->iobase + DT2811_ADCSR); +- comedi_udelay(100); ++ udelay(100); + i = inb(dev->iobase + DT2811_ADDATLO); + i = inb(dev->iobase + DT2811_ADDATHI); + #endif +@@ -351,7 +351,7 @@ static int dt2811_attach(struct comedi_d + dev->iobase + DT2811_ADCSR); + outb(0, dev->iobase + DT2811_ADGCR); + +- comedi_udelay(100); ++ udelay(100); + + irq = probe_irq_off(irqs); + restore_flags(flags); +@@ -366,7 +366,7 @@ static int dt2811_attach(struct comedi_d + i = inb(dev->iobase + DT2811_ADDATLO); + i = inb(dev->iobase + DT2811_ADDATHI); + printk("(irq = %d)\n", irq); +- ret = comedi_request_irq(irq, dt2811_interrupt, 0, ++ ret = request_irq(irq, dt2811_interrupt, 0, + driver_name, dev); + if (ret < 0) + return -EIO; +@@ -489,7 +489,7 @@ static int dt2811_detach(struct comedi_d + printk("comedi%d: dt2811: remove\n", dev->minor); + + if (dev->irq) { +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + if (dev->iobase) { + release_region(dev->iobase, DT2811_SIZE); +--- a/drivers/staging/comedi/drivers/dt2814.c ++++ b/drivers/staging/comedi/drivers/dt2814.c +@@ -97,7 +97,7 @@ static int dt2814_ai_insn_read(struct co + for (i = 0; i < DT2814_TIMEOUT; i++) { + status = inb(dev->iobase + DT2814_CSR); + printk("dt2814: status: %02x\n", status); +- comedi_udelay(10); ++ udelay(10); + if (status & DT2814_FINISH) + break; + } +@@ -262,7 +262,7 @@ static int dt2814_attach(struct comedi_d + dev->board_name = "dt2814"; + + outb(0, dev->iobase + DT2814_CSR); +- comedi_udelay(100); ++ udelay(100); + if (inb(dev->iobase + DT2814_CSR) & DT2814_ERR) { + printk("reset error (fatal)\n"); + return -EIO; +@@ -279,7 +279,7 @@ static int dt2814_attach(struct comedi_d + + outb(0, dev->iobase + DT2814_CSR); + +- comedi_udelay(100); ++ udelay(100); + + irq = probe_irq_off(irqs); + restore_flags(flags); +@@ -293,7 +293,7 @@ static int dt2814_attach(struct comedi_d + #endif + dev->irq = 0; + if (irq > 0) { +- if (comedi_request_irq(irq, dt2814_interrupt, 0, "dt2814", dev)) { ++ if (request_irq(irq, dt2814_interrupt, 0, "dt2814", dev)) { + printk("(irq %d unavailable)\n", irq); + } else { + printk("( irq = %d )\n", irq); +@@ -337,7 +337,7 @@ static int dt2814_detach(struct comedi_d + printk("comedi%d: dt2814: remove\n", dev->minor); + + if (dev->irq) { +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + if (dev->iobase) { + release_region(dev->iobase, DT2814_SIZE); +--- a/drivers/staging/comedi/drivers/dt2815.c ++++ b/drivers/staging/comedi/drivers/dt2815.c +@@ -135,7 +135,7 @@ static int dt2815_ao_insn(struct comedi_ + + status = dt2815_wait_for_status(dev, 0x00); + if (status != 0) { +- rt_printk ++ printk + ("dt2815: failed to write low byte on %d reason %x\n", + chan, status); + return -EBUSY; +@@ -145,7 +145,7 @@ static int dt2815_ao_insn(struct comedi_ + + status = dt2815_wait_for_status(dev, 0x10); + if (status != 0x10) { +- rt_printk ++ printk + ("dt2815: failed to write high byte on %d reason %x\n", + chan, status); + return -EBUSY; +@@ -226,7 +226,7 @@ static int dt2815_attach(struct comedi_d + /* This is incredibly slow (approx 20 ms) */ + unsigned int status; + +- comedi_udelay(1000); ++ udelay(1000); + status = inb(dev->iobase + DT2815_STATUS); + if (status == 4) { + unsigned int program; +--- a/drivers/staging/comedi/drivers/dt282x.c ++++ b/drivers/staging/comedi/drivers/dt282x.c +@@ -389,7 +389,7 @@ struct dt282x_private { + int _i; \ + for (_i=0;_i<DT2821_TIMEOUT;_i++){ \ + if (a){_i=0;break;} \ +- comedi_udelay(5); \ ++ udelay(5); \ + } \ + if (_i){b} \ + }while (0) +@@ -463,7 +463,7 @@ static void dt282x_ao_dma_interrupt(stru + + size = cfc_read_array_from_buffer(s, ptr, devpriv->dma_maxsize); + if (size == 0) { +- rt_printk("dt282x: AO underrun\n"); ++ printk("dt282x: AO underrun\n"); + dt282x_ao_cancel(dev, s); + s->async->events |= COMEDI_CB_OVERFLOW; + return; +@@ -1080,7 +1080,7 @@ static int dt282x_ao_inttrig(struct come + size = cfc_read_array_from_buffer(s, devpriv->dma[0].buf, + devpriv->dma_maxsize); + if (size == 0) { +- rt_printk("dt282x: AO underrun\n"); ++ printk("dt282x: AO underrun\n"); + return -EPIPE; + } + prep_ao_dma(dev, 0, size); +@@ -1088,7 +1088,7 @@ static int dt282x_ao_inttrig(struct come + size = cfc_read_array_from_buffer(s, devpriv->dma[1].buf, + devpriv->dma_maxsize); + if (size == 0) { +- rt_printk("dt282x: AO underrun\n"); ++ printk("dt282x: AO underrun\n"); + return -EPIPE; + } + prep_ao_dma(dev, 1, size); +@@ -1298,7 +1298,7 @@ static int dt282x_attach(struct comedi_d + + /* trigger interrupt */ + +- comedi_udelay(100); ++ udelay(100); + + irq = probe_irq_off(irqs); + restore_flags(flags); +@@ -1309,8 +1309,7 @@ static int dt282x_attach(struct comedi_d + #endif + if (irq > 0) { + printk(" ( irq = %d )", irq); +- ret = comedi_request_irq(irq, dt282x_interrupt, 0, "dt282x", +- dev); ++ ret = request_irq(irq, dt282x_interrupt, 0, "dt282x", dev); + if (ret < 0) { + printk(" failed to get irq\n"); + return -EIO; +@@ -1403,7 +1402,7 @@ static int dt282x_attach(struct comedi_d + static void free_resources(struct comedi_device *dev) + { + if (dev->irq) { +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + if (dev->iobase) + release_region(dev->iobase, DT2821_SIZE); +--- a/drivers/staging/comedi/drivers/dt3000.c ++++ b/drivers/staging/comedi/drivers/dt3000.c +@@ -307,7 +307,7 @@ static int dt3k_send_cmd(struct comedi_d + status = readw(devpriv->io_addr + DPR_Command_Mbx); + if ((status & DT3000_COMPLETION_MASK) != DT3000_NOTPROCESSED) + break; +- comedi_udelay(1); ++ udelay(1); + } + if ((status & DT3000_COMPLETION_MASK) == DT3000_NOERROR) { + return 0; +@@ -825,8 +825,8 @@ static int dt3000_attach(struct comedi_d + + dev->board_name = this_board->name; + +- if (comedi_request_irq(devpriv->pci_dev->irq, dt3k_interrupt, +- IRQF_SHARED, "dt3000", dev)) { ++ if (request_irq(devpriv->pci_dev->irq, dt3k_interrupt, IRQF_SHARED, ++ "dt3000", dev)) { + printk(" unable to allocate IRQ %u\n", devpriv->pci_dev->irq); + return -EINVAL; + } +@@ -895,7 +895,7 @@ static int dt3000_attach(struct comedi_d + static int dt3000_detach(struct comedi_device *dev) + { + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + + if (devpriv) { + if (devpriv->pci_dev) { +--- a/drivers/staging/comedi/drivers/fl512.c ++++ b/drivers/staging/comedi/drivers/fl512.c +@@ -78,7 +78,7 @@ static int fl512_ai_insn(struct comedi_d + outb(chan, iobase + 2); /* select chan */ + outb(0, iobase + 3); /* start conversion */ + /* XXX should test "done" flag instead of delay */ +- comedi_udelay(30); /* sleep 30 usec */ ++ udelay(30); /* sleep 30 usec */ + lo_byte = inb(iobase + 2); /* low 8 byte */ + hi_byte = inb(iobase + 3) & 0xf; /* high 4 bit and mask */ + data[n] = lo_byte + (hi_byte << 8); +--- a/drivers/staging/comedi/drivers/gsc_hpdi.c ++++ b/drivers/staging/comedi/drivers/gsc_hpdi.c +@@ -66,7 +66,7 @@ static int dio_config_block_size(struct + /* #define HPDI_DEBUG enable debugging code */ + + #ifdef HPDI_DEBUG +-#define DEBUG_PRINT(format, args...) rt_printk(format , ## args) ++#define DEBUG_PRINT(format, args...) printk(format , ## args) + #else + #define DEBUG_PRINT(format, args...) + #endif +@@ -109,7 +109,7 @@ enum hpdi_registers { + int command_channel_valid(unsigned int channel) + { + if (channel == 0 || channel > 6) { +- rt_printk("gsc_hpdi: bug! invalid cable command channel\n"); ++ printk("gsc_hpdi: bug! invalid cable command channel\n"); + return 0; + } + return 1; +@@ -465,7 +465,7 @@ static int init_hpdi(struct comedi_devic + uint32_t plx_intcsr_bits; + + writel(BOARD_RESET_BIT, priv(dev)->hpdi_iobase + BOARD_CONTROL_REG); +- comedi_udelay(10); ++ udelay(10); + + writel(almost_empty_bits(32) | almost_full_bits(32), + priv(dev)->hpdi_iobase + RX_PROG_ALMOST_REG); +@@ -622,7 +622,7 @@ static int hpdi_attach(struct comedi_dev + init_plx9080(dev); + + /* get irq */ +- if (comedi_request_irq(pcidev->irq, handle_interrupt, IRQF_SHARED, ++ if (request_irq(pcidev->irq, handle_interrupt, IRQF_SHARED, + driver_hpdi.driver_name, dev)) { + printk(" unable to allocate irq %u\n", pcidev->irq); + return -EINVAL; +@@ -667,7 +667,7 @@ static int hpdi_detach(struct comedi_dev + printk("comedi%d: gsc_hpdi: remove\n", dev->minor); + + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + if (priv(dev)) { + if (priv(dev)->hw_dev) { + if (priv(dev)->plx9080_iobase) { +@@ -862,11 +862,11 @@ static int di_cmd(struct comedi_device * + writel(bits, priv(dev)->plx9080_iobase + PLX_DMA0_DESCRIPTOR_REG); + + /* spinlock for plx dma control/status reg */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + /* enable dma transfer */ + writeb(PLX_DMA_EN_BIT | PLX_DMA_START_BIT | PLX_CLEAR_DMA_INTR_BIT, + priv(dev)->plx9080_iobase + PLX_DMA0_CS_REG); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + if (cmd->stop_src == TRIG_COUNT) + priv(dev)->dio_count = cmd->stop_arg; +@@ -971,7 +971,7 @@ static irqreturn_t handle_interrupt(int + priv(dev)->hpdi_iobase + INTERRUPT_STATUS_REG); + } + /* spin lock makes sure noone else changes plx dma control reg */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + dma0_status = readb(priv(dev)->plx9080_iobase + PLX_DMA0_CS_REG); + if (plx_status & ICS_DMA0_A) { /* dma chan 0 interrupt */ + writeb((dma0_status & PLX_DMA_EN_BIT) | PLX_CLEAR_DMA_INTR_BIT, +@@ -983,10 +983,10 @@ static irqreturn_t handle_interrupt(int + } + DEBUG_PRINT(" cleared dma ch0 interrupt\n"); + } +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + /* spin lock makes sure noone else changes plx dma control reg */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + dma1_status = readb(priv(dev)->plx9080_iobase + PLX_DMA1_CS_REG); + if (plx_status & ICS_DMA1_A) /* XXX */ + { /* dma chan 1 interrupt */ +@@ -996,7 +996,7 @@ static irqreturn_t handle_interrupt(int + + DEBUG_PRINT(" cleared dma ch1 interrupt\n"); + } +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + /* clear possible plx9080 interrupt sources */ + if (plx_status & ICS_LDIA) { /* clear local doorbell interrupt */ +@@ -1036,11 +1036,11 @@ void abort_dma(struct comedi_device *dev + unsigned long flags; + + /* spinlock for plx dma control/status reg */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + + plx9080_abort_dma(priv(dev)->plx9080_iobase, channel); + +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + } + + static int hpdi_cancel(struct comedi_device *dev, struct comedi_subdevice *s) +--- a/drivers/staging/comedi/drivers/icp_multi.c ++++ b/drivers/staging/comedi/drivers/icp_multi.c +@@ -282,7 +282,7 @@ static int icp_multi_insn_read_ai(struct + readw(devpriv->io_addr + ICP_MULTI_ADC_CSR)); + #endif + +- comedi_udelay(1); ++ udelay(1); + + #ifdef ICP_MULTI_EXTDEBUG + printk("icp multi C n=%d ST=%4x\n", n, +@@ -304,7 +304,7 @@ static int icp_multi_insn_read_ai(struct + ICP_MULTI_ADC_CSR)); + #endif + +- comedi_udelay(1); ++ udelay(1); + } + + /* If we reach here, a timeout has occurred */ +@@ -411,7 +411,7 @@ static int icp_multi_insn_write_ao(struc + ICP_MULTI_DAC_CSR)); + #endif + +- comedi_udelay(1); ++ udelay(1); + } + + /* If we reach here, a timeout has occurred */ +@@ -842,7 +842,7 @@ static int icp_multi_reset(struct comedi + devpriv->io_addr + ICP_MULTI_DAC_CSR); + + /* Delay to allow DAC time to recover */ +- comedi_udelay(1); ++ udelay(1); + } + /* Digital outputs to 0 */ + writew(0, devpriv->io_addr + ICP_MULTI_DO); +@@ -954,7 +954,7 @@ static int icp_multi_attach(struct comed + + if (this_board->have_irq) { + if (irq) { +- if (comedi_request_irq(irq, interrupt_service_icp_multi, ++ if (request_irq(irq, interrupt_service_icp_multi, + IRQF_SHARED, "Inova Icp Multi", dev)) { + printk(", unable to allocate IRQ %u, DISABLING IT", irq); + irq = 0; /* Can't use IRQ */ +@@ -1072,7 +1072,7 @@ static int icp_multi_detach(struct comed + icp_multi_reset(dev); + + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + + if (dev->private && devpriv->io_addr) + iounmap(devpriv->io_addr); +--- a/drivers/staging/comedi/drivers/icp_multi.h ++++ b/drivers/staging/comedi/drivers/icp_multi.h +@@ -168,14 +168,14 @@ static int pci_card_alloc(struct pcilst_ + int i; + + if (!inova) { +- rt_printk(" - BUG!! inova is NULL!\n"); ++ printk(" - BUG!! inova is NULL!\n"); + return -1; + } + + if (inova->used) + return 1; + if (comedi_pci_enable(inova->pcidev, "icp_multi")) { +- rt_printk(" - Can't enable PCI device and request regions!\n"); ++ printk(" - Can't enable PCI device and request regions!\n"); + return -1; + } + /* Resources will be accurate now. */ +@@ -248,19 +248,19 @@ static struct pcilst_struct *select_and_ + + card = find_free_pci_card_by_device(vendor_id, device_id); + if (card == NULL) { +- rt_printk(" - Unused card not found in system!\n"); ++ printk(" - Unused card not found in system!\n"); + return NULL; + } + } else { + switch (find_free_pci_card_by_position(vendor_id, device_id, + pci_bus, pci_slot, &card)) { + case 1: +- rt_printk ++ printk + (" - Card not found on requested position b:s %d:%d!\n", + pci_bus, pci_slot); + return NULL; + case 2: +- rt_printk ++ printk + (" - Card on requested position is used b:s %d:%d!\n", + pci_bus, pci_slot); + return NULL; +@@ -270,7 +270,7 @@ static struct pcilst_struct *select_and_ + err = pci_card_alloc(card); + if (err != 0) { + if (err > 0) +- rt_printk(" - Can't allocate card!\n"); ++ printk(" - Can't allocate card!\n"); + /* else: error already printed. */ + return NULL; + } +--- a/drivers/staging/comedi/drivers/jr3_pci.c ++++ b/drivers/staging/comedi/drivers/jr3_pci.c +@@ -185,10 +185,10 @@ static void set_transforms(volatile stru + + set_u16(&channel->transforms[num].link[i].link_type, + transf.link[i].link_type); +- comedi_udelay(1); ++ udelay(1); + set_s16(&channel->transforms[num].link[i].link_amount, + transf.link[i].link_amount); +- comedi_udelay(1); ++ udelay(1); + if (transf.link[i].link_type == end_x_form) { + break; + } +@@ -496,12 +496,12 @@ static int jr3_download_firmware(struct + channel[i]. + program_low + [addr], data1); +- comedi_udelay(1); ++ udelay(1); + set_u16(&p->iobase-> + channel[i]. + program_high + [addr], data2); +- comedi_udelay(1); ++ udelay(1); + + } + } +@@ -734,7 +734,7 @@ static void jr3_pci_poll_dev(unsigned lo + int delay; + int i; + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + delay = 1000; + now = jiffies; + /* Poll all channels that are ready to be polled */ +@@ -757,7 +757,7 @@ static void jr3_pci_poll_dev(unsigned lo + } + } + } +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + devpriv->timer.expires = jiffies + msecs_to_jiffies(delay); + add_timer(&devpriv->timer); +--- a/drivers/staging/comedi/drivers/me4000.c ++++ b/drivers/staging/comedi/drivers/me4000.c +@@ -283,7 +283,7 @@ static int me4000_attach(struct comedi_d + s->insn_read = me4000_ai_insn_read; + + if (info->irq > 0) { +- if (comedi_request_irq(info->irq, me4000_ai_isr, ++ if (request_irq(info->irq, me4000_ai_isr, + IRQF_SHARED, "ME-4000", dev)) { + printk("comedi%d: me4000: me4000_attach(): Unable to allocate irq\n", dev->minor); + } else { +--- a/drivers/staging/comedi/drivers/mite.c ++++ b/drivers/staging/comedi/drivers/mite.c +@@ -258,7 +258,7 @@ struct mite_channel *mite_request_channe + struct mite_channel *channel = NULL; + + /* spin lock so mite_release_channel can be called safely from interrupts */ +- comedi_spin_lock_irqsave(&mite->lock, flags); ++ spin_lock_irqsave(&mite->lock, flags); + for (i = min_channel; i <= max_channel; ++i) { + if (mite->channel_allocated[i] == 0) { + mite->channel_allocated[i] = 1; +@@ -267,7 +267,7 @@ struct mite_channel *mite_request_channe + break; + } + } +- comedi_spin_unlock_irqrestore(&mite->lock, flags); ++ spin_unlock_irqrestore(&mite->lock, flags); + return channel; + } + +@@ -277,7 +277,7 @@ void mite_release_channel(struct mite_ch + unsigned long flags; + + /* spin lock to prevent races with mite_request_channel */ +- comedi_spin_lock_irqsave(&mite->lock, flags); ++ spin_lock_irqsave(&mite->lock, flags); + if (mite->channel_allocated[mite_chan->channel]) { + mite_dma_disarm(mite_chan); + mite_dma_reset(mite_chan); +@@ -292,7 +292,7 @@ MITE_CHCR reg isn't changed while dma is + mite_chan->ring = NULL; + mmiowb(); + } +- comedi_spin_unlock_irqrestore(&mite->lock, flags); ++ spin_unlock_irqrestore(&mite->lock, flags); + } + + void mite_dma_arm(struct mite_channel *mite_chan) +@@ -307,11 +307,11 @@ void mite_dma_arm(struct mite_channel *m + smp_mb(); + /* arm */ + chor = CHOR_START; +- comedi_spin_lock_irqsave(&mite->lock, flags); ++ spin_lock_irqsave(&mite->lock, flags); + mite_chan->done = 0; + writel(chor, mite->mite_io_addr + MITE_CHOR(mite_chan->channel)); + mmiowb(); +- comedi_spin_unlock_irqrestore(&mite->lock, flags); ++ spin_unlock_irqrestore(&mite->lock, flags); + /* mite_dma_tcr(mite, channel); */ + } + +@@ -413,7 +413,7 @@ void mite_prep_dma(struct mite_channel * + mcr |= CR_PSIZE32; + break; + default: +- rt_printk ++ printk + ("mite: bug! invalid mem bit width for dma transfer\n"); + break; + } +@@ -433,7 +433,7 @@ void mite_prep_dma(struct mite_channel * + dcr |= CR_PSIZE32; + break; + default: +- rt_printk ++ printk + ("mite: bug! invalid dev bit width for dma transfer\n"); + break; + } +@@ -539,7 +539,7 @@ int mite_sync_input_dma(struct mite_chan + nbytes = mite_bytes_written_to_memory_lb(mite_chan); + if ((int)(mite_bytes_written_to_memory_ub(mite_chan) - + old_alloc_count) > 0) { +- rt_printk("mite: DMA overwrite of free area\n"); ++ printk("mite: DMA overwrite of free area\n"); + async->events |= COMEDI_CB_OVERFLOW; + return -1; + } +@@ -581,7 +581,7 @@ int mite_sync_output_dma(struct mite_cha + (int)(nbytes_ub - stop_count) > 0) + nbytes_ub = stop_count; + if ((int)(nbytes_ub - old_alloc_count) > 0) { +- rt_printk("mite: DMA underrun\n"); ++ printk("mite: DMA underrun\n"); + async->events |= COMEDI_CB_OVERFLOW; + return -1; + } +@@ -602,7 +602,7 @@ unsigned mite_get_status(struct mite_cha + unsigned status; + unsigned long flags; + +- comedi_spin_lock_irqsave(&mite->lock, flags); ++ spin_lock_irqsave(&mite->lock, flags); + status = readl(mite->mite_io_addr + MITE_CHSR(mite_chan->channel)); + if (status & CHSR_DONE) { + mite_chan->done = 1; +@@ -610,7 +610,7 @@ unsigned mite_get_status(struct mite_cha + mite->mite_io_addr + MITE_CHOR(mite_chan->channel)); + } + mmiowb(); +- comedi_spin_unlock_irqrestore(&mite->lock, flags); ++ spin_unlock_irqrestore(&mite->lock, flags); + return status; + } + +@@ -621,9 +621,9 @@ int mite_done(struct mite_channel *mite_ + int done; + + mite_get_status(mite_chan); +- comedi_spin_lock_irqsave(&mite->lock, flags); ++ spin_lock_irqsave(&mite->lock, flags); + done = mite_chan->done; +- comedi_spin_unlock_irqrestore(&mite->lock, flags); ++ spin_unlock_irqrestore(&mite->lock, flags); + return done; + } + +--- a/drivers/staging/comedi/drivers/mite.h ++++ b/drivers/staging/comedi/drivers/mite.h +@@ -405,7 +405,7 @@ static inline int CR_RL(unsigned int ret + value++; + } + if (value > 0x7) +- rt_printk("comedi: bug! retry_limit too large\n"); ++ printk("comedi: bug! retry_limit too large\n"); + return (value & 0x7) << 21; + } + +--- a/drivers/staging/comedi/drivers/mpc624.c ++++ b/drivers/staging/comedi/drivers/mpc624.c +@@ -166,9 +166,9 @@ static int mpc624_attach(struct comedi_d + unsigned long iobase; + + iobase = it->options[0]; +- rt_printk("comedi%d: mpc624 [0x%04lx, ", dev->minor, iobase); ++ printk("comedi%d: mpc624 [0x%04lx, ", dev->minor, iobase); + if (request_region(iobase, MPC624_SIZE, "mpc624") == NULL) { +- rt_printk("I/O port(s) in use\n"); ++ printk("I/O port(s) in use\n"); + return -EIO; + } + +@@ -182,46 +182,46 @@ static int mpc624_attach(struct comedi_d + switch (it->options[1]) { + case 0: + devpriv->ulConvertionRate = MPC624_SPEED_3_52_kHz; +- rt_printk("3.52 kHz, "); ++ printk("3.52 kHz, "); + break; + case 1: + devpriv->ulConvertionRate = MPC624_SPEED_1_76_kHz; +- rt_printk("1.76 kHz, "); ++ printk("1.76 kHz, "); + break; + case 2: + devpriv->ulConvertionRate = MPC624_SPEED_880_Hz; +- rt_printk("880 Hz, "); ++ printk("880 Hz, "); + break; + case 3: + devpriv->ulConvertionRate = MPC624_SPEED_440_Hz; +- rt_printk("440 Hz, "); ++ printk("440 Hz, "); + break; + case 4: + devpriv->ulConvertionRate = MPC624_SPEED_220_Hz; +- rt_printk("220 Hz, "); ++ printk("220 Hz, "); + break; + case 5: + devpriv->ulConvertionRate = MPC624_SPEED_110_Hz; +- rt_printk("110 Hz, "); ++ printk("110 Hz, "); + break; + case 6: + devpriv->ulConvertionRate = MPC624_SPEED_55_Hz; +- rt_printk("55 Hz, "); ++ printk("55 Hz, "); + break; + case 7: + devpriv->ulConvertionRate = MPC624_SPEED_27_5_Hz; +- rt_printk("27.5 Hz, "); ++ printk("27.5 Hz, "); + break; + case 8: + devpriv->ulConvertionRate = MPC624_SPEED_13_75_Hz; +- rt_printk("13.75 Hz, "); ++ printk("13.75 Hz, "); + break; + case 9: + devpriv->ulConvertionRate = MPC624_SPEED_6_875_Hz; +- rt_printk("6.875 Hz, "); ++ printk("6.875 Hz, "); + break; + default: +- rt_printk ++ printk + ("illegal convertion rate setting! Valid numbers are 0..9. Using 9 => 6.875 Hz, "); + devpriv->ulConvertionRate = MPC624_SPEED_3_52_kHz; + } +@@ -237,29 +237,29 @@ static int mpc624_attach(struct comedi_d + switch (it->options[1]) { + default: + s->maxdata = 0x3FFFFFFF; +- rt_printk("30 bit, "); ++ printk("30 bit, "); + } + + switch (it->options[1]) { + case 0: + s->range_table = &range_mpc624_bipolar1; +- rt_printk("1.01V]: "); ++ printk("1.01V]: "); + break; + default: + s->range_table = &range_mpc624_bipolar10; +- rt_printk("10.1V]: "); ++ printk("10.1V]: "); + } + s->len_chanlist = 1; + s->insn_read = mpc624_ai_rinsn; + +- rt_printk("attached\n"); ++ printk("attached\n"); + + return 1; + } + + static int mpc624_detach(struct comedi_device *dev) + { +- rt_printk("comedi%d: mpc624: remove\n", dev->minor); ++ printk("comedi%d: mpc624: remove\n", dev->minor); + + if (dev->iobase) + release_region(dev->iobase, MPC624_SIZE); +@@ -279,48 +279,48 @@ static int mpc624_ai_rinsn(struct comedi + + /* WARNING: We always write 0 to GNSWA bit, so the channel range is +-/10.1Vdc */ + outb(insn->chanspec, dev->iobase + MPC624_GNMUXCH); +-/* rt_printk("Channel %d: \n", insn->chanspec); */ ++/* printk("Channel %d: \n", insn->chanspec); */ + if (!insn->n) { +- rt_printk("MPC624: Warning, no data to aquire\n"); ++ printk("MPC624: Warning, no data to aquire\n"); + return 0; + } + + for (n = 0; n < insn->n; n++) { + /* Trigger the convertion */ + outb(MPC624_ADSCK, dev->iobase + MPC624_ADC); +- comedi_udelay(1); ++ udelay(1); + outb(MPC624_ADCS | MPC624_ADSCK, dev->iobase + MPC624_ADC); +- comedi_udelay(1); ++ udelay(1); + outb(0, dev->iobase + MPC624_ADC); +- comedi_udelay(1); ++ udelay(1); + + /* Wait for the convertion to end */ + for (i = 0; i < TIMEOUT; i++) { + ucPort = inb(dev->iobase + MPC624_ADC); + if (ucPort & MPC624_ADBUSY) +- comedi_udelay(1000); ++ udelay(1000); + else + break; + } + if (i == TIMEOUT) { +- rt_printk("MPC624: timeout (%dms)\n", TIMEOUT); ++ printk("MPC624: timeout (%dms)\n", TIMEOUT); + data[n] = 0; + return -ETIMEDOUT; + } + /* Start reading data */ + data_in = 0; + data_out = devpriv->ulConvertionRate; +- comedi_udelay(1); ++ udelay(1); + for (i = 0; i < 32; i++) { + /* Set the clock low */ + outb(0, dev->iobase + MPC624_ADC); +- comedi_udelay(1); ++ udelay(1); + + if (data_out & (1 << 31)) /* the next bit is a 1 */ + { + /* Set the ADSDI line (send to MPC624) */ + outb(MPC624_ADSDI, dev->iobase + MPC624_ADC); +- comedi_udelay(1); ++ udelay(1); + /* Set the clock high */ + outb(MPC624_ADSCK | MPC624_ADSDI, + dev->iobase + MPC624_ADC); +@@ -328,17 +328,17 @@ static int mpc624_ai_rinsn(struct comedi + { + /* Set the ADSDI line (send to MPC624) */ + outb(0, dev->iobase + MPC624_ADC); +- comedi_udelay(1); ++ udelay(1); + /* Set the clock high */ + outb(MPC624_ADSCK, dev->iobase + MPC624_ADC); + } + /* Read ADSDO on high clock (receive from MPC624) */ +- comedi_udelay(1); ++ udelay(1); + data_in <<= 1; + data_in |= + (inb(dev->iobase + + MPC624_ADC) & MPC624_ADSDO) >> 4; +- comedi_udelay(1); ++ udelay(1); + + data_out <<= 1; + } +@@ -357,10 +357,10 @@ static int mpc624_ai_rinsn(struct comedi + /* 00: sub-LSB */ + + if (data_in & MPC624_EOC_BIT) +- rt_printk("MPC624: EOC bit is set (data_in=%lu)!", ++ printk("MPC624: EOC bit is set (data_in=%lu)!", + data_in); + if (data_in & MPC624_DMY_BIT) +- rt_printk("MPC624: DMY bit is set (data_in=%lu)!", ++ printk("MPC624: DMY bit is set (data_in=%lu)!", + data_in); + if (data_in & MPC624_SGN_BIT) /* check the sign bit */ + { /* The voltage is positive */ +--- a/drivers/staging/comedi/drivers/ni_6527.c ++++ b/drivers/staging/comedi/drivers/ni_6527.c +@@ -432,8 +432,8 @@ static int ni6527_attach(struct comedi_d + devpriv->mite->daq_io_addr + Clear_Register); + writeb(0x00, devpriv->mite->daq_io_addr + Master_Interrupt_Control); + +- ret = comedi_request_irq(mite_irq(devpriv->mite), ni6527_interrupt, +- IRQF_SHARED, "ni6527", dev); ++ ret = request_irq(mite_irq(devpriv->mite), ni6527_interrupt, ++ IRQF_SHARED, "ni6527", dev); + if (ret < 0) { + printk(" irq not available"); + } else +@@ -452,7 +452,7 @@ static int ni6527_detach(struct comedi_d + } + + if (dev->irq) { +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + + if (devpriv && devpriv->mite) { +--- a/drivers/staging/comedi/drivers/ni_65xx.c ++++ b/drivers/staging/comedi/drivers/ni_65xx.c +@@ -437,12 +437,12 @@ static int ni_65xx_dio_insn_bits(struct + writeb(bits, + private(dev)->mite->daq_io_addr + + Port_Data(port)); +-/* rt_printk("wrote 0x%x to port %i\n", bits, port); */ ++/* printk("wrote 0x%x to port %i\n", bits, port); */ + } + port_read_bits = + readb(private(dev)->mite->daq_io_addr + + Port_Data(port)); +-/* rt_printk("read 0x%x from port %i\n", port_read_bits, port); */ ++/* printk("read 0x%x from port %i\n", port_read_bits, port); */ + if (bitshift > 0) { + port_read_bits <<= bitshift; + } else { +@@ -742,8 +742,8 @@ static int ni_65xx_attach(struct comedi_ + /* Set filter interval to 0 (32bit reg) */ + writeb(0x00000000, private(dev)->mite->daq_io_addr + Filter_Interval); + +- ret = comedi_request_irq(dev->irq, ni_65xx_interrupt, IRQF_SHARED, +- "ni_65xx", dev); ++ ret = request_irq(dev->irq, ni_65xx_interrupt, IRQF_SHARED, ++ "ni_65xx", dev); + if (ret < 0) { + dev->irq = 0; + printk(" irq not available"); +@@ -764,7 +764,7 @@ static int ni_65xx_detach(struct comedi_ + } + + if (dev->irq) { +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + + if (private(dev)) { +--- a/drivers/staging/comedi/drivers/ni_660x.c ++++ b/drivers/staging/comedi/drivers/ni_660x.c +@@ -695,7 +695,7 @@ static enum NI_660x_Register ni_gpct_to_ + ni_660x_register = G3InterruptEnable; + break; + default: +- rt_printk("%s: unhandled register 0x%x in switch.\n", ++ printk("%s: unhandled register 0x%x in switch.\n", + __func__, reg); + BUG(); + return 0; +@@ -719,7 +719,7 @@ static inline void ni_660x_write_registe + writel(bits, write_address); + break; + default: +- rt_printk("%s: %s: bug! unhandled case (reg=0x%x) in switch.\n", ++ printk("%s: %s: bug! unhandled case (reg=0x%x) in switch.\n", + __FILE__, __func__, reg); + BUG(); + break; +@@ -741,7 +741,7 @@ static inline unsigned ni_660x_read_regi + return readl(read_address); + break; + default: +- rt_printk("%s: %s: bug! unhandled case (reg=0x%x) in switch.\n", ++ printk("%s: %s: bug! unhandled case (reg=0x%x) in switch.\n", + __FILE__, __func__, reg); + BUG(); + break; +@@ -777,7 +777,7 @@ static inline void ni_660x_set_dma_chann + unsigned mite_channel, struct ni_gpct *counter) + { + unsigned long flags; +- comedi_spin_lock_irqsave(&private(dev)->soft_reg_copy_lock, flags); ++ spin_lock_irqsave(&private(dev)->soft_reg_copy_lock, flags); + private(dev)->dma_configuration_soft_copies[counter->chip_index] &= + ~dma_select_mask(mite_channel); + private(dev)->dma_configuration_soft_copies[counter->chip_index] |= +@@ -788,14 +788,14 @@ static inline void ni_660x_set_dma_chann + chip_index] | dma_reset_bit(mite_channel), + DMAConfigRegister); + mmiowb(); +- comedi_spin_unlock_irqrestore(&private(dev)->soft_reg_copy_lock, flags); ++ spin_unlock_irqrestore(&private(dev)->soft_reg_copy_lock, flags); + } + + static inline void ni_660x_unset_dma_channel(struct comedi_device *dev, + unsigned mite_channel, struct ni_gpct *counter) + { + unsigned long flags; +- comedi_spin_lock_irqsave(&private(dev)->soft_reg_copy_lock, flags); ++ spin_lock_irqsave(&private(dev)->soft_reg_copy_lock, flags); + private(dev)->dma_configuration_soft_copies[counter->chip_index] &= + ~dma_select_mask(mite_channel); + private(dev)->dma_configuration_soft_copies[counter->chip_index] |= +@@ -804,7 +804,7 @@ static inline void ni_660x_unset_dma_cha + private(dev)->dma_configuration_soft_copies[counter-> + chip_index], DMAConfigRegister); + mmiowb(); +- comedi_spin_unlock_irqrestore(&private(dev)->soft_reg_copy_lock, flags); ++ spin_unlock_irqrestore(&private(dev)->soft_reg_copy_lock, flags); + } + + static int ni_660x_request_mite_channel(struct comedi_device *dev, +@@ -813,13 +813,13 @@ static int ni_660x_request_mite_channel( + unsigned long flags; + struct mite_channel *mite_chan; + +- comedi_spin_lock_irqsave(&private(dev)->mite_channel_lock, flags); ++ spin_lock_irqsave(&private(dev)->mite_channel_lock, flags); + BUG_ON(counter->mite_chan); + mite_chan = + mite_request_channel(private(dev)->mite, mite_ring(private(dev), + counter)); + if (mite_chan == NULL) { +- comedi_spin_unlock_irqrestore(&private(dev)->mite_channel_lock, ++ spin_unlock_irqrestore(&private(dev)->mite_channel_lock, + flags); + comedi_error(dev, + "failed to reserve mite dma channel for counter."); +@@ -828,7 +828,7 @@ static int ni_660x_request_mite_channel( + mite_chan->dir = direction; + ni_tio_set_mite_channel(counter, mite_chan); + ni_660x_set_dma_channel(dev, mite_chan->channel, counter); +- comedi_spin_unlock_irqrestore(&private(dev)->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&private(dev)->mite_channel_lock, flags); + return 0; + } + +@@ -836,7 +836,7 @@ void ni_660x_release_mite_channel(struct + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&private(dev)->mite_channel_lock, flags); ++ spin_lock_irqsave(&private(dev)->mite_channel_lock, flags); + if (counter->mite_chan) { + struct mite_channel *mite_chan = counter->mite_chan; + +@@ -844,7 +844,7 @@ void ni_660x_release_mite_channel(struct + ni_tio_set_mite_channel(counter, NULL); + mite_release_channel(mite_chan); + } +- comedi_spin_unlock_irqrestore(&private(dev)->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&private(dev)->mite_channel_lock, flags); + } + + static int ni_660x_cmd(struct comedi_device *dev, struct comedi_subdevice *s) +@@ -921,13 +921,13 @@ static irqreturn_t ni_660x_interrupt(int + if (dev->attached == 0) + return IRQ_NONE; + /* lock to avoid race with comedi_poll */ +- comedi_spin_lock_irqsave(&private(dev)->interrupt_lock, flags); ++ spin_lock_irqsave(&private(dev)->interrupt_lock, flags); + smp_mb(); + for (i = 0; i < ni_660x_num_counters(dev); ++i) { + s = dev->subdevices + NI_660X_GPCT_SUBDEV(i); + ni_660x_handle_gpct_interrupt(dev, s); + } +- comedi_spin_unlock_irqrestore(&private(dev)->interrupt_lock, flags); ++ spin_unlock_irqrestore(&private(dev)->interrupt_lock, flags); + return IRQ_HANDLED; + } + +@@ -936,9 +936,9 @@ static int ni_660x_input_poll(struct com + { + unsigned long flags; + /* lock to avoid race with comedi_poll */ +- comedi_spin_lock_irqsave(&private(dev)->interrupt_lock, flags); ++ spin_lock_irqsave(&private(dev)->interrupt_lock, flags); + mite_sync_input_dma(subdev_to_counter(s)->mite_chan, s->async); +- comedi_spin_unlock_irqrestore(&private(dev)->interrupt_lock, flags); ++ spin_unlock_irqrestore(&private(dev)->interrupt_lock, flags); + return comedi_buf_read_n_available(s->async); + } + +@@ -1107,10 +1107,8 @@ static int ni_660x_attach(struct comedi_ + for (i = 0; i < board(dev)->n_chips; ++i) { + set_tio_counterswap(dev, i); + } +- ret = comedi_request_irq(mite_irq(private(dev)->mite), +- ni_660x_interrupt, IRQF_SHARED, "ni_660x", +- dev); +- ++ ret = request_irq(mite_irq(private(dev)->mite), ni_660x_interrupt, ++ IRQF_SHARED, "ni_660x", dev); + if (ret < 0) { + printk(" irq not available\n"); + return ret; +@@ -1131,7 +1129,7 @@ static int ni_660x_detach(struct comedi_ + + /* Free irq */ + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + + if (dev->private) { + if (private(dev)->counter_dev) +--- a/drivers/staging/comedi/drivers/ni_670x.c ++++ b/drivers/staging/comedi/drivers/ni_670x.c +@@ -217,7 +217,7 @@ static int ni_670x_detach(struct comedi_ + mite_unsetup(devpriv->mite); + + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + + return 0; + } +--- a/drivers/staging/comedi/drivers/ni_at_a2150.c ++++ b/drivers/staging/comedi/drivers/ni_at_a2150.c +@@ -201,9 +201,9 @@ COMEDI_INITCLEANUP(driver_a2150); + + static void ni_dump_regs(struct comedi_device *dev) + { +- rt_printk("config bits 0x%x\n", devpriv->config_bits); +- rt_printk("irq dma bits 0x%x\n", devpriv->irq_dma_bits); +- rt_printk("status bits 0x%x\n", inw(dev->iobase + STATUS_REG)); ++ printk("config bits 0x%x\n", devpriv->config_bits); ++ printk("irq dma bits 0x%x\n", devpriv->irq_dma_bits); ++ printk("status bits 0x%x\n", inw(dev->iobase + STATUS_REG)); + } + + #endif +@@ -370,7 +370,7 @@ static int a2150_attach(struct comedi_de + printk(" invalid irq line %u\n", irq); + return -EINVAL; + } +- if (comedi_request_irq(irq, a2150_interrupt, 0, ++ if (request_irq(irq, a2150_interrupt, 0, + driver_a2150.driver_name, dev)) { + printk("unable to allocate irq %u\n", irq); + return -EINVAL; +@@ -437,7 +437,7 @@ static int a2150_attach(struct comedi_de + for (i = 0; i < timeout; i++) { + if ((DCAL_BIT & inw(dev->iobase + STATUS_REG)) == 0) + break; +- comedi_udelay(1000); ++ udelay(1000); + } + if (i == timeout) { + printk(" timed out waiting for offset calibration to complete\n"); +@@ -461,7 +461,7 @@ static int a2150_detach(struct comedi_de + } + + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + if (devpriv) { + if (devpriv->dma) + free_dma(devpriv->dma); +@@ -764,7 +764,7 @@ static int a2150_ai_rinsn(struct comedi_ + for (i = 0; i < timeout; i++) { + if (inw(dev->iobase + STATUS_REG) & FNE_BIT) + break; +- comedi_udelay(1); ++ udelay(1); + } + if (i == timeout) { + comedi_error(dev, "timeout"); +@@ -778,7 +778,7 @@ static int a2150_ai_rinsn(struct comedi_ + for (i = 0; i < timeout; i++) { + if (inw(dev->iobase + STATUS_REG) & FNE_BIT) + break; +- comedi_udelay(1); ++ udelay(1); + } + if (i == timeout) { + comedi_error(dev, "timeout"); +@@ -789,7 +789,7 @@ static int a2150_ai_rinsn(struct comedi_ + #endif + data[n] = inw(dev->iobase + FIFO_DATA_REG); + #ifdef A2150_DEBUG +- rt_printk(" data is %i\n", data[n]); ++ printk(" data is %i\n", data[n]); + #endif + data[n] ^= 0x8000; + } +--- a/drivers/staging/comedi/drivers/ni_atmio16d.c ++++ b/drivers/staging/comedi/drivers/ni_atmio16d.c +@@ -579,7 +579,7 @@ static int atmio16d_ai_insn_read(struct + } + /* end waiting, now check if it timed out */ + if (t == ATMIO16D_TIMEOUT) { +- rt_printk("atmio16d: timeout\n"); ++ printk("atmio16d: timeout\n"); + + return -ETIME; + } +@@ -743,8 +743,7 @@ static int atmio16d_attach(struct comedi + irq = it->options[1]; + if (irq) { + +- ret = comedi_request_irq(irq, atmio16d_interrupt, +- 0, "atmio16d", dev); ++ ret = request_irq(irq, atmio16d_interrupt, 0, "atmio16d", dev); + if (ret < 0) { + printk("failed to allocate irq %u\n", irq); + return ret; +@@ -856,7 +855,7 @@ static int atmio16d_detach(struct comedi + subdev_8255_cleanup(dev, dev->subdevices + 3); + + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + + reset_atmio16d(dev); + +--- a/drivers/staging/comedi/drivers/ni_atmio.c ++++ b/drivers/staging/comedi/drivers/ni_atmio.c +@@ -301,14 +301,14 @@ static void ni_atmio_win_out(struct come + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->window_lock, flags); ++ spin_lock_irqsave(&devpriv->window_lock, flags); + if ((addr) < 8) { + ni_writew(data, addr * 2); + } else { + ni_writew(addr, Window_Address); + ni_writew(data, Window_Data); + } +- comedi_spin_unlock_irqrestore(&devpriv->window_lock, flags); ++ spin_unlock_irqrestore(&devpriv->window_lock, flags); + } + + static uint16_t ni_atmio_win_in(struct comedi_device *dev, int addr) +@@ -316,14 +316,14 @@ static uint16_t ni_atmio_win_in(struct c + unsigned long flags; + uint16_t ret; + +- comedi_spin_lock_irqsave(&devpriv->window_lock, flags); ++ spin_lock_irqsave(&devpriv->window_lock, flags); + if (addr < 8) { + ret = ni_readw(addr * 2); + } else { + ni_writew(addr, Window_Address); + ret = ni_readw(Window_Data); + } +- comedi_spin_unlock_irqrestore(&devpriv->window_lock, flags); ++ spin_unlock_irqrestore(&devpriv->window_lock, flags); + + return ret; + } +@@ -362,7 +362,7 @@ static int ni_atmio_detach(struct comedi + if (dev->iobase) + release_region(dev->iobase, NI_SIZE); + if (dev->irq) { +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + if (devpriv->isapnp_dev) + pnp_device_detach(devpriv->isapnp_dev); +@@ -478,8 +478,8 @@ static int ni_atmio_attach(struct comedi + return -EINVAL; + } + printk(" ( irq = %u )", irq); +- ret = comedi_request_irq(irq, ni_E_interrupt, +- NI_E_IRQ_FLAGS, "ni_atmio", dev); ++ ret = request_irq(irq, ni_E_interrupt, NI_E_IRQ_FLAGS, ++ "ni_atmio", dev); + + if (ret < 0) { + printk(" irq not available\n"); +--- a/drivers/staging/comedi/drivers/ni_daq_700.c ++++ b/drivers/staging/comedi/drivers/ni_daq_700.c +@@ -425,7 +425,7 @@ static int dio700_detach(struct comedi_d + if (thisboard->bustype != pcmcia_bustype && dev->iobase) + release_region(dev->iobase, DIO700_SIZE); + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + + return 0; + }; +--- a/drivers/staging/comedi/drivers/ni_daq_dio24.c ++++ b/drivers/staging/comedi/drivers/ni_daq_dio24.c +@@ -182,7 +182,7 @@ static int dio24_detach(struct comedi_de + if (thisboard->bustype != pcmcia_bustype && dev->iobase) + release_region(dev->iobase, DIO24_SIZE); + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + + return 0; + }; +--- a/drivers/staging/comedi/drivers/ni_labpc.c ++++ b/drivers/staging/comedi/drivers/ni_labpc.c +@@ -516,7 +516,7 @@ int labpc_common_attach(struct comedi_de + isr_flags = 0; + if (thisboard->bustype == pci_bustype) + isr_flags |= IRQF_SHARED; +- if (comedi_request_irq(irq, labpc_interrupt, isr_flags, ++ if (request_irq(irq, labpc_interrupt, isr_flags, + driver_labpc.driver_name, dev)) { + printk("unable to allocate irq %u\n", irq); + return -EINVAL; +@@ -737,7 +737,7 @@ int labpc_common_detach(struct comedi_de + if (devpriv->dma_chan) + free_dma(devpriv->dma_chan); + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + if (thisboard->bustype == isa_bustype && dev->iobase) + release_region(dev->iobase, LABPC_SIZE); + #ifdef CONFIG_COMEDI_PCI +@@ -759,10 +759,10 @@ static int labpc_cancel(struct comedi_de + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + devpriv->command2_bits &= ~SWTRIG_BIT & ~HWTRIG_BIT & ~PRETRIG_BIT; + devpriv->write_byte(devpriv->command2_bits, dev->iobase + COMMAND2_REG); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + devpriv->command3_bits = 0; + devpriv->write_byte(devpriv->command3_bits, dev->iobase + COMMAND3_REG); +@@ -788,7 +788,7 @@ static enum scan_mode labpc_ai_scan_mode + if (CR_CHAN(cmd->chanlist[0]) > CR_CHAN(cmd->chanlist[1])) + return MODE_MULT_CHAN_DOWN; + +- rt_printk("ni_labpc: bug! this should never happen\n"); ++ printk("ni_labpc: bug! this should never happen\n"); + + return 0; + } +@@ -844,7 +844,7 @@ static int labpc_ai_chanlist_invalid(con + } + break; + default: +- rt_printk("ni_labpc: bug! in chanlist check\n"); ++ printk("ni_labpc: bug! in chanlist check\n"); + return 1; + break; + } +@@ -1082,10 +1082,10 @@ static int labpc_ai_cmd(struct comedi_de + aref = CR_AREF(cmd->chanlist[0]); + + /* make sure board is disabled before setting up aquisition */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + devpriv->command2_bits &= ~SWTRIG_BIT & ~HWTRIG_BIT & ~PRETRIG_BIT; + devpriv->write_byte(devpriv->command2_bits, dev->iobase + COMMAND2_REG); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + devpriv->command3_bits = 0; + devpriv->write_byte(devpriv->command3_bits, dev->iobase + COMMAND3_REG); +@@ -1174,7 +1174,7 @@ static int labpc_ai_cmd(struct comedi_de + devpriv->command1_bits |= ADC_SCAN_EN_BIT; + /* need a brief delay before enabling scan, or scan list will get screwed when you switch + * between scan up to scan down mode - dunno why */ +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command1_bits, + dev->iobase + COMMAND1_REG); + } +@@ -1275,7 +1275,7 @@ static int labpc_ai_cmd(struct comedi_de + + /* command2 reg */ + /* use 2 cascaded counters for pacing */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + devpriv->command2_bits |= CASCADE_BIT; + switch (cmd->start_src) { + case TRIG_EXT: +@@ -1303,7 +1303,7 @@ static int labpc_ai_cmd(struct comedi_de + return -1; + } + devpriv->write_byte(devpriv->command2_bits, dev->iobase + COMMAND2_REG); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + return 0; + } +@@ -1510,10 +1510,10 @@ static int labpc_ai_rinsn(struct comedi_ + unsigned long flags; + + /* disable timed conversions */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + devpriv->command2_bits &= ~SWTRIG_BIT & ~HWTRIG_BIT & ~PRETRIG_BIT; + devpriv->write_byte(devpriv->command2_bits, dev->iobase + COMMAND2_REG); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + /* disable interrupt generation and dma */ + devpriv->command3_bits = 0; +@@ -1571,7 +1571,7 @@ static int labpc_ai_rinsn(struct comedi_ + if (devpriv->read_byte(dev->iobase + + STATUS1_REG) & DATA_AVAIL_BIT) + break; +- comedi_udelay(1); ++ udelay(1); + } + if (i == timeout) { + comedi_error(dev, "timeout"); +@@ -1598,10 +1598,10 @@ static int labpc_ao_winsn(struct comedi_ + /* turn off pacing of analog output channel */ + /* note: hardware bug in daqcard-1200 means pacing cannot + * be independently enabled/disabled for its the two channels */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + devpriv->command2_bits &= ~DAC_PACED_BIT(channel); + devpriv->write_byte(devpriv->command2_bits, dev->iobase + COMMAND2_REG); +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + /* set range */ + if (thisboard->register_layout == labpc_1200_layout) { +@@ -1809,12 +1809,12 @@ static void labpc_serial_out(struct come + devpriv->command5_bits |= SDATA_BIT; + else + devpriv->command5_bits &= ~SDATA_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, + dev->iobase + COMMAND5_REG); + /* set clock to load bit */ + devpriv->command5_bits |= SCLOCK_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, + dev->iobase + COMMAND5_REG); + } +@@ -1830,16 +1830,16 @@ static unsigned int labpc_serial_in(stru + for (i = 1; i <= value_width; i++) { + /* set serial clock */ + devpriv->command5_bits |= SCLOCK_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, + dev->iobase + COMMAND5_REG); + /* clear clock bit */ + devpriv->command5_bits &= ~SCLOCK_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, + dev->iobase + COMMAND5_REG); + /* read bits most significant bit first */ +- comedi_udelay(1); ++ udelay(1); + devpriv->status2_bits = + devpriv->read_byte(dev->iobase + STATUS2_REG); + if (devpriv->status2_bits & EEPROM_OUT_BIT) { +@@ -1858,10 +1858,10 @@ static unsigned int labpc_eeprom_read(st + + /* enable read/write to eeprom */ + devpriv->command5_bits &= ~EEPROM_EN_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, dev->iobase + COMMAND5_REG); + devpriv->command5_bits |= EEPROM_EN_BIT | EEPROM_WRITE_UNPROTECT_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, dev->iobase + COMMAND5_REG); + + /* send read instruction */ +@@ -1873,7 +1873,7 @@ static unsigned int labpc_eeprom_read(st + + /* disable read/write to eeprom */ + devpriv->command5_bits &= ~EEPROM_EN_BIT & ~EEPROM_WRITE_UNPROTECT_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, dev->iobase + COMMAND5_REG); + + return value; +@@ -1904,21 +1904,21 @@ static unsigned int labpc_eeprom_write(s + + /* enable read/write to eeprom */ + devpriv->command5_bits &= ~EEPROM_EN_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, dev->iobase + COMMAND5_REG); + devpriv->command5_bits |= EEPROM_EN_BIT | EEPROM_WRITE_UNPROTECT_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, dev->iobase + COMMAND5_REG); + + /* send write_enable instruction */ + labpc_serial_out(dev, write_enable_instruction, write_length); + devpriv->command5_bits &= ~EEPROM_EN_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, dev->iobase + COMMAND5_REG); + + /* send write instruction */ + devpriv->command5_bits |= EEPROM_EN_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, dev->iobase + COMMAND5_REG); + labpc_serial_out(dev, write_instruction, write_length); + /* send 8 bit address to write to */ +@@ -1926,12 +1926,12 @@ static unsigned int labpc_eeprom_write(s + /* write value */ + labpc_serial_out(dev, value, write_length); + devpriv->command5_bits &= ~EEPROM_EN_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, dev->iobase + COMMAND5_REG); + + /* disable read/write to eeprom */ + devpriv->command5_bits &= ~EEPROM_EN_BIT & ~EEPROM_WRITE_UNPROTECT_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, dev->iobase + COMMAND5_REG); + + return 0; +@@ -1945,10 +1945,10 @@ static unsigned int labpc_eeprom_read_st + + /* enable read/write to eeprom */ + devpriv->command5_bits &= ~EEPROM_EN_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, dev->iobase + COMMAND5_REG); + devpriv->command5_bits |= EEPROM_EN_BIT | EEPROM_WRITE_UNPROTECT_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, dev->iobase + COMMAND5_REG); + + /* send read status instruction */ +@@ -1958,7 +1958,7 @@ static unsigned int labpc_eeprom_read_st + + /* disable read/write to eeprom */ + devpriv->command5_bits &= ~EEPROM_EN_BIT & ~EEPROM_WRITE_UNPROTECT_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, dev->iobase + COMMAND5_REG); + + return value; +@@ -1975,7 +1975,7 @@ static void write_caldac(struct comedi_d + /* clear caldac load bit and make sure we don't write to eeprom */ + devpriv->command5_bits &= + ~CALDAC_LOAD_BIT & ~EEPROM_EN_BIT & ~EEPROM_WRITE_UNPROTECT_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, dev->iobase + COMMAND5_REG); + + /* write 4 bit channel */ +@@ -1985,10 +1985,10 @@ static void write_caldac(struct comedi_d + + /* set and clear caldac bit to load caldac value */ + devpriv->command5_bits |= CALDAC_LOAD_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, dev->iobase + COMMAND5_REG); + devpriv->command5_bits &= ~CALDAC_LOAD_BIT; +- comedi_udelay(1); ++ udelay(1); + devpriv->write_byte(devpriv->command5_bits, dev->iobase + COMMAND5_REG); + } + +--- a/drivers/staging/comedi/drivers/ni_mio_common.c ++++ b/drivers/staging/comedi/drivers/ni_mio_common.c +@@ -365,7 +365,7 @@ static inline void ni_set_bitfield(struc + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->soft_reg_copy_lock, flags); ++ spin_lock_irqsave(&devpriv->soft_reg_copy_lock, flags); + switch (reg) { + case Interrupt_A_Enable_Register: + devpriv->int_a_enable_reg &= ~bit_mask; +@@ -396,13 +396,13 @@ static inline void ni_set_bitfield(struc + ni_writeb(devpriv->g0_g1_select_reg, G0_G1_Select); + break; + default: +- rt_printk("Warning %s() called with invalid register\n", ++ printk("Warning %s() called with invalid register\n", + __func__); +- rt_printk("reg is %d\n", reg); ++ printk("reg is %d\n", reg); + break; + } + mmiowb(); +- comedi_spin_unlock_irqrestore(&devpriv->soft_reg_copy_lock, flags); ++ spin_unlock_irqrestore(&devpriv->soft_reg_copy_lock, flags); + } + + #ifdef PCIDMA +@@ -460,7 +460,7 @@ static inline void ni_set_cdo_dma_channe + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->soft_reg_copy_lock, flags); ++ spin_lock_irqsave(&devpriv->soft_reg_copy_lock, flags); + devpriv->cdio_dma_select_reg &= ~CDO_DMA_Select_Mask; + if (mite_channel >= 0) { + /*XXX just guessing ni_stc_dma_channel_select_bitfield() returns the right bits, +@@ -472,19 +472,19 @@ static inline void ni_set_cdo_dma_channe + } + ni_writeb(devpriv->cdio_dma_select_reg, M_Offset_CDIO_DMA_Select); + mmiowb(); +- comedi_spin_unlock_irqrestore(&devpriv->soft_reg_copy_lock, flags); ++ spin_unlock_irqrestore(&devpriv->soft_reg_copy_lock, flags); + } + + static int ni_request_ai_mite_channel(struct comedi_device *dev) + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); + BUG_ON(devpriv->ai_mite_chan); + devpriv->ai_mite_chan = + mite_request_channel(devpriv->mite, devpriv->ai_mite_ring); + if (devpriv->ai_mite_chan == NULL) { +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, + flags); + comedi_error(dev, + "failed to reserve mite dma channel for analog input."); +@@ -492,7 +492,7 @@ static int ni_request_ai_mite_channel(st + } + devpriv->ai_mite_chan->dir = COMEDI_INPUT; + ni_set_ai_dma_channel(dev, devpriv->ai_mite_chan->channel); +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + return 0; + } + +@@ -500,12 +500,12 @@ static int ni_request_ao_mite_channel(st + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); + BUG_ON(devpriv->ao_mite_chan); + devpriv->ao_mite_chan = + mite_request_channel(devpriv->mite, devpriv->ao_mite_ring); + if (devpriv->ao_mite_chan == NULL) { +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, + flags); + comedi_error(dev, + "failed to reserve mite dma channel for analog outut."); +@@ -513,7 +513,7 @@ static int ni_request_ao_mite_channel(st + } + devpriv->ao_mite_chan->dir = COMEDI_OUTPUT; + ni_set_ao_dma_channel(dev, devpriv->ao_mite_chan->channel); +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + return 0; + } + +@@ -524,13 +524,13 @@ static int ni_request_gpct_mite_channel( + struct mite_channel *mite_chan; + + BUG_ON(gpct_index >= NUM_GPCT); +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); + BUG_ON(devpriv->counter_dev->counters[gpct_index].mite_chan); + mite_chan = + mite_request_channel(devpriv->mite, + devpriv->gpct_mite_ring[gpct_index]); + if (mite_chan == NULL) { +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, + flags); + comedi_error(dev, + "failed to reserve mite dma channel for counter."); +@@ -540,7 +540,7 @@ static int ni_request_gpct_mite_channel( + ni_tio_set_mite_channel(&devpriv->counter_dev->counters[gpct_index], + mite_chan); + ni_set_gpct_dma_channel(dev, gpct_index, mite_chan->channel); +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + return 0; + } + +@@ -551,12 +551,12 @@ static int ni_request_cdo_mite_channel(s + #ifdef PCIDMA + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); + BUG_ON(devpriv->cdo_mite_chan); + devpriv->cdo_mite_chan = + mite_request_channel(devpriv->mite, devpriv->cdo_mite_ring); + if (devpriv->cdo_mite_chan == NULL) { +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, + flags); + comedi_error(dev, + "failed to reserve mite dma channel for correlated digital outut."); +@@ -564,7 +564,7 @@ static int ni_request_cdo_mite_channel(s + } + devpriv->cdo_mite_chan->dir = COMEDI_OUTPUT; + ni_set_cdo_dma_channel(dev, devpriv->cdo_mite_chan->channel); +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + #endif /* PCIDMA */ + return 0; + } +@@ -574,13 +574,13 @@ static void ni_release_ai_mite_channel(s + #ifdef PCIDMA + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); + if (devpriv->ai_mite_chan) { + ni_set_ai_dma_channel(dev, -1); + mite_release_channel(devpriv->ai_mite_chan); + devpriv->ai_mite_chan = NULL; + } +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + #endif /* PCIDMA */ + } + +@@ -589,13 +589,13 @@ static void ni_release_ao_mite_channel(s + #ifdef PCIDMA + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); + if (devpriv->ao_mite_chan) { + ni_set_ao_dma_channel(dev, -1); + mite_release_channel(devpriv->ao_mite_chan); + devpriv->ao_mite_chan = NULL; + } +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + #endif /* PCIDMA */ + } + +@@ -605,7 +605,7 @@ void ni_release_gpct_mite_channel(struct + unsigned long flags; + + BUG_ON(gpct_index >= NUM_GPCT); +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); + if (devpriv->counter_dev->counters[gpct_index].mite_chan) { + struct mite_channel *mite_chan = + devpriv->counter_dev->counters[gpct_index].mite_chan; +@@ -615,7 +615,7 @@ void ni_release_gpct_mite_channel(struct + counters[gpct_index], NULL); + mite_release_channel(mite_chan); + } +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + #endif /* PCIDMA */ + } + +@@ -624,13 +624,13 @@ static void ni_release_cdo_mite_channel( + #ifdef PCIDMA + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); + if (devpriv->cdo_mite_chan) { + ni_set_cdo_dma_channel(dev, -1); + mite_release_channel(devpriv->cdo_mite_chan); + devpriv->cdo_mite_chan = NULL; + } +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + #endif /* PCIDMA */ + } + +@@ -712,20 +712,20 @@ static inline void ni_ao_win_outw(struct + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->window_lock, flags); ++ spin_lock_irqsave(&devpriv->window_lock, flags); + ni_writew(addr, AO_Window_Address_611x); + ni_writew(data, AO_Window_Data_611x); +- comedi_spin_unlock_irqrestore(&devpriv->window_lock, flags); ++ spin_unlock_irqrestore(&devpriv->window_lock, flags); + } + + static inline void ni_ao_win_outl(struct comedi_device *dev, uint32_t data, int addr) + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->window_lock, flags); ++ spin_lock_irqsave(&devpriv->window_lock, flags); + ni_writew(addr, AO_Window_Address_611x); + ni_writel(data, AO_Window_Data_611x); +- comedi_spin_unlock_irqrestore(&devpriv->window_lock, flags); ++ spin_unlock_irqrestore(&devpriv->window_lock, flags); + } + + static inline unsigned short ni_ao_win_inw(struct comedi_device *dev, int addr) +@@ -733,10 +733,10 @@ static inline unsigned short ni_ao_win_i + unsigned long flags; + unsigned short data; + +- comedi_spin_lock_irqsave(&devpriv->window_lock, flags); ++ spin_lock_irqsave(&devpriv->window_lock, flags); + ni_writew(addr, AO_Window_Address_611x); + data = ni_readw(AO_Window_Data_611x); +- comedi_spin_unlock_irqrestore(&devpriv->window_lock, flags); ++ spin_unlock_irqrestore(&devpriv->window_lock, flags); + return data; + } + +@@ -779,15 +779,14 @@ static irqreturn_t ni_E_interrupt(int ir + smp_mb(); /* make sure dev->attached is checked before handler does anything else. */ + + /* lock to avoid race with comedi_poll */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + a_status = devpriv->stc_readw(dev, AI_Status_1_Register); + b_status = devpriv->stc_readw(dev, AO_Status_1_Register); + #ifdef PCIDMA + if (mite) { + unsigned long flags_too; + +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, +- flags_too); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags_too); + if (devpriv->ai_mite_chan) { + ai_mite_status = mite_get_status(devpriv->ai_mite_chan); + if (ai_mite_status & CHSR_LINKC) +@@ -804,8 +803,7 @@ static irqreturn_t ni_E_interrupt(int ir + MITE_CHOR(devpriv->ao_mite_chan-> + channel)); + } +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, +- flags_too); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags_too); + } + #endif + ack_a_interrupt(dev, a_status); +@@ -818,7 +816,7 @@ static irqreturn_t ni_E_interrupt(int ir + handle_gpct_interrupt(dev, 1); + handle_cdio_interrupt(dev); + +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + return IRQ_HANDLED; + } + +@@ -828,10 +826,10 @@ static void ni_sync_ai_dma(struct comedi + struct comedi_subdevice *s = dev->subdevices + NI_AI_SUBDEV; + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); + if (devpriv->ai_mite_chan) + mite_sync_input_dma(devpriv->ai_mite_chan, s->async); +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + } + + static void mite_handle_b_linkc(struct mite_struct *mite, struct comedi_device * dev) +@@ -839,11 +837,11 @@ static void mite_handle_b_linkc(struct m + struct comedi_subdevice *s = dev->subdevices + NI_AO_SUBDEV; + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); + if (devpriv->ao_mite_chan) { + mite_sync_output_dma(devpriv->ao_mite_chan, s->async); + } +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + } + + static int ni_ao_wait_for_dma_load(struct comedi_device *dev) +@@ -858,7 +856,7 @@ static int ni_ao_wait_for_dma_load(struc + break; + /* if we poll too often, the pci bus activity seems + to slow the dma transfer down */ +- comedi_udelay(10); ++ udelay(10); + } + if (i == timeout) { + comedi_error(dev, "timed out waiting for dma load"); +@@ -879,7 +877,7 @@ static void ni_handle_eos(struct comedi_ + ni_sync_ai_dma(dev); + if ((s->async->events & COMEDI_CB_EOS)) + break; +- comedi_udelay(1); ++ udelay(1); + } + #else + ni_handle_fifo_dregs(dev); +@@ -976,7 +974,7 @@ static void handle_a_interrupt(struct co + return; + + #ifdef DEBUG_INTERRUPT +- rt_printk ++ printk + ("ni_mio_common: interrupt: a_status=%04x ai_mite_status=%08x\n", + status, ai_mite_status); + ni_mio_print_status_a(status); +@@ -989,7 +987,7 @@ static void handle_a_interrupt(struct co + if (ai_mite_status & ~(CHSR_INT | CHSR_LINKC | CHSR_DONE | CHSR_MRDY | + CHSR_DRDY | CHSR_DRQ1 | CHSR_DRQ0 | CHSR_ERROR | + CHSR_SABORT | CHSR_XFERR | CHSR_LxERR_mask)) { +- rt_printk ++ printk + ("unknown mite interrupt, ack! (ai_mite_status=%08x)\n", + ai_mite_status); + /* mite_print_chsr(ai_mite_status); */ +@@ -1002,7 +1000,7 @@ static void handle_a_interrupt(struct co + if (status & (AI_Overrun_St | AI_Overflow_St | AI_SC_TC_Error_St | + AI_SC_TC_St | AI_START1_St)) { + if (status == 0xffff) { +- rt_printk ++ printk + ("ni_mio_common: a_status=0xffff. Card removed?\n"); + /* we probably aren't even running a command now, + * so it's a good idea to be careful. */ +@@ -1015,7 +1013,7 @@ static void handle_a_interrupt(struct co + } + if (status & (AI_Overrun_St | AI_Overflow_St | + AI_SC_TC_Error_St)) { +- rt_printk("ni_mio_common: ai error a_status=%04x\n", ++ printk("ni_mio_common: ai error a_status=%04x\n", + status); + ni_mio_print_status_a(status); + +@@ -1031,7 +1029,7 @@ static void handle_a_interrupt(struct co + } + if (status & AI_SC_TC_St) { + #ifdef DEBUG_INTERRUPT +- rt_printk("ni_mio_common: SC_TC interrupt\n"); ++ printk("ni_mio_common: SC_TC interrupt\n"); + #endif + if (!devpriv->ai_continuous) { + shutdown_ai_command(dev); +@@ -1063,7 +1061,7 @@ static void handle_a_interrupt(struct co + #ifdef DEBUG_INTERRUPT + status = devpriv->stc_readw(dev, AI_Status_1_Register); + if (status & Interrupt_A_St) { +- rt_printk ++ printk + ("handle_a_interrupt: didn't clear interrupt? status=0x%x\n", + status); + } +@@ -1104,7 +1102,7 @@ static void handle_b_interrupt(struct co + struct comedi_subdevice *s = dev->subdevices + NI_AO_SUBDEV; + /* unsigned short ack=0; */ + #ifdef DEBUG_INTERRUPT +- rt_printk("ni_mio_common: interrupt: b_status=%04x m1_status=%08x\n", ++ printk("ni_mio_common: interrupt: b_status=%04x m1_status=%08x\n", + b_status, ao_mite_status); + ni_mio_print_status_b(b_status); + #endif +@@ -1118,7 +1116,7 @@ static void handle_b_interrupt(struct co + if (ao_mite_status & ~(CHSR_INT | CHSR_LINKC | CHSR_DONE | CHSR_MRDY | + CHSR_DRDY | CHSR_DRQ1 | CHSR_DRQ0 | CHSR_ERROR | + CHSR_SABORT | CHSR_XFERR | CHSR_LxERR_mask)) { +- rt_printk ++ printk + ("unknown mite interrupt, ack! (ao_mite_status=%08x)\n", + ao_mite_status); + /* mite_print_chsr(ao_mite_status); */ +@@ -1129,7 +1127,7 @@ static void handle_b_interrupt(struct co + if (b_status == 0xffff) + return; + if (b_status & AO_Overrun_St) { +- rt_printk ++ printk + ("ni_mio_common: AO FIFO underrun status=0x%04x status2=0x%04x\n", + b_status, devpriv->stc_readw(dev, + AO_Status_2_Register)); +@@ -1146,7 +1144,7 @@ static void handle_b_interrupt(struct co + + ret = ni_ao_fifo_half_empty(dev, s); + if (!ret) { +- rt_printk("ni_mio_common: AO buffer underrun\n"); ++ printk("ni_mio_common: AO buffer underrun\n"); + ni_set_bits(dev, Interrupt_B_Enable_Register, + AO_FIFO_Interrupt_Enable | + AO_Error_Interrupt_Enable, 0); +@@ -1170,13 +1168,13 @@ static void ni_mio_print_status_a(int st + { + int i; + +- rt_printk("A status:"); ++ printk("A status:"); + for (i = 15; i >= 0; i--) { + if (status & (1 << i)) { +- rt_printk(" %s", status_a_strings[i]); ++ printk(" %s", status_a_strings[i]); + } + } +- rt_printk("\n"); ++ printk("\n"); + } + #endif + +@@ -1192,13 +1190,13 @@ static void ni_mio_print_status_b(int st + { + int i; + +- rt_printk("B status:"); ++ printk("B status:"); + for (i = 15; i >= 0; i--) { + if (status & (1 << i)) { +- rt_printk(" %s", status_b_strings[i]); ++ printk(" %s", status_b_strings[i]); + } + } +- rt_printk("\n"); ++ printk("\n"); + } + #endif + +@@ -1383,7 +1381,7 @@ static int ni_ai_drain_dma(struct comedi + unsigned long flags; + int retval = 0; + +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); + if (devpriv->ai_mite_chan) { + for (i = 0; i < timeout; i++) { + if ((devpriv->stc_readw(dev, +@@ -1392,19 +1390,19 @@ static int ni_ai_drain_dma(struct comedi + && mite_bytes_in_transit(devpriv-> + ai_mite_chan) == 0) + break; +- comedi_udelay(5); ++ udelay(5); + } + if (i == timeout) { +- rt_printk ++ printk + ("ni_mio_common: wait for dma drain timed out\n"); +- rt_printk ++ printk + ("mite_bytes_in_transit=%i, AI_Status1_Register=0x%x\n", + mite_bytes_in_transit(devpriv->ai_mite_chan), + devpriv->stc_readw(dev, AI_Status_1_Register)); + retval = -1; + } + } +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + + ni_sync_ai_dma(dev); + +@@ -1548,15 +1546,14 @@ static int ni_ai_setup_MITE_dma(struct c + retval = ni_request_ai_mite_channel(dev); + if (retval) + return retval; +-/* rt_printk("comedi_debug: using mite channel %i for ai.\n", devpriv->ai_mite_chan->channel); */ ++/* printk("comedi_debug: using mite channel %i for ai.\n", devpriv->ai_mite_chan->channel); */ + + /* write alloc the entire buffer */ + comedi_buf_write_alloc(s->async, s->async->prealloc_bufsz); + +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); +- if (devpriv->ai_mite_chan == NULL) +- { +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ if (devpriv->ai_mite_chan == NULL) { ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + return -EIO; + } + +@@ -1574,7 +1571,7 @@ static int ni_ai_setup_MITE_dma(struct c + }; + /*start the MITE */ + mite_dma_arm(devpriv->ai_mite_chan); +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + + return 0; + } +@@ -1592,7 +1589,7 @@ static int ni_ao_setup_MITE_dma(struct c + /* read alloc the entire buffer */ + comedi_buf_read_alloc(s->async, s->async->prealloc_bufsz); + +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); + if (devpriv->ao_mite_chan) { + if (boardtype.reg_type & (ni_reg_611x | ni_reg_6713)) { + mite_prep_dma(devpriv->ao_mite_chan, 32, 32); +@@ -1604,7 +1601,7 @@ static int ni_ao_setup_MITE_dma(struct c + mite_dma_arm(devpriv->ao_mite_chan); + } else + retval = -EIO; +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + + return retval; + } +@@ -1705,7 +1702,7 @@ static int ni_ai_poll(struct comedi_devi + + /* lock to avoid race with interrupt handler */ + if (in_interrupt() == 0) +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + #ifndef PCIDMA + ni_handle_fifo_dregs(dev); + #else +@@ -1713,7 +1710,7 @@ static int ni_ai_poll(struct comedi_devi + #endif + count = s->async->buf_write_count - s->async->buf_read_count; + if (in_interrupt() == 0) +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + return count; + } +@@ -1736,7 +1733,7 @@ static int ni_ai_insn_read(struct comedi + for (n = 0; n < num_adc_stages_611x; n++) { + devpriv->stc_writew(dev, AI_CONVERT_Pulse, + AI_Command_1_Register); +- comedi_udelay(1); ++ udelay(1); + } + for (n = 0; n < insn->n; n++) { + devpriv->stc_writew(dev, AI_CONVERT_Pulse, +@@ -1758,7 +1755,7 @@ static int ni_ai_insn_read(struct comedi + } + } + if (i == NI_TIMEOUT) { +- rt_printk ++ printk + ("ni_mio_common: timeout in 611x ni_ai_insn_read\n"); + return -ETIME; + } +@@ -1780,7 +1777,7 @@ static int ni_ai_insn_read(struct comedi + } + } + if (i == NI_TIMEOUT) { +- rt_printk ++ printk + ("ni_mio_common: timeout in 6143 ni_ai_insn_read\n"); + return -ETIME; + } +@@ -1797,7 +1794,7 @@ static int ni_ai_insn_read(struct comedi + break; + } + if (i == NI_TIMEOUT) { +- rt_printk ++ printk + ("ni_mio_common: timeout in ni_ai_insn_read\n"); + return -ETIME; + } +@@ -1825,9 +1822,9 @@ void ni_prime_channelgain_list(struct co + devpriv->stc_writew(dev, 1, ADC_FIFO_Clear); + return; + } +- comedi_udelay(1); ++ udelay(1); + } +- rt_printk("ni_mio_common: timeout loading channel/gain list\n"); ++ printk("ni_mio_common: timeout loading channel/gain list\n"); + } + + static void ni_m_series_load_channelgain_list(struct comedi_device *dev, +@@ -2844,7 +2841,7 @@ static int ni_m_series_ao_config_chanlis + M_Offset_AO_Reference_Attenuation(chan)); + break; + default: +- rt_printk("%s: bug! unhandled ao reference voltage\n", ++ printk("%s: bug! unhandled ao reference voltage\n", + __func__); + break; + } +@@ -2856,7 +2853,7 @@ static int ni_m_series_ao_config_chanlis + conf |= MSeries_AO_DAC_Offset_5V_Bits; + break; + default: +- rt_printk("%s: bug! unhandled ao offset voltage\n", ++ printk("%s: bug! unhandled ao offset voltage\n", + __func__); + break; + } +@@ -3033,7 +3030,7 @@ static int ni_ao_inttrig(struct comedi_d + devpriv->stc_writew(dev, devpriv->ao_mode3, AO_Mode_3_Register); + /* wait for DACs to be loaded */ + for (i = 0; i < timeout; i++) { +- comedi_udelay(1); ++ udelay(1); + if ((devpriv->stc_readw(dev, + Joint_Status_2_Register) & + AO_TMRDACWRs_In_Progress_St) == 0) +@@ -3440,7 +3437,7 @@ static int ni_dio_insn_config(struct com + struct comedi_insn *insn, unsigned int *data) + { + #ifdef DEBUG_DIO +- rt_printk("ni_dio_insn_config() chan=%d io=%d\n", ++ printk("ni_dio_insn_config() chan=%d io=%d\n", + CR_CHAN(insn->chanspec), data[0]); + #endif + switch (data[0]) { +@@ -3472,7 +3469,7 @@ static int ni_dio_insn_bits(struct comed + struct comedi_insn *insn, unsigned int *data) + { + #ifdef DEBUG_DIO +- rt_printk("ni_dio_insn_bits() mask=0x%x bits=0x%x\n", data[0], data[1]); ++ printk("ni_dio_insn_bits() mask=0x%x bits=0x%x\n", data[0], data[1]); + #endif + if (insn->n != 2) + return -EINVAL; +@@ -3499,7 +3496,7 @@ static int ni_m_series_dio_insn_config(s + struct comedi_subdevice *s, struct comedi_insn *insn, unsigned int *data) + { + #ifdef DEBUG_DIO +- rt_printk("ni_m_series_dio_insn_config() chan=%d io=%d\n", ++ printk("ni_m_series_dio_insn_config() chan=%d io=%d\n", + CR_CHAN(insn->chanspec), data[0]); + #endif + switch (data[0]) { +@@ -3529,7 +3526,7 @@ static int ni_m_series_dio_insn_bits(str + struct comedi_insn *insn, unsigned int *data) + { + #ifdef DEBUG_DIO +- rt_printk("ni_m_series_dio_insn_bits() mask=0x%x bits=0x%x\n", data[0], ++ printk("ni_m_series_dio_insn_bits() mask=0x%x bits=0x%x\n", data[0], + data[1]); + #endif + if (insn->n != 2) +@@ -3706,7 +3703,7 @@ static int ni_cdo_inttrig(struct comedi_ + comedi_buf_read_alloc(s->async, s->async->prealloc_bufsz); + + #ifdef PCIDMA +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); + if (devpriv->cdo_mite_chan) { + mite_prep_dma(devpriv->cdo_mite_chan, 32, 32); + mite_dma_arm(devpriv->cdo_mite_chan); +@@ -3714,7 +3711,7 @@ static int ni_cdo_inttrig(struct comedi_ + comedi_error(dev, "BUG: no cdo mite channel?"); + retval = -EIO; + } +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + if (retval < 0) + return retval; + #endif +@@ -3726,7 +3723,7 @@ static int ni_cdo_inttrig(struct comedi_ + for (i = 0; i < timeout; ++i) { + if (ni_readl(M_Offset_CDIO_Status) & CDO_FIFO_Full_Bit) + break; +- comedi_udelay(10); ++ udelay(10); + } + if (i == timeout) { + comedi_error(dev, "dma failed to fill cdo fifo!"); +@@ -3765,7 +3762,7 @@ static void handle_cdio_interrupt(struct + return; + } + #ifdef PCIDMA +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); + if (devpriv->cdo_mite_chan) { + unsigned cdo_mite_status = + mite_get_status(devpriv->cdo_mite_chan); +@@ -3776,17 +3773,17 @@ static void handle_cdio_interrupt(struct + } + mite_sync_output_dma(devpriv->cdo_mite_chan, s->async); + } +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + #endif + + cdio_status = ni_readl(M_Offset_CDIO_Status); + if (cdio_status & (CDO_Overrun_Bit | CDO_Underflow_Bit)) { +-/* rt_printk("cdio error: statux=0x%x\n", cdio_status); */ ++/* printk("cdio error: statux=0x%x\n", cdio_status); */ + ni_writel(CDO_Error_Interrupt_Confirm_Bit, M_Offset_CDIO_Command); /* XXX just guessing this is needed and does something useful */ + s->async->events |= COMEDI_CB_OVERFLOW; + } + if (cdio_status & CDO_FIFO_Empty_Bit) { +-/* rt_printk("cdio fifo empty\n"); */ ++/* printk("cdio fifo empty\n"); */ + ni_writel(CDO_Empty_FIFO_Interrupt_Enable_Clear_Bit, + M_Offset_CDIO_Command); + /* s->async->events |= COMEDI_CB_EOA; */ +@@ -3807,7 +3804,7 @@ static int ni_serial_insn_config(struct + case INSN_CONFIG_SERIAL_CLOCK: + + #ifdef DEBUG_DIO +- rt_printk("SPI serial clock Config cd\n", data[1]); ++ printk("SPI serial clock Config cd\n", data[1]); + #endif + devpriv->serial_hw_mode = 1; + devpriv->dio_control |= DIO_HW_Serial_Enable; +@@ -3873,7 +3870,7 @@ static int ni_serial_insn_config(struct + err = ni_serial_sw_readwrite8(dev, s, byte_out, + &byte_in); + } else { +- rt_printk("ni_serial_insn_config: serial disabled!\n"); ++ printk("ni_serial_insn_config: serial disabled!\n"); + return -EINVAL; + } + if (err < 0) +@@ -3895,7 +3892,7 @@ static int ni_serial_hw_readwrite8(struc + int err = 0, count = 20; + + #ifdef DEBUG_DIO +- rt_printk("ni_serial_hw_readwrite8: outputting 0x%x\n", data_out); ++ printk("ni_serial_hw_readwrite8: outputting 0x%x\n", data_out); + #endif + + devpriv->dio_output &= ~DIO_Serial_Data_Mask; +@@ -3918,9 +3915,9 @@ static int ni_serial_hw_readwrite8(struc + Joint_Status_1_Register)) & + DIO_Serial_IO_In_Progress_St) { + /* Delay one bit per loop */ +- comedi_udelay((devpriv->serial_interval_ns + 999) / 1000); ++ udelay((devpriv->serial_interval_ns + 999) / 1000); + if (--count < 0) { +- rt_printk ++ printk + ("ni_serial_hw_readwrite8: SPI serial I/O didn't finish in time!\n"); + err = -ETIME; + goto Error; +@@ -3929,12 +3926,12 @@ static int ni_serial_hw_readwrite8(struc + + /* Delay for last bit. This delay is absolutely necessary, because + DIO_Serial_IO_In_Progress_St goes high one bit too early. */ +- comedi_udelay((devpriv->serial_interval_ns + 999) / 1000); ++ udelay((devpriv->serial_interval_ns + 999) / 1000); + + if (data_in != NULL) { + *data_in = devpriv->stc_readw(dev, DIO_Serial_Input_Register); + #ifdef DEBUG_DIO +- rt_printk("ni_serial_hw_readwrite8: inputted 0x%x\n", *data_in); ++ printk("ni_serial_hw_readwrite8: inputted 0x%x\n", *data_in); + #endif + } + +@@ -3950,11 +3947,11 @@ static int ni_serial_sw_readwrite8(struc + unsigned char mask, input = 0; + + #ifdef DEBUG_DIO +- rt_printk("ni_serial_sw_readwrite8: outputting 0x%x\n", data_out); ++ printk("ni_serial_sw_readwrite8: outputting 0x%x\n", data_out); + #endif + + /* Wait for one bit before transfer */ +- comedi_udelay((devpriv->serial_interval_ns + 999) / 1000); ++ udelay((devpriv->serial_interval_ns + 999) / 1000); + + for (mask = 0x80; mask; mask >>= 1) { + /* Output current bit; note that we cannot touch s->state +@@ -3973,23 +3970,23 @@ static int ni_serial_sw_readwrite8(struc + devpriv->stc_writew(dev, devpriv->dio_control, + DIO_Control_Register); + +- comedi_udelay((devpriv->serial_interval_ns + 999) / 2000); ++ udelay((devpriv->serial_interval_ns + 999) / 2000); + + devpriv->dio_control &= ~DIO_Software_Serial_Control; + devpriv->stc_writew(dev, devpriv->dio_control, + DIO_Control_Register); + +- comedi_udelay((devpriv->serial_interval_ns + 999) / 2000); ++ udelay((devpriv->serial_interval_ns + 999) / 2000); + + /* Input current bit */ + if (devpriv->stc_readw(dev, + DIO_Parallel_Input_Register) & DIO_SDIN) { +-/* rt_printk("DIO_P_I_R: 0x%x\n", devpriv->stc_readw(dev, DIO_Parallel_Input_Register)); */ ++/* printk("DIO_P_I_R: 0x%x\n", devpriv->stc_readw(dev, DIO_Parallel_Input_Register)); */ + input |= mask; + } + } + #ifdef DEBUG_DIO +- rt_printk("ni_serial_sw_readwrite8: inputted 0x%x\n", input); ++ printk("ni_serial_sw_readwrite8: inputted 0x%x\n", input); + #endif + if (data_in) + *data_in = input; +@@ -4103,7 +4100,7 @@ static unsigned ni_gpct_to_stc_register( + stc_register = Interrupt_B_Enable_Register; + break; + default: +- rt_printk("%s: unhandled register 0x%x in switch.\n", ++ printk("%s: unhandled register 0x%x in switch.\n", + __func__, reg); + BUG(); + return 0; +@@ -4928,12 +4925,12 @@ static void ni_write_caldac(struct comed + + for (bit = 1 << (bits - 1); bit; bit >>= 1) { + ni_writeb(((bit & bitstring) ? 0x02 : 0), Serial_Command); +- comedi_udelay(1); ++ udelay(1); + ni_writeb(1 | ((bit & bitstring) ? 0x02 : 0), Serial_Command); +- comedi_udelay(1); ++ udelay(1); + } + ni_writeb(loadbit, Serial_Command); +- comedi_udelay(1); ++ udelay(1); + ni_writeb(0, Serial_Command); + } + +@@ -5229,7 +5226,7 @@ static unsigned ni_old_get_pfi_routing(s + return NI_PFI_OUTPUT_G_GATE0; + break; + default: +- rt_printk("%s: bug, unhandled case in switch.\n", __func__); ++ printk("%s: bug, unhandled case in switch.\n", __func__); + break; + } + return 0; +@@ -5323,7 +5320,7 @@ static void ni_rtsi_init(struct comedi_d + /* Set clock mode to internal */ + devpriv->clock_and_fout2 = MSeries_RTSI_10MHz_Bit; + if (ni_set_master_clock(dev, NI_MIO_INTERNAL_CLOCK, 0) < 0) { +- rt_printk("ni_set_master_clock failed, bug?"); ++ printk("ni_set_master_clock failed, bug?"); + } + /* default internal lines routing to RTSI bus lines */ + devpriv->rtsi_trig_a_output_reg = +@@ -5395,7 +5392,7 @@ static int ni_mseries_get_pll_parameters + } + } + if (best_period_picosec == 0) { +- rt_printk("%s: bug, failed to find pll parameters\n", ++ printk("%s: bug, failed to find pll parameters\n", + __func__); + return -EIO; + } +@@ -5430,7 +5427,7 @@ static int ni_mseries_set_pll_master_clo + period_ns = 100; + /* these limits are somewhat arbitrary, but NI advertises 1 to 20MHz range so we'll use that */ + if (period_ns < min_period_ns || period_ns > max_period_ns) { +- rt_printk ++ printk + ("%s: you must specify an input clock frequency between %i and %i nanosec " + "for the phased-lock loop.\n", __func__, + min_period_ns, max_period_ns); +@@ -5491,9 +5488,9 @@ static int ni_mseries_set_pll_master_clo + MSeries_PLL_Divisor_Bits(freq_divider) | + MSeries_PLL_Multiplier_Bits(freq_multiplier); + +- /* rt_printk("using divider=%i, multiplier=%i for PLL. pll_control_bits = 0x%x\n", ++ /* printk("using divider=%i, multiplier=%i for PLL. pll_control_bits = 0x%x\n", + * freq_divider, freq_multiplier, pll_control_bits); */ +- /* rt_printk("clock_ns=%d\n", devpriv->clock_ns); */ ++ /* printk("clock_ns=%d\n", devpriv->clock_ns); */ + ni_writew(pll_control_bits, M_Offset_PLL_Control); + devpriv->clock_source = source; + /* it seems to typically take a few hundred microseconds for PLL to lock */ +@@ -5504,7 +5501,7 @@ static int ni_mseries_set_pll_master_clo + udelay(1); + } + if (i == timeout) { +- rt_printk ++ printk + ("%s: timed out waiting for PLL to lock to reference clock source %i with period %i ns.\n", + __func__, source, period_ns); + return -ETIMEDOUT; +@@ -5541,7 +5538,7 @@ static int ni_set_master_clock(struct co + devpriv->rtsi_trig_direction_reg, + RTSI_Trig_Direction_Register); + if (period_ns == 0) { +- rt_printk ++ printk + ("%s: we don't handle an unspecified clock period correctly yet, returning error.\n", + __func__); + return -EINVAL; +@@ -5564,7 +5561,7 @@ static int ni_valid_rtsi_output_source(s + if (source == NI_RTSI_OUTPUT_RTSI_OSC) + return 1; + else { +- rt_printk ++ printk + ("%s: invalid source for channel=%i, channel %i is always the RTSI clock for pre-m-series boards.\n", + __func__, chan, + old_RTSI_clock_channel); +@@ -5629,7 +5626,7 @@ static unsigned ni_get_rtsi_routing(stru + } else { + if (chan == old_RTSI_clock_channel) + return NI_RTSI_OUTPUT_RTSI_OSC; +- rt_printk("%s: bug! should never get here?\n", __func__); ++ printk("%s: bug! should never get here?\n", __func__); + return 0; + } + } +@@ -5724,7 +5721,7 @@ static int cs5529_wait_for_idle(struct c + } + /* printk("looped %i times waiting for idle\n", i); */ + if (i == timeout) { +- rt_printk("%s: %s: timeout\n", __FILE__, __func__); ++ printk("%s: %s: timeout\n", __FILE__, __func__); + return -ETIME; + } + return 0; +@@ -5743,7 +5740,7 @@ static void cs5529_command(struct comedi + for (i = 0; i < timeout; i++) { + if ((ni_ao_win_inw(dev, CAL_ADC_Status_67xx) & CSS_ADC_BUSY)) + break; +- comedi_udelay(1); ++ udelay(1); + } + /* printk("looped %i times writing command to cs5529\n", i); */ + if (i == timeout) { +@@ -5797,12 +5794,12 @@ static int cs5529_do_conversion(struct c + } + status = ni_ao_win_inw(dev, CAL_ADC_Status_67xx); + if (status & CSS_OSC_DETECT) { +- rt_printk ++ printk + ("ni_mio_common: cs5529 conversion error, status CSS_OSC_DETECT\n"); + return -EIO; + } + if (status & CSS_OVERRANGE) { +- rt_printk ++ printk + ("ni_mio_common: cs5529 conversion error, overrange (ignoring)\n"); + } + if (data) { +@@ -5859,11 +5856,11 @@ static int init_cs5529(struct comedi_dev + comedi_error(dev, "timeout or signal in init_cs5529()\n"); + #endif + #ifdef NI_CS5529_DEBUG +- rt_printk("config: 0x%x\n", cs5529_config_read(dev, ++ printk("config: 0x%x\n", cs5529_config_read(dev, + CSCMD_CONFIG_REGISTER)); +- rt_printk("gain: 0x%x\n", cs5529_config_read(dev, ++ printk("gain: 0x%x\n", cs5529_config_read(dev, + CSCMD_GAIN_REGISTER)); +- rt_printk("offset: 0x%x\n", cs5529_config_read(dev, ++ printk("offset: 0x%x\n", cs5529_config_read(dev, + CSCMD_OFFSET_REGISTER)); + #endif + return 0; +--- a/drivers/staging/comedi/drivers/ni_mio_cs.c ++++ b/drivers/staging/comedi/drivers/ni_mio_cs.c +@@ -200,14 +200,14 @@ static void mio_cs_win_out(struct comedi + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->window_lock, flags); ++ spin_lock_irqsave(&devpriv->window_lock, flags); + if (addr < 8) { + ni_writew(data, addr * 2); + } else { + ni_writew(addr, Window_Address); + ni_writew(data, Window_Data); + } +- comedi_spin_unlock_irqrestore(&devpriv->window_lock, flags); ++ spin_unlock_irqrestore(&devpriv->window_lock, flags); + } + + static uint16_t mio_cs_win_in(struct comedi_device *dev, int addr) +@@ -215,14 +215,14 @@ static uint16_t mio_cs_win_in(struct com + unsigned long flags; + uint16_t ret; + +- comedi_spin_lock_irqsave(&devpriv->window_lock, flags); ++ spin_lock_irqsave(&devpriv->window_lock, flags); + if (addr < 8) { + ret = ni_readw(addr * 2); + } else { + ni_writew(addr, Window_Address); + ret = ni_readw(Window_Data); + } +- comedi_spin_unlock_irqrestore(&devpriv->window_lock, flags); ++ spin_unlock_irqrestore(&devpriv->window_lock, flags); + + return ret; + } +@@ -249,7 +249,7 @@ static int mio_cs_detach(struct comedi_d + /* PCMCIA layer frees the IO region */ + + if (dev->irq) { +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + + return 0; +@@ -446,7 +446,7 @@ static int mio_cs_attach(struct comedi_d + printk(" %s", boardtype.name); + dev->board_name = boardtype.name; + +- ret = comedi_request_irq(irq, ni_E_interrupt, NI_E_IRQ_FLAGS, ++ ret = request_irq(irq, ni_E_interrupt, NI_E_IRQ_FLAGS, + "ni_mio_cs", dev); + if (ret < 0) { + printk(" irq not available\n"); +--- a/drivers/staging/comedi/drivers/ni_pcidio.c ++++ b/drivers/staging/comedi/drivers/ni_pcidio.c +@@ -422,14 +422,13 @@ static int ni_pcidio_request_di_mite_cha + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); + BUG_ON(devpriv->di_mite_chan); + devpriv->di_mite_chan = + mite_request_channel_in_range(devpriv->mite, + devpriv->di_mite_ring, 1, 2); + if (devpriv->di_mite_chan == NULL) { +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, +- flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + comedi_error(dev, "failed to reserve mite dma channel."); + return -EBUSY; + } +@@ -437,7 +436,7 @@ static int ni_pcidio_request_di_mite_cha + secondary_DMAChannel_bits(devpriv->di_mite_chan->channel), + devpriv->mite->daq_io_addr + DMA_Line_Control_Group1); + mmiowb(); +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + return 0; + } + +@@ -445,7 +444,7 @@ static void ni_pcidio_release_di_mite_ch + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, flags); + if (devpriv->di_mite_chan) { + mite_dma_disarm(devpriv->di_mite_chan); + mite_dma_reset(devpriv->di_mite_chan); +@@ -456,7 +455,7 @@ static void ni_pcidio_release_di_mite_ch + devpriv->mite->daq_io_addr + DMA_Line_Control_Group1); + mmiowb(); + } +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, flags); + } + + static int nidio96_8255_cb(int dir, int port, int data, unsigned long iobase) +@@ -514,7 +513,7 @@ static irqreturn_t nidio_interrupt(int i + /* printk("buf[0]=%08x\n",*(unsigned int *)async->prealloc_buf); */ + /* printk("buf[4096]=%08x\n",*(unsigned int *)(async->prealloc_buf+4096)); */ + +- comedi_spin_lock_irqsave(&devpriv->mite_channel_lock, irq_flags); ++ spin_lock_irqsave(&devpriv->mite_channel_lock, irq_flags); + if (devpriv->di_mite_chan) + m_status = mite_get_status(devpriv->di_mite_chan); + #ifdef MITE_DEBUG +@@ -537,7 +536,7 @@ static irqreturn_t nidio_interrupt(int i + disable_irq(dev->irq); + } + } +- comedi_spin_unlock_irqrestore(&devpriv->mite_channel_lock, irq_flags); ++ spin_unlock_irqrestore(&devpriv->mite_channel_lock, irq_flags); + + while (status & DataLeft) { + work++; +@@ -1235,8 +1234,8 @@ static int nidio_attach(struct comedi_de + devpriv->mite->daq_io_addr + + Master_DMA_And_Interrupt_Control); + +- ret = comedi_request_irq(irq, nidio_interrupt, IRQF_SHARED, +- "ni_pcidio", dev); ++ ret = request_irq(irq, nidio_interrupt, IRQF_SHARED, ++ "ni_pcidio", dev); + if (ret < 0) { + printk(" irq not available"); + } +@@ -1259,7 +1258,7 @@ static int nidio_detach(struct comedi_de + } + + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + + if (devpriv) { + if (devpriv->di_mite_ring) { +--- a/drivers/staging/comedi/drivers/ni_pcimio.c ++++ b/drivers/staging/comedi/drivers/ni_pcimio.c +@@ -101,7 +101,7 @@ Bugs: + + need to slow down DAC loading. I don't trust NI's claim that + two writes to the PCI bus slows IO enough. I would prefer to +- use comedi_udelay(). Timing specs: (clock) ++ use udelay(). Timing specs: (clock) + AD8522 30ns + DAC8043 120ns + DAC8800 60ns +@@ -1246,10 +1246,10 @@ static void e_series_win_out(struct come + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&devpriv->window_lock, flags); ++ spin_lock_irqsave(&devpriv->window_lock, flags); + ni_writew(reg, Window_Address); + ni_writew(data, Window_Data); +- comedi_spin_unlock_irqrestore(&devpriv->window_lock, flags); ++ spin_unlock_irqrestore(&devpriv->window_lock, flags); + } + + static uint16_t e_series_win_in(struct comedi_device *dev, int reg) +@@ -1257,10 +1257,10 @@ static uint16_t e_series_win_in(struct c + unsigned long flags; + uint16_t ret; + +- comedi_spin_lock_irqsave(&devpriv->window_lock, flags); ++ spin_lock_irqsave(&devpriv->window_lock, flags); + ni_writew(reg, Window_Address); + ret = ni_readw(Window_Data); +- comedi_spin_unlock_irqrestore(&devpriv->window_lock, flags); ++ spin_unlock_irqrestore(&devpriv->window_lock, flags); + + return ret; + } +@@ -1349,7 +1349,7 @@ static void m_series_stc_writew(struct c + offset = M_Offset_AO_FIFO_Clear; + break; + case DIO_Control_Register: +- rt_printk ++ printk + ("%s: FIXME: register 0x%x does not map cleanly on to m-series boards.\n", + __func__, reg); + return; +@@ -1411,7 +1411,7 @@ static void m_series_stc_writew(struct c + /* FIXME: DIO_Output_Register (16 bit reg) is replaced by M_Offset_Static_Digital_Output (32 bit) + and M_Offset_SCXI_Serial_Data_Out (8 bit) */ + default: +- rt_printk("%s: bug! unhandled register=0x%x in switch.\n", ++ printk("%s: bug! unhandled register=0x%x in switch.\n", + __func__, reg); + BUG(); + return; +@@ -1446,7 +1446,7 @@ static uint16_t m_series_stc_readw(struc + offset = M_Offset_G01_Status; + break; + default: +- rt_printk("%s: bug! unhandled register=0x%x in switch.\n", ++ printk("%s: bug! unhandled register=0x%x in switch.\n", + __func__, reg); + BUG(); + return 0; +@@ -1487,7 +1487,7 @@ static void m_series_stc_writel(struct c + offset = M_Offset_G1_Load_B; + break; + default: +- rt_printk("%s: bug! unhandled register=0x%x in switch.\n", ++ printk("%s: bug! unhandled register=0x%x in switch.\n", + __func__, reg); + BUG(); + return; +@@ -1513,7 +1513,7 @@ static uint32_t m_series_stc_readl(struc + offset = M_Offset_G1_Save; + break; + default: +- rt_printk("%s: bug! unhandled register=0x%x in switch.\n", ++ printk("%s: bug! unhandled register=0x%x in switch.\n", + __func__, reg); + BUG(); + return 0; +@@ -1602,7 +1602,7 @@ static int pcimio_detach(struct comedi_d + { + mio_common_detach(dev); + if (dev->irq) { +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + if (dev->private) { + mite_free_ring(devpriv->ai_mite_ring); +@@ -1679,9 +1679,8 @@ static int pcimio_attach(struct comedi_d + printk(" unknown irq (bad)\n"); + } else { + printk(" ( irq = %u )", dev->irq); +- ret = comedi_request_irq(dev->irq, ni_E_interrupt, +- NI_E_IRQ_FLAGS, DRV_NAME, +- dev); ++ ret = request_irq(dev->irq, ni_E_interrupt, NI_E_IRQ_FLAGS, ++ DRV_NAME, dev); + if (ret < 0) { + printk(" irq not available\n"); + dev->irq = 0; +--- a/drivers/staging/comedi/drivers/ni_stc.h ++++ b/drivers/staging/comedi/drivers/ni_stc.h +@@ -339,7 +339,7 @@ static inline unsigned RTSI_Output_Bit(u + max_channel = 6; + } + if (channel > max_channel) { +- rt_printk("%s: bug, invalid RTSI_channel=%i\n", __func__, ++ printk("%s: bug, invalid RTSI_channel=%i\n", __func__, + channel); + return 0; + } +@@ -1085,7 +1085,7 @@ static inline int M_Offset_Static_AI_Con + 0x263, + }; + if (((unsigned)i) >= ARRAY_SIZE(offset)) { +- rt_printk("%s: invalid channel=%i\n", __func__, i); ++ printk("%s: invalid channel=%i\n", __func__, i); + return offset[0]; + } + return offset[i]; +@@ -1099,7 +1099,7 @@ static inline int M_Offset_AO_Reference_ + 0x267 + }; + if (((unsigned)channel) >= ARRAY_SIZE(offset)) { +- rt_printk("%s: invalid channel=%i\n", __func__, channel); ++ printk("%s: invalid channel=%i\n", __func__, channel); + return offset[0]; + } + return offset[channel]; +@@ -1107,7 +1107,7 @@ static inline int M_Offset_AO_Reference_ + static inline unsigned M_Offset_PFI_Output_Select(unsigned n) + { + if (n < 1 || n > NUM_PFI_OUTPUT_SELECT_REGS) { +- rt_printk("%s: invalid pfi output select register=%i\n", ++ printk("%s: invalid pfi output select register=%i\n", + __func__, n); + return M_Offset_PFI_Output_Select_1; + } +@@ -1162,7 +1162,7 @@ static inline unsigned MSeries_PLL_In_So + RTSI_channel) + { + if (RTSI_channel > 7) { +- rt_printk("%s: bug, invalid RTSI_channel=%i\n", __func__, ++ printk("%s: bug, invalid RTSI_channel=%i\n", __func__, + RTSI_channel); + return 0; + } +@@ -1183,7 +1183,7 @@ static inline unsigned MSeries_PLL_Divis + { + static const unsigned max_divisor = 0x10; + if (divisor < 1 || divisor > max_divisor) { +- rt_printk("%s: bug, invalid divisor=%i\n", __func__, ++ printk("%s: bug, invalid divisor=%i\n", __func__, + divisor); + return 0; + } +@@ -1193,7 +1193,7 @@ static inline unsigned MSeries_PLL_Multi + { + static const unsigned max_multiplier = 0x100; + if (multiplier < 1 || multiplier > max_multiplier) { +- rt_printk("%s: bug, invalid multiplier=%i\n", __func__, ++ printk("%s: bug, invalid multiplier=%i\n", __func__, + multiplier); + return 0; + } +--- a/drivers/staging/comedi/drivers/ni_tio.c ++++ b/drivers/staging/comedi/drivers/ni_tio.c +@@ -669,7 +669,7 @@ static unsigned ni_m_series_source_selec + } + if (i <= ni_m_series_max_pfi_channel) + break; +- rt_printk("invalid clock source 0x%lx\n", ++ printk("invalid clock source 0x%lx\n", + (unsigned long)clock_source); + BUG(); + ni_m_series_clock = 0; +@@ -1273,7 +1273,7 @@ static int ni_tio_set_other_src(struct n + counter_dev->regs[abz_reg] &= ~mask; + counter_dev->regs[abz_reg] |= (source << shift) & mask; + write_register(counter, counter_dev->regs[abz_reg], abz_reg); +-/* rt_printk("%s %x %d %d\n", __func__, counter_dev->regs[abz_reg], index, source); */ ++/* printk("%s %x %d %d\n", __func__, counter_dev->regs[abz_reg], index, source); */ + return 0; + } + return -EINVAL; +--- a/drivers/staging/comedi/drivers/ni_tiocmd.c ++++ b/drivers/staging/comedi/drivers/ni_tiocmd.c +@@ -107,12 +107,12 @@ static int ni_tio_input_inttrig(struct c + if (trignum != 0) + return -EINVAL; + +- comedi_spin_lock_irqsave(&counter->lock, flags); ++ spin_lock_irqsave(&counter->lock, flags); + if (counter->mite_chan) + mite_dma_arm(counter->mite_chan); + else + retval = -EIO; +- comedi_spin_unlock_irqrestore(&counter->lock, flags); ++ spin_unlock_irqrestore(&counter->lock, flags); + if (retval < 0) + return retval; + retval = ni_tio_arm(counter, 1, NI_GPCT_ARM_IMMEDIATE); +@@ -171,7 +171,7 @@ static int ni_tio_input_cmd(struct ni_gp + + static int ni_tio_output_cmd(struct ni_gpct *counter, struct comedi_async *async) + { +- rt_printk("ni_tio: output commands not yet implemented.\n"); ++ printk("ni_tio: output commands not yet implemented.\n"); + return -ENOTSUPP; + + counter->mite_chan->dir = COMEDI_OUTPUT; +@@ -213,9 +213,9 @@ int ni_tio_cmd(struct ni_gpct *counter, + int retval = 0; + unsigned long flags; + +- comedi_spin_lock_irqsave(&counter->lock, flags); ++ spin_lock_irqsave(&counter->lock, flags); + if (counter->mite_chan == NULL) { +- rt_printk ++ printk + ("ni_tio: commands only supported with DMA. Interrupt-driven commands not yet implemented.\n"); + retval = -EIO; + } else { +@@ -228,7 +228,7 @@ int ni_tio_cmd(struct ni_gpct *counter, + } + } + } +- comedi_spin_unlock_irqrestore(&counter->lock, flags); ++ spin_unlock_irqrestore(&counter->lock, flags); + return retval; + } + +@@ -342,11 +342,11 @@ int ni_tio_cancel(struct ni_gpct *counte + unsigned long flags; + + ni_tio_arm(counter, 0, 0); +- comedi_spin_lock_irqsave(&counter->lock, flags); ++ spin_lock_irqsave(&counter->lock, flags); + if (counter->mite_chan) { + mite_dma_disarm(counter->mite_chan); + } +- comedi_spin_unlock_irqrestore(&counter->lock, flags); ++ spin_unlock_irqrestore(&counter->lock, flags); + ni_tio_configure_dma(counter, 0, 0); + + ni_tio_set_bits(counter, +@@ -369,7 +369,7 @@ static int should_ack_gate(struct ni_gpc + return 1; + break; + case ni_gpct_variant_e_series: +- comedi_spin_lock_irqsave(&counter->lock, flags); ++ spin_lock_irqsave(&counter->lock, flags); + { + if (counter->mite_chan == NULL || + counter->mite_chan->dir != COMEDI_INPUT || +@@ -377,7 +377,7 @@ static int should_ack_gate(struct ni_gpc + retval = 1; + } + } +- comedi_spin_unlock_irqrestore(&counter->lock, flags); ++ spin_unlock_irqrestore(&counter->lock, flags); + break; + } + return retval; +@@ -439,7 +439,7 @@ void ni_tio_acknowledge_and_confirm(stru + NITIO_Gxx_Joint_Status2_Reg(counter-> + counter_index)) & + Gi_Permanent_Stale_Bit(counter->counter_index)) { +- rt_printk("%s: Gi_Permanent_Stale_Data detected.\n", ++ printk("%s: Gi_Permanent_Stale_Data detected.\n", + __FUNCTION__); + if (perm_stale_data) + *perm_stale_data = 1; +@@ -458,7 +458,7 @@ void ni_tio_handle_interrupt(struct ni_g + ni_tio_acknowledge_and_confirm(counter, &gate_error, &tc_error, + &perm_stale_data, NULL); + if (gate_error) { +- rt_printk("%s: Gi_Gate_Error detected.\n", __FUNCTION__); ++ printk("%s: Gi_Gate_Error detected.\n", __FUNCTION__); + s->async->events |= COMEDI_CB_OVERFLOW; + } + if (perm_stale_data) { +@@ -470,16 +470,16 @@ void ni_tio_handle_interrupt(struct ni_g + if (read_register(counter, + NITIO_Gi_DMA_Status_Reg(counter-> + counter_index)) & Gi_DRQ_Error_Bit) { +- rt_printk("%s: Gi_DRQ_Error detected.\n", __FUNCTION__); ++ printk("%s: Gi_DRQ_Error detected.\n", __FUNCTION__); + s->async->events |= COMEDI_CB_OVERFLOW; + } + break; + case ni_gpct_variant_e_series: + break; + } +- comedi_spin_lock_irqsave(&counter->lock, flags); ++ spin_lock_irqsave(&counter->lock, flags); + if (counter->mite_chan == NULL) { +- comedi_spin_unlock_irqrestore(&counter->lock, flags); ++ spin_unlock_irqrestore(&counter->lock, flags); + return; + } + gpct_mite_status = mite_get_status(counter->mite_chan); +@@ -489,7 +489,7 @@ void ni_tio_handle_interrupt(struct ni_g + MITE_CHOR(counter->mite_chan->channel)); + } + mite_sync_input_dma(counter->mite_chan, s->async); +- comedi_spin_unlock_irqrestore(&counter->lock, flags); ++ spin_unlock_irqrestore(&counter->lock, flags); + } + + void ni_tio_set_mite_channel(struct ni_gpct *counter, +@@ -497,9 +497,9 @@ void ni_tio_set_mite_channel(struct ni_g + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&counter->lock, flags); ++ spin_lock_irqsave(&counter->lock, flags); + counter->mite_chan = mite_chan; +- comedi_spin_unlock_irqrestore(&counter->lock, flags); ++ spin_unlock_irqrestore(&counter->lock, flags); + } + + static int __init ni_tiocmd_init_module(void) +--- a/drivers/staging/comedi/drivers/ni_tio_internal.h ++++ b/drivers/staging/comedi/drivers/ni_tio_internal.h +@@ -728,14 +728,14 @@ static inline void ni_tio_set_bits_trans + unsigned long flags; + + BUG_ON(register_index >= NITIO_Num_Registers); +- comedi_spin_lock_irqsave(&counter_dev->regs_lock, flags); ++ spin_lock_irqsave(&counter_dev->regs_lock, flags); + counter_dev->regs[register_index] &= ~bit_mask; + counter_dev->regs[register_index] |= (bit_values & bit_mask); + write_register(counter, + counter_dev->regs[register_index] | transient_bit_values, + register_index); + mmiowb(); +- comedi_spin_unlock_irqrestore(&counter_dev->regs_lock, flags); ++ spin_unlock_irqrestore(&counter_dev->regs_lock, flags); + } + + /* ni_tio_set_bits( ) is for safely writing to registers whose bits may be +@@ -761,9 +761,9 @@ static inline unsigned ni_tio_get_soft_c + unsigned value; + + BUG_ON(register_index >= NITIO_Num_Registers); +- comedi_spin_lock_irqsave(&counter_dev->regs_lock, flags); ++ spin_lock_irqsave(&counter_dev->regs_lock, flags); + value = counter_dev->regs[register_index]; +- comedi_spin_unlock_irqrestore(&counter_dev->regs_lock, flags); ++ spin_unlock_irqrestore(&counter_dev->regs_lock, flags); + return value; + } + +--- a/drivers/staging/comedi/drivers/pcl711.c ++++ b/drivers/staging/comedi/drivers/pcl711.c +@@ -269,9 +269,9 @@ static int pcl711_ai_insn(struct comedi_ + hi = inb(dev->iobase + PCL711_AD_HI); + if (!(hi & PCL711_DRDY)) + goto ok; +- comedi_udelay(1); ++ udelay(1); + } +- rt_printk("comedi%d: pcl711: A/D timeout\n", dev->minor); ++ printk("comedi%d: pcl711: A/D timeout\n", dev->minor); + return -ETIME; + + ok: +@@ -503,7 +503,7 @@ static int pcl711_detach(struct comedi_d + printk("comedi%d: pcl711: remove\n", dev->minor); + + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + + if (dev->iobase) + release_region(dev->iobase, PCL711_SIZE); +@@ -541,7 +541,7 @@ static int pcl711_attach(struct comedi_d + return -EINVAL; + } + if (irq) { +- if (comedi_request_irq(irq, pcl711_interrupt, 0, "pcl711", dev)) { ++ if (request_irq(irq, pcl711_interrupt, 0, "pcl711", dev)) { + printk("unable to allocate irq %u\n", irq); + return -EINVAL; + } else { +--- a/drivers/staging/comedi/drivers/pcl724.c ++++ b/drivers/staging/comedi/drivers/pcl724.c +@@ -155,19 +155,18 @@ static int pcl724_attach(struct comedi_d + irq = it->options[1]; + if (irq) { /* we want to use IRQ */ + if (((1 << irq) & this_board->IRQbits) == 0) { +- rt_printk ++ printk + (", IRQ %u is out of allowed range, DISABLING IT", + irq); + irq = 0; /* Bad IRQ */ + } else { +- if (comedi_request_irq(irq, interrupt_pcl724, 0, +- "pcl724", dev)) { +- rt_printk ++ if (request_irq(irq, interrupt_pcl724, 0, "pcl724", dev)) { ++ printk + (", unable to allocate IRQ %u, DISABLING IT", + irq); + irq = 0; /* Can't use IRQ */ + } else { +- rt_printk(", irq=%u", irq); ++ printk(", irq=%u", irq); + } + } + } +@@ -213,7 +212,7 @@ static int pcl724_detach(struct comedi_d + + #ifdef PCL724_IRQ + if (dev->irq) { +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + #endif + +--- a/drivers/staging/comedi/drivers/pcl726.c ++++ b/drivers/staging/comedi/drivers/pcl726.c +@@ -280,19 +280,19 @@ static int pcl726_attach(struct comedi_d + devpriv->first_chan = 2; + if (irq) { /* we want to use IRQ */ + if (((1 << irq) & boardtypes[board].IRQbits) == 0) { +- rt_printk ++ printk + (", IRQ %d is out of allowed range, DISABLING IT", + irq); + irq = 0; /* Bad IRQ */ + } else { +- if (comedi_request_irq(irq, interrupt_pcl818, 0, ++ if (request_irq(irq, interrupt_pcl818, 0, + "pcl726", dev)) { +- rt_printk ++ printk + (", unable to allocate IRQ %d, DISABLING IT", + irq); + irq = 0; /* Can't use IRQ */ + } else { +- rt_printk(", irq=%d", irq); ++ printk(", irq=%d", irq); + } + } + } +@@ -368,7 +368,7 @@ static int pcl726_detach(struct comedi_d + + #ifdef ACL6126_IRQ + if (dev->irq) { +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + #endif + +--- a/drivers/staging/comedi/drivers/pcl812.c ++++ b/drivers/staging/comedi/drivers/pcl812.c +@@ -447,15 +447,15 @@ static int pcl812_ai_insn_read(struct co + setup_range_channel(dev, s, insn->chanspec, 1); /* select channel and renge */ + for (n = 0; n < insn->n; n++) { + outb(255, dev->iobase + PCL812_SOFTTRIG); /* start conversion */ +- comedi_udelay(5); ++ udelay(5); + timeout = 50; /* wait max 50us, it must finish under 33us */ + while (timeout--) { + hi = inb(dev->iobase + PCL812_AD_HI); + if (!(hi & PCL812_DRDY)) + goto conv_finish; +- comedi_udelay(1); ++ udelay(1); + } +- rt_printk ++ printk + ("comedi%d: pcl812: (%s at 0x%lx) A/D insn read timeout\n", + dev->minor, dev->board_name, dev->iobase); + outb(devpriv->mode_reg_int | 0, dev->iobase + PCL812_MODE); +@@ -481,14 +481,14 @@ static int acl8216_ai_insn_read(struct c + setup_range_channel(dev, s, insn->chanspec, 1); /* select channel and renge */ + for (n = 0; n < insn->n; n++) { + outb(255, dev->iobase + PCL812_SOFTTRIG); /* start conversion */ +- comedi_udelay(5); ++ udelay(5); + timeout = 50; /* wait max 50us, it must finish under 33us */ + while (timeout--) { + if (!(inb(dev->iobase + ACL8216_STATUS) & ACL8216_DRDY)) + goto conv_finish; +- comedi_udelay(1); ++ udelay(1); + } +- rt_printk ++ printk + ("comedi%d: pcl812: (%s at 0x%lx) A/D insn read timeout\n", + dev->minor, dev->board_name, dev->iobase); + outb(0, dev->iobase + PCL812_MODE); +@@ -581,13 +581,13 @@ static int pcl812_do_insn_bits(struct co + */ + static void pcl812_cmdtest_out(int e, struct comedi_cmd *cmd) + { +- rt_printk("pcl812 e=%d startsrc=%x scansrc=%x convsrc=%x\n", e, ++ printk("pcl812 e=%d startsrc=%x scansrc=%x convsrc=%x\n", e, + cmd->start_src, cmd->scan_begin_src, cmd->convert_src); +- rt_printk("pcl812 e=%d startarg=%d scanarg=%d convarg=%d\n", e, ++ printk("pcl812 e=%d startarg=%d scanarg=%d convarg=%d\n", e, + cmd->start_arg, cmd->scan_begin_arg, cmd->convert_arg); +- rt_printk("pcl812 e=%d stopsrc=%x scanend=%x\n", e, cmd->stop_src, ++ printk("pcl812 e=%d stopsrc=%x scanend=%x\n", e, cmd->stop_src, + cmd->scan_end_src); +- rt_printk("pcl812 e=%d stoparg=%d scanendarg=%d chanlistlen=%d\n", e, ++ printk("pcl812 e=%d stoparg=%d scanendarg=%d chanlistlen=%d\n", e, + cmd->stop_arg, cmd->scan_end_arg, cmd->chanlist_len); + } + #endif +@@ -602,7 +602,7 @@ static int pcl812_ai_cmdtest(struct come + int tmp, divisor1, divisor2; + + #ifdef PCL812_EXTDEBUG +- rt_printk("pcl812 EDBG: BGN: pcl812_ai_cmdtest(...)\n"); ++ printk("pcl812 EDBG: BGN: pcl812_ai_cmdtest(...)\n"); + pcl812_cmdtest_out(-1, cmd); + #endif + /* step 1: make sure trigger sources are trivially valid */ +@@ -639,7 +639,7 @@ static int pcl812_ai_cmdtest(struct come + if (err) { + #ifdef PCL812_EXTDEBUG + pcl812_cmdtest_out(1, cmd); +- rt_printk ++ printk + ("pcl812 EDBG: BGN: pcl812_ai_cmdtest(...) err=%d ret=1\n", + err); + #endif +@@ -681,7 +681,7 @@ static int pcl812_ai_cmdtest(struct come + if (err) { + #ifdef PCL812_EXTDEBUG + pcl812_cmdtest_out(2, cmd); +- rt_printk ++ printk + ("pcl812 EDBG: BGN: pcl812_ai_cmdtest(...) err=%d ret=2\n", + err); + #endif +@@ -739,7 +739,7 @@ static int pcl812_ai_cmdtest(struct come + if (err) { + #ifdef PCL812_EXTDEBUG + pcl812_cmdtest_out(3, cmd); +- rt_printk ++ printk + ("pcl812 EDBG: BGN: pcl812_ai_cmdtest(...) err=%d ret=3\n", + err); + #endif +@@ -761,7 +761,7 @@ static int pcl812_ai_cmdtest(struct come + + if (err) { + #ifdef PCL812_EXTDEBUG +- rt_printk ++ printk + ("pcl812 EDBG: BGN: pcl812_ai_cmdtest(...) err=%d ret=4\n", + err); + #endif +@@ -780,7 +780,7 @@ static int pcl812_ai_cmd(struct comedi_d + struct comedi_cmd *cmd = &s->async->cmd; + + #ifdef PCL812_EXTDEBUG +- rt_printk("pcl812 EDBG: BGN: pcl812_ai_cmd(...)\n"); ++ printk("pcl812 EDBG: BGN: pcl812_ai_cmd(...)\n"); + #endif + + if (cmd->start_src != TRIG_NOW) +@@ -892,7 +892,7 @@ static int pcl812_ai_cmd(struct comedi_d + release_dma_lock(dma_flags); + enable_dma(devpriv->dma); + #ifdef PCL812_EXTDEBUG +- rt_printk ++ printk + ("pcl812 EDBG: DMA %d PTR 0x%0x/0x%0x LEN %u/%u EOS %d\n", + devpriv->dma, devpriv->hwdmaptr[0], + devpriv->hwdmaptr[1], devpriv->dmabytestomove[0], +@@ -913,7 +913,7 @@ static int pcl812_ai_cmd(struct comedi_d + } + + #ifdef PCL812_EXTDEBUG +- rt_printk("pcl812 EDBG: END: pcl812_ai_cmd(...)\n"); ++ printk("pcl812 EDBG: END: pcl812_ai_cmd(...)\n"); + #endif + + return 0; +@@ -939,7 +939,7 @@ static irqreturn_t interrupt_pcl812_ai_i + err = 0; + break; + } +- comedi_udelay(1); ++ udelay(1); + } + } else { + mask = 0x0fff; +@@ -948,12 +948,12 @@ static irqreturn_t interrupt_pcl812_ai_i + err = 0; + break; + } +- comedi_udelay(1); ++ udelay(1); + } + } + + if (err) { +- rt_printk ++ printk + ("comedi%d: pcl812: (%s at 0x%lx) A/D cmd IRQ without DRDY!\n", + dev->minor, dev->board_name, dev->iobase); + pcl812_ai_cancel(dev, s); +@@ -1019,7 +1019,7 @@ static irqreturn_t interrupt_pcl812_ai_d + short *ptr; + + #ifdef PCL812_EXTDEBUG +- rt_printk("pcl812 EDBG: BGN: interrupt_pcl812_ai_dma(...)\n"); ++ printk("pcl812 EDBG: BGN: interrupt_pcl812_ai_dma(...)\n"); + #endif + ptr = (short *) devpriv->dmabuf[devpriv->next_dma_buf]; + len = (devpriv->dmabytestomove[devpriv->next_dma_buf] >> 1) - +@@ -1053,7 +1053,7 @@ static irqreturn_t interrupt_pcl812_ai_d + transfer_from_dma_buf(dev, s, ptr, bufptr, len); + + #ifdef PCL812_EXTDEBUG +- rt_printk("pcl812 EDBG: END: interrupt_pcl812_ai_dma(...)\n"); ++ printk("pcl812 EDBG: END: interrupt_pcl812_ai_dma(...)\n"); + #endif + return IRQ_HANDLED; + } +@@ -1087,7 +1087,7 @@ static int pcl812_ai_poll(struct comedi_ + if (!devpriv->ai_dma) + return 0; /* poll is valid only for DMA transfer */ + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + + for (i = 0; i < 10; i++) { + top1 = get_dma_residue(devpriv->ai_dma); /* where is now DMA */ +@@ -1097,7 +1097,7 @@ static int pcl812_ai_poll(struct comedi_ + } + + if (top1 != top2) { +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + return 0; + } + +@@ -1105,7 +1105,7 @@ static int pcl812_ai_poll(struct comedi_ + top1 >>= 1; /* sample position */ + top2 = top1 - devpriv->ai_poll_ptr; + if (top2 < 1) { /* no new samples */ +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + return 0; + } + +@@ -1115,7 +1115,7 @@ static int pcl812_ai_poll(struct comedi_ + + devpriv->ai_poll_ptr = top1; /* new buffer position */ + +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + return s->async->buf_write_count - s->async->buf_read_count; + } +@@ -1152,7 +1152,7 @@ static void setup_range_channel(struct c + outb(gain_reg, dev->iobase + PCL812_GAIN); /* select gain */ + + if (wait) { +- comedi_udelay(devpriv->max_812_ai_mode0_rangewait); /* XXX this depends on selected range and can be very long for some high gain ranges! */ ++ udelay(devpriv->max_812_ai_mode0_rangewait); /* XXX this depends on selected range and can be very long for some high gain ranges! */ + } + } + +@@ -1163,12 +1163,12 @@ static void start_pacer(struct comedi_de + unsigned int divisor2) + { + #ifdef PCL812_EXTDEBUG +- rt_printk("pcl812 EDBG: BGN: start_pacer(%d,%u,%u)\n", mode, divisor1, ++ printk("pcl812 EDBG: BGN: start_pacer(%d,%u,%u)\n", mode, divisor1, + divisor2); + #endif + outb(0xb4, dev->iobase + PCL812_CTRCTL); + outb(0x74, dev->iobase + PCL812_CTRCTL); +- comedi_udelay(1); ++ udelay(1); + + if (mode == 1) { + outb(divisor2 & 0xff, dev->iobase + PCL812_CTR2); +@@ -1177,7 +1177,7 @@ static void start_pacer(struct comedi_de + outb((divisor1 >> 8) & 0xff, dev->iobase + PCL812_CTR1); + } + #ifdef PCL812_EXTDEBUG +- rt_printk("pcl812 EDBG: END: start_pacer(...)\n"); ++ printk("pcl812 EDBG: END: start_pacer(...)\n"); + #endif + } + +@@ -1196,7 +1196,7 @@ static void free_resources(struct comedi + free_dma(devpriv->dma); + } + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + if (dev->iobase) + release_region(dev->iobase, this_board->io_range); + } +@@ -1207,7 +1207,7 @@ static void free_resources(struct comedi + static int pcl812_ai_cancel(struct comedi_device *dev, struct comedi_subdevice *s) + { + #ifdef PCL812_EXTDEBUG +- rt_printk("pcl812 EDBG: BGN: pcl812_ai_cancel(...)\n"); ++ printk("pcl812 EDBG: BGN: pcl812_ai_cancel(...)\n"); + #endif + if (devpriv->ai_dma) + disable_dma(devpriv->dma); +@@ -1216,7 +1216,7 @@ static int pcl812_ai_cancel(struct comed + start_pacer(dev, -1, 0, 0); /* stop 8254 */ + outb(0, dev->iobase + PCL812_CLRINT); /* clear INT request */ + #ifdef PCL812_EXTDEBUG +- rt_printk("pcl812 EDBG: END: pcl812_ai_cancel(...)\n"); ++ printk("pcl812 EDBG: END: pcl812_ai_cancel(...)\n"); + #endif + return 0; + } +@@ -1227,7 +1227,7 @@ static int pcl812_ai_cancel(struct comed + static void pcl812_reset(struct comedi_device *dev) + { + #ifdef PCL812_EXTDEBUG +- rt_printk("pcl812 EDBG: BGN: pcl812_reset(...)\n"); ++ printk("pcl812 EDBG: BGN: pcl812_reset(...)\n"); + #endif + outb(0, dev->iobase + PCL812_MUX); + outb(0 + devpriv->range_correction, dev->iobase + PCL812_GAIN); +@@ -1254,12 +1254,12 @@ static void pcl812_reset(struct comedi_d + case boardPCL813: + case boardISO813: + case boardACL8113: +- comedi_udelay(5); ++ udelay(5); + break; + } +- comedi_udelay(5); ++ udelay(5); + #ifdef PCL812_EXTDEBUG +- rt_printk("pcl812 EDBG: END: pcl812_reset(...)\n"); ++ printk("pcl812 EDBG: END: pcl812_reset(...)\n"); + #endif + } + +@@ -1302,8 +1302,7 @@ static int pcl812_attach(struct comedi_d + printk(", IRQ %u is out of allowed range, DISABLING IT", irq); + irq = 0; /* Bad IRQ */ + } else { +- if (comedi_request_irq(irq, interrupt_pcl812, 0, +- "pcl812", dev)) { ++ if (request_irq(irq, interrupt_pcl812, 0, "pcl812", dev)) { + printk(", unable to allocate IRQ %u, DISABLING IT", irq); + irq = 0; /* Can't use IRQ */ + } else { +@@ -1600,7 +1599,7 @@ static int pcl812_detach(struct comedi_d + { + + #ifdef PCL812_EXTDEBUG +- rt_printk("comedi%d: pcl812: remove\n", dev->minor); ++ printk("comedi%d: pcl812: remove\n", dev->minor); + #endif + free_resources(dev); + return 0; +--- a/drivers/staging/comedi/drivers/pcl816.c ++++ b/drivers/staging/comedi/drivers/pcl816.c +@@ -263,7 +263,7 @@ static int pcl816_ai_insn_read(struct co + outb(0, dev->iobase + PCL816_CLRINT); /* clear INT (conversion end) flag */ + break; + } +- comedi_udelay(1); ++ udelay(1); + } + /* Return timeout error */ + if (!timeout) { +@@ -293,7 +293,7 @@ static irqreturn_t interrupt_pcl816_ai_m + if (!(inb(dev->iobase + PCL816_STATUS) & + PCL816_STATUS_DRDY_MASK)) + break; +- comedi_udelay(1); ++ udelay(1); + } + if (!timeout) { /* timeout, bail error */ + outb(0, dev->iobase + PCL816_CLRINT); /* clear INT request */ +@@ -449,13 +449,13 @@ static irqreturn_t interrupt_pcl816(int + */ + static void pcl816_cmdtest_out(int e, struct comedi_cmd *cmd) + { +- rt_printk("pcl816 e=%d startsrc=%x scansrc=%x convsrc=%x\n", e, ++ printk("pcl816 e=%d startsrc=%x scansrc=%x convsrc=%x\n", e, + cmd->start_src, cmd->scan_begin_src, cmd->convert_src); +- rt_printk("pcl816 e=%d startarg=%d scanarg=%d convarg=%d\n", e, ++ printk("pcl816 e=%d startarg=%d scanarg=%d convarg=%d\n", e, + cmd->start_arg, cmd->scan_begin_arg, cmd->convert_arg); +- rt_printk("pcl816 e=%d stopsrc=%x scanend=%x\n", e, cmd->stop_src, ++ printk("pcl816 e=%d stopsrc=%x scanend=%x\n", e, cmd->stop_src, + cmd->scan_end_src); +- rt_printk("pcl816 e=%d stoparg=%d scanendarg=%d chanlistlen=%d\n", e, ++ printk("pcl816 e=%d stoparg=%d scanendarg=%d chanlistlen=%d\n", e, + cmd->stop_arg, cmd->scan_end_arg, cmd->chanlist_len); + } + +@@ -468,7 +468,7 @@ static int pcl816_ai_cmdtest(struct come + int err = 0; + int tmp, divisor1, divisor2; + +- DEBUG(rt_printk("pcl816 pcl812_ai_cmdtest\n"); ++ DEBUG(printk("pcl816 pcl812_ai_cmdtest\n"); + pcl816_cmdtest_out(-1, cmd);); + + /* step 1: make sure trigger sources are trivially valid */ +@@ -636,7 +636,7 @@ static int pcl816_ai_cmd(struct comedi_d + if (!check_and_setup_channel_list(dev, s, cmd->chanlist, + cmd->chanlist_len)) + return -EINVAL; +- comedi_udelay(1); ++ udelay(1); + + devpriv->ai_act_scan = 0; + s->async->cur_chan = 0; +@@ -710,7 +710,7 @@ static int pcl816_ai_poll(struct comedi_ + if (!devpriv->dma) + return 0; /* poll is valid only for DMA transfer */ + +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + + for (i = 0; i < 20; i++) { + top1 = get_dma_residue(devpriv->dma); /* where is now DMA */ +@@ -719,7 +719,7 @@ static int pcl816_ai_poll(struct comedi_ + break; + } + if (top1 != top2) { +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + return 0; + } + +@@ -727,7 +727,7 @@ static int pcl816_ai_poll(struct comedi_ + top1 >>= 1; /* sample position */ + top2 = top1 - devpriv->ai_poll_ptr; + if (top2 < 1) { /* no new samples */ +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + return 0; + } + +@@ -736,7 +736,7 @@ static int pcl816_ai_poll(struct comedi_ + devpriv->ai_poll_ptr, top2); + + devpriv->ai_poll_ptr = top1; /* new buffer position */ +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + + return s->async->buf_write_count - s->async->buf_read_count; + } +@@ -747,7 +747,7 @@ static int pcl816_ai_poll(struct comedi_ + */ + static int pcl816_ai_cancel(struct comedi_device *dev, struct comedi_subdevice *s) + { +-/* DEBUG(rt_printk("pcl816_ai_cancel()\n");) */ ++/* DEBUG(printk("pcl816_ai_cancel()\n");) */ + + if (devpriv->irq_blocked > 0) { + switch (devpriv->int816_mode) { +@@ -763,7 +763,7 @@ static int pcl816_ai_cancel(struct comed + case INT_TYPE_AI1_INT: + case INT_TYPE_AI3_INT: + outb(inb(dev->iobase + PCL816_CONTROL) & 0x73, dev->iobase + PCL816_CONTROL); /* Stop A/D */ +- comedi_udelay(1); ++ udelay(1); + outb(0, dev->iobase + PCL816_CONTROL); /* Stop A/D */ + outb(0xb0, dev->iobase + PCL816_CTRCTL); /* Stop pacer */ + outb(0x70, dev->iobase + PCL816_CTRCTL); +@@ -781,7 +781,7 @@ static int pcl816_ai_cancel(struct comed + } + } + +- DEBUG(rt_printk("comedi: pcl816_ai_cancel() successful\n"); ++ DEBUG(printk("comedi: pcl816_ai_cancel() successful\n"); + ) + return 0; + } +@@ -793,17 +793,17 @@ static int pcl816_ai_cancel(struct comed + static int pcl816_check(unsigned long iobase) + { + outb(0x00, iobase + PCL816_MUX); +- comedi_udelay(1); ++ udelay(1); + if (inb(iobase + PCL816_MUX) != 0x00) + return 1; /* there isn't card */ + outb(0x55, iobase + PCL816_MUX); +- comedi_udelay(1); ++ udelay(1); + if (inb(iobase + PCL816_MUX) != 0x55) + return 1; /* there isn't card */ + outb(0x00, iobase + PCL816_MUX); +- comedi_udelay(1); ++ udelay(1); + outb(0x18, iobase + PCL816_CONTROL); +- comedi_udelay(1); ++ udelay(1); + if (inb(iobase + PCL816_CONTROL) != 0x18) + return 1; /* there isn't card */ + return 0; /* ok, card exist */ +@@ -817,10 +817,10 @@ static void pcl816_reset(struct comedi_d + { + /* outb (0, dev->iobase + PCL818_DA_LO); DAC=0V */ + /* outb (0, dev->iobase + PCL818_DA_HI); */ +-/* comedi_udelay (1); */ ++/* udelay (1); */ + /* outb (0, dev->iobase + PCL818_DO_HI); DO=$0000 */ + /* outb (0, dev->iobase + PCL818_DO_LO); */ +-/* comedi_udelay (1); */ ++/* udelay (1); */ + outb(0, dev->iobase + PCL816_CONTROL); + outb(0, dev->iobase + PCL816_MUX); + outb(0, dev->iobase + PCL816_CLRINT); +@@ -841,10 +841,10 @@ start_pacer(struct comedi_device *dev, i + outb(0x32, dev->iobase + PCL816_CTRCTL); + outb(0xff, dev->iobase + PCL816_CTR0); + outb(0x00, dev->iobase + PCL816_CTR0); +- comedi_udelay(1); ++ udelay(1); + outb(0xb4, dev->iobase + PCL816_CTRCTL); /* set counter 2 as mode 3 */ + outb(0x74, dev->iobase + PCL816_CTRCTL); /* set counter 1 as mode 3 */ +- comedi_udelay(1); ++ udelay(1); + + if (mode == 1) { + DPRINTK("mode %d, divisor1 %d, divisor2 %d\n", mode, divisor1, +@@ -881,7 +881,7 @@ check_and_setup_channel_list(struct come + chansegment[0] = chanlist[0]; /* first channel is everytime ok */ + for (i = 1, seglen = 1; i < chanlen; i++, seglen++) { + /* build part of chanlist */ +- DEBUG(rt_printk("%d. %d %d\n", i, CR_CHAN(chanlist[i]), ++ DEBUG(printk("%d. %d %d\n", i, CR_CHAN(chanlist[i]), + CR_RANGE(chanlist[i])); + ) + if (chanlist[0] == chanlist[i]) +@@ -890,7 +890,7 @@ check_and_setup_channel_list(struct come + (CR_CHAN(chansegment[i - 1]) + 1) % chanlen; + if (nowmustbechan != CR_CHAN(chanlist[i])) { + /* channel list isn't continous :-( */ +- rt_printk ++ printk + ("comedi%d: pcl816: channel list must be continous! chanlist[%i]=%d but must be %d or %d!\n", + dev->minor, i, CR_CHAN(chanlist[i]), + nowmustbechan, CR_CHAN(chanlist[0])); +@@ -900,14 +900,14 @@ check_and_setup_channel_list(struct come + } + + for (i = 0, segpos = 0; i < chanlen; i++) { /* check whole chanlist */ +- DEBUG(rt_printk("%d %d=%d %d\n", ++ DEBUG(printk("%d %d=%d %d\n", + CR_CHAN(chansegment[i % seglen]), + CR_RANGE(chansegment[i % seglen]), + CR_CHAN(chanlist[i]), + CR_RANGE(chanlist[i])); + ) + if (chanlist[i] != chansegment[i % seglen]) { +- rt_printk ++ printk + ("comedi%d: pcl816: bad channel or range number! chanlist[%i]=%d,%d,%d and not %d,%d,%d!\n", + dev->minor, i, CR_CHAN(chansegment[i]), + CR_RANGE(chansegment[i]), +@@ -931,7 +931,7 @@ check_and_setup_channel_list(struct come + outb(CR_RANGE(chanlist[0]), dev->iobase + PCL816_RANGE); /* select gain */ + } + +- comedi_udelay(1); ++ udelay(1); + + outb(devpriv->ai_act_chanlist[0] | (devpriv->ai_act_chanlist[seglen - 1] << 4), dev->iobase + PCL816_MUX); /* select channel interval to scan */ + +@@ -981,7 +981,7 @@ static int set_rtc_irq_bit(unsigned char + */ + static void free_resources(struct comedi_device *dev) + { +- /* rt_printk("free_resource()\n"); */ ++ /* printk("free_resource()\n"); */ + if (dev->private) { + pcl816_ai_cancel(dev, devpriv->sub_ai); + pcl816_reset(dev); +@@ -993,7 +993,7 @@ static void free_resources(struct comedi + free_pages(devpriv->dmabuf[1], devpriv->dmapages[1]); + #ifdef unused + if (devpriv->rtc_irq) +- comedi_free_irq(devpriv->rtc_irq, dev); ++ free_irq(devpriv->rtc_irq, dev); + if ((devpriv->dma_rtc) && (RTC_lock == 1)) { + if (devpriv->rtc_iobase) + release_region(devpriv->rtc_iobase, +@@ -1006,7 +1006,7 @@ static void free_resources(struct comedi + free_irq(dev->irq, dev); + if (dev->iobase) + release_region(dev->iobase, this_board->io_range); +- /* rt_printk("free_resource() end\n"); */ ++ /* printk("free_resource() end\n"); */ + } + + /* +@@ -1030,14 +1030,14 @@ static int pcl816_attach(struct comedi_d + this_board->name, iobase); + + if (!request_region(iobase, this_board->io_range, "pcl816")) { +- rt_printk("I/O port conflict\n"); ++ printk("I/O port conflict\n"); + return -EIO; + } + + dev->iobase = iobase; + + if (pcl816_check(iobase)) { +- rt_printk(", I cann't detect board. FAIL!\n"); ++ printk(", I cann't detect board. FAIL!\n"); + return -EIO; + } + +@@ -1054,19 +1054,18 @@ static int pcl816_attach(struct comedi_d + irq = it->options[1]; + if (irq) { /* we want to use IRQ */ + if (((1 << irq) & this_board->IRQbits) == 0) { +- rt_printk ++ printk + (", IRQ %u is out of allowed range, DISABLING IT", + irq); + irq = 0; /* Bad IRQ */ + } else { +- if (comedi_request_irq(irq, interrupt_pcl816, 0, +- "pcl816", dev)) { +- rt_printk ++ if (request_irq(irq, interrupt_pcl816, 0, "pcl816", dev)) { ++ printk + (", unable to allocate IRQ %u, DISABLING IT", + irq); + irq = 0; /* Can't use IRQ */ + } else { +- rt_printk(", irq=%u", irq); ++ printk(", irq=%u", irq); + } + } + } +@@ -1095,12 +1094,11 @@ static int pcl816_attach(struct comedi_d + devpriv->rtc_iosize = RTC_IO_EXTENT; + RTC_lock++; + #ifdef UNTESTED_CODE +- if (!comedi_request_irq(RTC_IRQ, +- interrupt_pcl816_ai_mode13_dma_rtc, 0, ++ if (!request_irq(RTC_IRQ, interrupt_pcl816_ai_mode13_dma_rtc, 0, + "pcl816 DMA (RTC)", dev)) { + devpriv->dma_rtc = 1; + devpriv->rtc_irq = RTC_IRQ; +- rt_printk(", dma_irq=%u", devpriv->rtc_irq); ++ printk(", dma_irq=%u", devpriv->rtc_irq); + } else { + RTC_lock--; + if (RTC_lock == 0) { +@@ -1131,34 +1129,34 @@ static int pcl816_attach(struct comedi_d + goto no_dma; /* DMA disabled */ + + if (((1 << dma) & this_board->DMAbits) == 0) { +- rt_printk(", DMA is out of allowed range, FAIL!\n"); ++ printk(", DMA is out of allowed range, FAIL!\n"); + return -EINVAL; /* Bad DMA */ + } + ret = request_dma(dma, "pcl816"); + if (ret) { +- rt_printk(", unable to allocate DMA %u, FAIL!\n", dma); ++ printk(", unable to allocate DMA %u, FAIL!\n", dma); + return -EBUSY; /* DMA isn't free */ + } + + devpriv->dma = dma; +- rt_printk(", dma=%u", dma); ++ printk(", dma=%u", dma); + pages = 2; /* we need 16KB */ + devpriv->dmabuf[0] = __get_dma_pages(GFP_KERNEL, pages); + + if (!devpriv->dmabuf[0]) { +- rt_printk(", unable to allocate DMA buffer, FAIL!\n"); ++ printk(", unable to allocate DMA buffer, FAIL!\n"); + /* maybe experiment with try_to_free_pages() will help .... */ + return -EBUSY; /* no buffer :-( */ + } + devpriv->dmapages[0] = pages; + devpriv->hwdmaptr[0] = virt_to_bus((void *)devpriv->dmabuf[0]); + devpriv->hwdmasize[0] = (1 << pages) * PAGE_SIZE; +- /* rt_printk("%d %d %ld, ",devpriv->dmapages[0],devpriv->hwdmasize[0],PAGE_SIZE); */ ++ /* printk("%d %d %ld, ",devpriv->dmapages[0],devpriv->hwdmasize[0],PAGE_SIZE); */ + + if (devpriv->dma_rtc == 0) { /* we must do duble buff :-( */ + devpriv->dmabuf[1] = __get_dma_pages(GFP_KERNEL, pages); + if (!devpriv->dmabuf[1]) { +- rt_printk ++ printk + (", unable to allocate DMA buffer, FAIL!\n"); + return -EBUSY; + } +@@ -1232,7 +1230,7 @@ case COMEDI_SUBD_DO: + + pcl816_reset(dev); + +- rt_printk("\n"); ++ printk("\n"); + + return 0; + } +@@ -1243,7 +1241,7 @@ case COMEDI_SUBD_DO: + */ + static int pcl816_detach(struct comedi_device *dev) + { +- DEBUG(rt_printk("comedi%d: pcl816: remove\n", dev->minor); ++ DEBUG(printk("comedi%d: pcl816: remove\n", dev->minor); + ) + free_resources(dev); + #ifdef unused +--- a/drivers/staging/comedi/drivers/pcl818.c ++++ b/drivers/staging/comedi/drivers/pcl818.c +@@ -418,7 +418,7 @@ static int pcl818_ai_insn_read(struct co + while (timeout--) { + if (inb(dev->iobase + PCL818_STATUS) & 0x10) + goto conv_finish; +- comedi_udelay(1); ++ udelay(1); + } + comedi_error(dev, "A/D insn timeout"); + /* clear INT (conversion end) flag */ +@@ -524,7 +524,7 @@ static irqreturn_t interrupt_pcl818_ai_m + while (timeout--) { + if (inb(dev->iobase + PCL818_STATUS) & 0x10) + goto conv_finish; +- comedi_udelay(1); ++ udelay(1); + } + outb(0, dev->iobase + PCL818_STATUS); /* clear INT request */ + comedi_error(dev, "A/D mode1/3 IRQ without DRDY!"); +@@ -539,7 +539,7 @@ static irqreturn_t interrupt_pcl818_ai_m + outb(0, dev->iobase + PCL818_CLRINT); /* clear INT request */ + + if ((low & 0xf) != devpriv->act_chanlist[devpriv->act_chanlist_pos]) { /* dropout! */ +- rt_printk ++ printk + ("comedi: A/D mode1/3 IRQ - channel dropout %x!=%x !\n", + (low & 0xf), + devpriv->act_chanlist[devpriv->act_chanlist_pos]); +@@ -549,7 +549,7 @@ static irqreturn_t interrupt_pcl818_ai_m + return IRQ_HANDLED; + } + if (s->async->cur_chan == 0) { +- /* rt_printk("E"); */ ++ /* printk("E"); */ + devpriv->ai_act_scan--; + } + +@@ -591,7 +591,7 @@ static irqreturn_t interrupt_pcl818_ai_m + release_dma_lock(flags); + enable_dma(devpriv->dma); + } +- rt_printk("comedi: A/D mode1/3 IRQ \n"); ++ printk("comedi: A/D mode1/3 IRQ \n"); + + devpriv->dma_runs_to_end--; + outb(0, dev->iobase + PCL818_CLRINT); /* clear INT request */ +@@ -602,7 +602,7 @@ static irqreturn_t interrupt_pcl818_ai_m + + for (i = 0; i < len; i++) { + if ((ptr[bufptr] & 0xf) != devpriv->act_chanlist[devpriv->act_chanlist_pos]) { /* dropout! */ +- rt_printk ++ printk + ("comedi: A/D mode1/3 DMA - channel dropout %d(card)!=%d(chanlist) at %d !\n", + (ptr[bufptr] & 0xf), + devpriv->act_chanlist[devpriv-> +@@ -681,19 +681,19 @@ static irqreturn_t interrupt_pcl818_ai_m + + if (dmabuf[i] != MAGIC_DMA_WORD) { /* DMA overflow! */ + comedi_error(dev, "A/D mode1/3 DMA buffer overflow!"); +- /* rt_printk("I %d dmabuf[i] %d %d\n",i,dmabuf[i],devpriv->dmasamplsize); */ ++ /* printk("I %d dmabuf[i] %d %d\n",i,dmabuf[i],devpriv->dmasamplsize); */ + pcl818_ai_cancel(dev, s); + s->async->events |= COMEDI_CB_EOA | COMEDI_CB_ERROR; + comedi_event(dev, s); + return IRQ_HANDLED; + } +- /* rt_printk("r %ld ",ofs_dats); */ ++ /* printk("r %ld ",ofs_dats); */ + + bufptr = devpriv->last_top_dma; + + for (i = 0; i < ofs_dats; i++) { + if ((dmabuf[bufptr] & 0xf) != devpriv->act_chanlist[devpriv->act_chanlist_pos]) { /* dropout! */ +- rt_printk ++ printk + ("comedi: A/D mode1/3 DMA - channel dropout %d!=%d !\n", + (dmabuf[bufptr] & 0xf), + devpriv->act_chanlist[devpriv-> +@@ -775,7 +775,7 @@ static irqreturn_t interrupt_pcl818_ai_m + for (i = 0; i < len; i++) { + lo = inb(dev->iobase + PCL818_FI_DATALO); + if ((lo & 0xf) != devpriv->act_chanlist[devpriv->act_chanlist_pos]) { /* dropout! */ +- rt_printk ++ printk + ("comedi: A/D mode1/3 FIFO - channel dropout %d!=%d !\n", + (lo & 0xf), + devpriv->act_chanlist[devpriv-> +@@ -818,7 +818,7 @@ static irqreturn_t interrupt_pcl818(int + comedi_error(dev, "premature interrupt"); + return IRQ_HANDLED; + } +- /* rt_printk("I\n"); */ ++ /* printk("I\n"); */ + + if (devpriv->irq_blocked && devpriv->irq_was_now_closed) { + if ((devpriv->neverending_ai || (!devpriv->neverending_ai && +@@ -882,7 +882,7 @@ static void pcl818_ai_mode13dma_int(int + unsigned int flags; + unsigned int bytes; + +- rt_printk("mode13dma_int, mode: %d\n", mode); ++ printk("mode13dma_int, mode: %d\n", mode); + disable_dma(devpriv->dma); /* disable dma */ + bytes = devpriv->hwdmasize[0]; + if (!devpriv->neverending_ai) { +@@ -965,7 +965,7 @@ static int pcl818_ai_cmd_mode(int mode, + int divisor1, divisor2; + unsigned int seglen; + +- rt_printk("pcl818_ai_cmd_mode()\n"); ++ printk("pcl818_ai_cmd_mode()\n"); + if ((!dev->irq) && (!devpriv->dma_rtc)) { + comedi_error(dev, "IRQ not defined!"); + return -EINVAL; +@@ -983,7 +983,7 @@ static int pcl818_ai_cmd_mode(int mode, + setup_channel_list(dev, s, devpriv->ai_chanlist, + devpriv->ai_n_chan, seglen); + +- comedi_udelay(1); ++ udelay(1); + + devpriv->ai_act_scan = devpriv->ai_scans; + devpriv->ai_act_chan = 0; +@@ -1030,7 +1030,7 @@ static int pcl818_ai_cmd_mode(int mode, + case 0: + if (!devpriv->usefifo) { + /* IRQ */ +- /* rt_printk("IRQ\n"); */ ++ /* printk("IRQ\n"); */ + if (mode == 1) { + devpriv->ai_mode = INT_TYPE_AI1_INT; + /* Pacer+IRQ */ +@@ -1065,7 +1065,7 @@ static int pcl818_ai_cmd_mode(int mode, + break; + } + #endif +- rt_printk("pcl818_ai_cmd_mode() end\n"); ++ printk("pcl818_ai_cmd_mode() end\n"); + return 0; + } + +@@ -1155,7 +1155,7 @@ static void start_pacer(struct comedi_de + { + outb(0xb4, dev->iobase + PCL818_CTRCTL); + outb(0x74, dev->iobase + PCL818_CTRCTL); +- comedi_udelay(1); ++ udelay(1); + + if (mode == 1) { + outb(divisor2 & 0xff, dev->iobase + PCL818_CTR2); +@@ -1188,7 +1188,7 @@ static int check_channel_list(struct com + /* build part of chanlist */ + for (i = 1, seglen = 1; i < n_chan; i++, seglen++) { + +- /* rt_printk("%d. %d * %d\n",i, ++ /* printk("%d. %d * %d\n",i, + * CR_CHAN(it->chanlist[i]),CR_RANGE(it->chanlist[i]));*/ + + /* we detect loop, this must by finish */ +@@ -1198,7 +1198,7 @@ static int check_channel_list(struct com + nowmustbechan = + (CR_CHAN(chansegment[i - 1]) + 1) % s->n_chan; + if (nowmustbechan != CR_CHAN(chanlist[i])) { /* channel list isn't continous :-( */ +- rt_printk ++ printk + ("comedi%d: pcl818: channel list must be continous! chanlist[%i]=%d but must be %d or %d!\n", + dev->minor, i, CR_CHAN(chanlist[i]), + nowmustbechan, CR_CHAN(chanlist[0])); +@@ -1210,9 +1210,9 @@ static int check_channel_list(struct com + + /* check whole chanlist */ + for (i = 0, segpos = 0; i < n_chan; i++) { +- /* rt_printk("%d %d=%d %d\n",CR_CHAN(chansegment[i%seglen]),CR_RANGE(chansegment[i%seglen]),CR_CHAN(it->chanlist[i]),CR_RANGE(it->chanlist[i])); */ ++ /* printk("%d %d=%d %d\n",CR_CHAN(chansegment[i%seglen]),CR_RANGE(chansegment[i%seglen]),CR_CHAN(it->chanlist[i]),CR_RANGE(it->chanlist[i])); */ + if (chanlist[i] != chansegment[i % seglen]) { +- rt_printk ++ printk + ("comedi%d: pcl818: bad channel or range number! chanlist[%i]=%d,%d,%d and not %d,%d,%d!\n", + dev->minor, i, CR_CHAN(chansegment[i]), + CR_RANGE(chansegment[i]), +@@ -1226,7 +1226,7 @@ static int check_channel_list(struct com + } else { + seglen = 1; + } +- rt_printk("check_channel_list: seglen %d\n", seglen); ++ printk("check_channel_list: seglen %d\n", seglen); + return seglen; + } + +@@ -1244,7 +1244,7 @@ static void setup_channel_list(struct co + outb(CR_RANGE(chanlist[i]), dev->iobase + PCL818_RANGE); /* select gain */ + } + +- comedi_udelay(1); ++ udelay(1); + + /* select channel interval to scan */ + outb(devpriv->act_chanlist[0] | (devpriv->act_chanlist[seglen - +@@ -1417,7 +1417,7 @@ static int ai_cmd(struct comedi_device * + struct comedi_cmd *cmd = &s->async->cmd; + int retval; + +- rt_printk("pcl818_ai_cmd()\n"); ++ printk("pcl818_ai_cmd()\n"); + devpriv->ai_n_chan = cmd->chanlist_len; + devpriv->ai_chanlist = cmd->chanlist; + devpriv->ai_flags = cmd->flags; +@@ -1436,7 +1436,7 @@ static int ai_cmd(struct comedi_device * + if (cmd->convert_src == TRIG_TIMER) { /* mode 1 */ + devpriv->ai_timer1 = cmd->convert_arg; + retval = pcl818_ai_cmd_mode(1, dev, s); +- rt_printk("pcl818_ai_cmd() end\n"); ++ printk("pcl818_ai_cmd() end\n"); + return retval; + } + if (cmd->convert_src == TRIG_EXT) { /* mode 3 */ +@@ -1454,7 +1454,7 @@ static int ai_cmd(struct comedi_device * + static int pcl818_ai_cancel(struct comedi_device *dev, struct comedi_subdevice *s) + { + if (devpriv->irq_blocked > 0) { +- rt_printk("pcl818_ai_cancel()\n"); ++ printk("pcl818_ai_cancel()\n"); + devpriv->irq_was_now_closed = 1; + + switch (devpriv->ai_mode) { +@@ -1482,7 +1482,7 @@ static int pcl818_ai_cancel(struct comed + case INT_TYPE_AO3_INT: + #endif + outb(inb(dev->iobase + PCL818_CONTROL) & 0x73, dev->iobase + PCL818_CONTROL); /* Stop A/D */ +- comedi_udelay(1); ++ udelay(1); + start_pacer(dev, -1, 0, 0); + outb(0, dev->iobase + PCL818_AD_LO); + inb(dev->iobase + PCL818_AD_LO); +@@ -1504,7 +1504,7 @@ static int pcl818_ai_cancel(struct comed + } + + end: +- rt_printk("pcl818_ai_cancel() end\n"); ++ printk("pcl818_ai_cancel() end\n"); + return 0; + } + +@@ -1515,17 +1515,17 @@ static int pcl818_ai_cancel(struct comed + static int pcl818_check(unsigned long iobase) + { + outb(0x00, iobase + PCL818_MUX); +- comedi_udelay(1); ++ udelay(1); + if (inb(iobase + PCL818_MUX) != 0x00) + return 1; /* there isn't card */ + outb(0x55, iobase + PCL818_MUX); +- comedi_udelay(1); ++ udelay(1); + if (inb(iobase + PCL818_MUX) != 0x55) + return 1; /* there isn't card */ + outb(0x00, iobase + PCL818_MUX); +- comedi_udelay(1); ++ udelay(1); + outb(0x18, iobase + PCL818_CONTROL); +- comedi_udelay(1); ++ udelay(1); + if (inb(iobase + PCL818_CONTROL) != 0x18) + return 1; /* there isn't card */ + return 0; /* ok, card exist */ +@@ -1544,10 +1544,10 @@ static void pcl818_reset(struct comedi_d + } + outb(0, dev->iobase + PCL818_DA_LO); /* DAC=0V */ + outb(0, dev->iobase + PCL818_DA_HI); +- comedi_udelay(1); ++ udelay(1); + outb(0, dev->iobase + PCL818_DO_HI); /* DO=$0000 */ + outb(0, dev->iobase + PCL818_DO_LO); +- comedi_udelay(1); ++ udelay(1); + outb(0, dev->iobase + PCL818_CONTROL); + outb(0, dev->iobase + PCL818_CNTENABLE); + outb(0, dev->iobase + PCL818_MUX); +@@ -1658,7 +1658,7 @@ static int rtc_setfreq_irq(int freq) + */ + static void free_resources(struct comedi_device *dev) + { +- /* rt_printk("free_resource()\n"); */ ++ /* printk("free_resource()\n"); */ + if (dev->private) { + pcl818_ai_cancel(dev, devpriv->sub_ai); + pcl818_reset(dev); +@@ -1670,7 +1670,7 @@ static void free_resources(struct comedi + free_pages(devpriv->dmabuf[1], devpriv->dmapages[1]); + #ifdef unused + if (devpriv->rtc_irq) +- comedi_free_irq(devpriv->rtc_irq, dev); ++ free_irq(devpriv->rtc_irq, dev); + if ((devpriv->dma_rtc) && (RTC_lock == 1)) { + if (devpriv->rtc_iobase) + release_region(devpriv->rtc_iobase, +@@ -1685,7 +1685,7 @@ static void free_resources(struct comedi + free_irq(dev->irq, dev); + if (dev->iobase) + release_region(dev->iobase, devpriv->io_range); +- /* rt_printk("free_resource() end\n"); */ ++ /* printk("free_resource() end\n"); */ + } + + /* +@@ -1717,14 +1717,14 @@ static int pcl818_attach(struct comedi_d + devpriv->usefifo = 1; + } + if (!request_region(iobase, devpriv->io_range, "pcl818")) { +- rt_printk("I/O port conflict\n"); ++ printk("I/O port conflict\n"); + return -EIO; + } + + dev->iobase = iobase; + + if (pcl818_check(iobase)) { +- rt_printk(", I can't detect board. FAIL!\n"); ++ printk(", I can't detect board. FAIL!\n"); + return -EIO; + } + +@@ -1736,19 +1736,18 @@ static int pcl818_attach(struct comedi_d + irq = it->options[1]; + if (irq) { /* we want to use IRQ */ + if (((1 << irq) & this_board->IRQbits) == 0) { +- rt_printk ++ printk + (", IRQ %u is out of allowed range, DISABLING IT", + irq); + irq = 0; /* Bad IRQ */ + } else { +- if (comedi_request_irq(irq, interrupt_pcl818, 0, +- "pcl818", dev)) { +- rt_printk ++ if (request_irq(irq, interrupt_pcl818, 0, "pcl818", dev)) { ++ printk + (", unable to allocate IRQ %u, DISABLING IT", + irq); + irq = 0; /* Can't use IRQ */ + } else { +- rt_printk(", irq=%u", irq); ++ printk(", irq=%u", irq); + } + } + } +@@ -1776,12 +1775,11 @@ static int pcl818_attach(struct comedi_d + devpriv->rtc_iobase = RTC_PORT(0); + devpriv->rtc_iosize = RTC_IO_EXTENT; + RTC_lock++; +- if (!comedi_request_irq(RTC_IRQ, +- interrupt_pcl818_ai_mode13_dma_rtc, 0, ++ if (!request_irq(RTC_IRQ, interrupt_pcl818_ai_mode13_dma_rtc, 0, + "pcl818 DMA (RTC)", dev)) { + devpriv->dma_rtc = 1; + devpriv->rtc_irq = RTC_IRQ; +- rt_printk(", dma_irq=%u", devpriv->rtc_irq); ++ printk(", dma_irq=%u", devpriv->rtc_irq); + } else { + RTC_lock--; + if (RTC_lock == 0) { +@@ -1806,31 +1804,31 @@ static int pcl818_attach(struct comedi_d + if (dma < 1) + goto no_dma; /* DMA disabled */ + if (((1 << dma) & this_board->DMAbits) == 0) { +- rt_printk(", DMA is out of allowed range, FAIL!\n"); ++ printk(", DMA is out of allowed range, FAIL!\n"); + return -EINVAL; /* Bad DMA */ + } + ret = request_dma(dma, "pcl818"); + if (ret) { +- rt_printk(", unable to allocate DMA %u, FAIL!\n", dma); ++ printk(", unable to allocate DMA %u, FAIL!\n", dma); + return -EBUSY; /* DMA isn't free */ + } + devpriv->dma = dma; +- rt_printk(", dma=%u", dma); ++ printk(", dma=%u", dma); + pages = 2; /* we need 16KB */ + devpriv->dmabuf[0] = __get_dma_pages(GFP_KERNEL, pages); + if (!devpriv->dmabuf[0]) { +- rt_printk(", unable to allocate DMA buffer, FAIL!\n"); ++ printk(", unable to allocate DMA buffer, FAIL!\n"); + /* maybe experiment with try_to_free_pages() will help .... */ + return -EBUSY; /* no buffer :-( */ + } + devpriv->dmapages[0] = pages; + devpriv->hwdmaptr[0] = virt_to_bus((void *)devpriv->dmabuf[0]); + devpriv->hwdmasize[0] = (1 << pages) * PAGE_SIZE; +- /* rt_printk("%d %d %ld, ",devpriv->dmapages[0],devpriv->hwdmasize[0],PAGE_SIZE); */ ++ /* printk("%d %d %ld, ",devpriv->dmapages[0],devpriv->hwdmasize[0],PAGE_SIZE); */ + if (devpriv->dma_rtc == 0) { /* we must do duble buff :-( */ + devpriv->dmabuf[1] = __get_dma_pages(GFP_KERNEL, pages); + if (!devpriv->dmabuf[1]) { +- rt_printk ++ printk + (", unable to allocate DMA buffer, FAIL!\n"); + return -EBUSY; + } +@@ -1989,7 +1987,7 @@ static int pcl818_attach(struct comedi_d + + pcl818_reset(dev); + +- rt_printk("\n"); ++ printk("\n"); + + return 0; + } +@@ -2000,7 +1998,7 @@ static int pcl818_attach(struct comedi_d + */ + static int pcl818_detach(struct comedi_device *dev) + { +- /* rt_printk("comedi%d: pcl818: remove\n", dev->minor); */ ++ /* printk("comedi%d: pcl818: remove\n", dev->minor); */ + free_resources(dev); + return 0; + } +--- a/drivers/staging/comedi/drivers/pcmmio.c ++++ b/drivers/staging/comedi/drivers/pcmmio.c +@@ -364,7 +364,7 @@ static int pcmmio_attach(struct comedi_d + dev->iobase + 16 + asic * ASIC_IOSIZE; + devpriv->asics[asic].irq = 0; /* this gets actually set at the end of + this function when we +- comedi_request_irqs */ ++ request_irqs */ + spin_lock_init(&devpriv->asics[asic].spinlock); + } + +@@ -489,12 +489,12 @@ static int pcmmio_attach(struct comedi_d + + for (asic = 0; irq[0] && asic < MAX_ASICS; ++asic) { + if (irq[asic] +- && comedi_request_irq(irq[asic], interrupt_pcmmio, ++ && request_irq(irq[asic], interrupt_pcmmio, + IRQF_SHARED, thisboard->name, dev)) { + int i; + /* unroll the allocated irqs.. */ + for (i = asic - 1; i >= 0; --i) { +- comedi_free_irq(irq[i], dev); ++ free_irq(irq[i], dev); + devpriv->asics[i].irq = irq[i] = 0; + } + irq[asic] = 0; +@@ -536,7 +536,7 @@ static int pcmmio_detach(struct comedi_d + + for (i = 0; i < MAX_ASICS; ++i) { + if (devpriv && devpriv->asics[i].irq) +- comedi_free_irq(devpriv->asics[i].irq, dev); ++ free_irq(devpriv->asics[i].irq, dev); + } + + if (devpriv && devpriv->sprivs) +@@ -778,8 +778,7 @@ static irqreturn_t interrupt_pcmmio(int + /* it is an interrupt for ASIC #asic */ + unsigned char int_pend; + +- comedi_spin_lock_irqsave(&devpriv->asics[asic].spinlock, +- flags); ++ spin_lock_irqsave(&devpriv->asics[asic].spinlock, flags); + + int_pend = inb(iobase + REG_INT_PENDING) & 0x07; + +@@ -811,8 +810,7 @@ static irqreturn_t interrupt_pcmmio(int + ++got1; + } + +- comedi_spin_unlock_irqrestore(&devpriv->asics[asic]. +- spinlock, flags); ++ spin_unlock_irqrestore(&devpriv->asics[asic]. spinlock, flags); + + if (triggered) { + struct comedi_subdevice *s; +@@ -825,9 +823,7 @@ static irqreturn_t interrupt_pcmmio(int + unsigned long flags; + unsigned oldevents; + +- comedi_spin_lock_irqsave +- (&subpriv->dio.intr. +- spinlock, flags); ++ spin_lock_irqsave(&subpriv->dio.intr.spinlock, flags); + + oldevents = s->async->events; + +@@ -896,9 +892,7 @@ static irqreturn_t interrupt_pcmmio(int + } + } + +- comedi_spin_unlock_irqrestore +- (&subpriv->dio.intr. +- spinlock, flags); ++ spin_unlock_irqrestore(&subpriv->dio.intr.spinlock, flags); + + if (oldevents != + s->async->events) { +@@ -1001,10 +995,10 @@ static int pcmmio_cancel(struct comedi_d + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&subpriv->dio.intr.spinlock, flags); ++ spin_lock_irqsave(&subpriv->dio.intr.spinlock, flags); + if (subpriv->dio.intr.active) + pcmmio_stop_intr(dev, s); +- comedi_spin_unlock_irqrestore(&subpriv->dio.intr.spinlock, flags); ++ spin_unlock_irqrestore(&subpriv->dio.intr.spinlock, flags); + + return 0; + } +@@ -1022,12 +1016,12 @@ pcmmio_inttrig_start_intr(struct comedi_ + if (trignum != 0) + return -EINVAL; + +- comedi_spin_lock_irqsave(&subpriv->dio.intr.spinlock, flags); ++ spin_lock_irqsave(&subpriv->dio.intr.spinlock, flags); + s->async->inttrig = 0; + if (subpriv->dio.intr.active) { + event = pcmmio_start_intr(dev, s); + } +- comedi_spin_unlock_irqrestore(&subpriv->dio.intr.spinlock, flags); ++ spin_unlock_irqrestore(&subpriv->dio.intr.spinlock, flags); + + if (event) { + comedi_event(dev, s); +@@ -1045,7 +1039,7 @@ static int pcmmio_cmd(struct comedi_devi + unsigned long flags; + int event = 0; + +- comedi_spin_lock_irqsave(&subpriv->dio.intr.spinlock, flags); ++ spin_lock_irqsave(&subpriv->dio.intr.spinlock, flags); + subpriv->dio.intr.active = 1; + + /* Set up end of acquisition. */ +@@ -1071,7 +1065,7 @@ static int pcmmio_cmd(struct comedi_devi + event = pcmmio_start_intr(dev, s); + break; + } +- comedi_spin_unlock_irqrestore(&subpriv->dio.intr.spinlock, flags); ++ spin_unlock_irqrestore(&subpriv->dio.intr.spinlock, flags); + + if (event) { + comedi_event(dev, s); +--- a/drivers/staging/comedi/drivers/pcmuio.c ++++ b/drivers/staging/comedi/drivers/pcmuio.c +@@ -322,7 +322,7 @@ static int pcmuio_attach(struct comedi_d + devpriv->asics[asic].iobase = dev->iobase + asic * ASIC_IOSIZE; + devpriv->asics[asic].irq = 0; /* this gets actually set at the end of + this function when we +- comedi_request_irqs */ ++ request_irqs */ + spin_lock_init(&devpriv->asics[asic].spinlock); + } + +@@ -413,12 +413,12 @@ static int pcmuio_attach(struct comedi_d + + for (asic = 0; irq[0] && asic < MAX_ASICS; ++asic) { + if (irq[asic] +- && comedi_request_irq(irq[asic], interrupt_pcmuio, ++ && request_irq(irq[asic], interrupt_pcmuio, + IRQF_SHARED, thisboard->name, dev)) { + int i; + /* unroll the allocated irqs.. */ + for (i = asic - 1; i >= 0; --i) { +- comedi_free_irq(irq[i], dev); ++ free_irq(irq[i], dev); + devpriv->asics[i].irq = irq[i] = 0; + } + irq[asic] = 0; +@@ -460,7 +460,7 @@ static int pcmuio_detach(struct comedi_d + + for (i = 0; i < MAX_ASICS; ++i) { + if (devpriv->asics[i].irq) +- comedi_free_irq(devpriv->asics[i].irq, dev); ++ free_irq(devpriv->asics[i].irq, dev); + } + + if (devpriv && devpriv->sprivs) +@@ -701,8 +701,7 @@ static irqreturn_t interrupt_pcmuio(int + /* it is an interrupt for ASIC #asic */ + unsigned char int_pend; + +- comedi_spin_lock_irqsave(&devpriv->asics[asic].spinlock, +- flags); ++ spin_lock_irqsave(&devpriv->asics[asic].spinlock, flags); + + int_pend = inb(iobase + REG_INT_PENDING) & 0x07; + +@@ -734,8 +733,7 @@ static irqreturn_t interrupt_pcmuio(int + ++got1; + } + +- comedi_spin_unlock_irqrestore(&devpriv->asics[asic]. +- spinlock, flags); ++ spin_unlock_irqrestore(&devpriv->asics[asic].spinlock, flags); + + if (triggered) { + struct comedi_subdevice *s; +@@ -748,9 +746,7 @@ static irqreturn_t interrupt_pcmuio(int + unsigned long flags; + unsigned oldevents; + +- comedi_spin_lock_irqsave +- (&subpriv->intr. +- spinlock, flags); ++ spin_lock_irqsave (&subpriv->intr.spinlock, flags); + + oldevents = s->async->events; + +@@ -816,9 +812,7 @@ static irqreturn_t interrupt_pcmuio(int + } + } + +- comedi_spin_unlock_irqrestore +- (&subpriv->intr. +- spinlock, flags); ++ spin_unlock_irqrestore(&subpriv->intr.spinlock, flags); + + if (oldevents != + s->async->events) { +@@ -911,10 +905,10 @@ static int pcmuio_cancel(struct comedi_d + { + unsigned long flags; + +- comedi_spin_lock_irqsave(&subpriv->intr.spinlock, flags); ++ spin_lock_irqsave(&subpriv->intr.spinlock, flags); + if (subpriv->intr.active) + pcmuio_stop_intr(dev, s); +- comedi_spin_unlock_irqrestore(&subpriv->intr.spinlock, flags); ++ spin_unlock_irqrestore(&subpriv->intr.spinlock, flags); + + return 0; + } +@@ -932,12 +926,12 @@ pcmuio_inttrig_start_intr(struct comedi_ + if (trignum != 0) + return -EINVAL; + +- comedi_spin_lock_irqsave(&subpriv->intr.spinlock, flags); ++ spin_lock_irqsave(&subpriv->intr.spinlock, flags); + s->async->inttrig = 0; + if (subpriv->intr.active) { + event = pcmuio_start_intr(dev, s); + } +- comedi_spin_unlock_irqrestore(&subpriv->intr.spinlock, flags); ++ spin_unlock_irqrestore(&subpriv->intr.spinlock, flags); + + if (event) { + comedi_event(dev, s); +@@ -955,7 +949,7 @@ static int pcmuio_cmd(struct comedi_devi + unsigned long flags; + int event = 0; + +- comedi_spin_lock_irqsave(&subpriv->intr.spinlock, flags); ++ spin_lock_irqsave(&subpriv->intr.spinlock, flags); + subpriv->intr.active = 1; + + /* Set up end of acquisition. */ +@@ -981,7 +975,7 @@ static int pcmuio_cmd(struct comedi_devi + event = pcmuio_start_intr(dev, s); + break; + } +- comedi_spin_unlock_irqrestore(&subpriv->intr.spinlock, flags); ++ spin_unlock_irqrestore(&subpriv->intr.spinlock, flags); + + if (event) { + comedi_event(dev, s); +--- a/drivers/staging/comedi/drivers/plx9080.h ++++ b/drivers/staging/comedi/drivers/plx9080.h +@@ -399,11 +399,11 @@ static inline int plx9080_abort_dma(void + + /* wait to make sure done bit is zero */ + for (i = 0; (dma_status & PLX_DMA_DONE_BIT) && i < timeout; i++) { +- comedi_udelay(1); ++ udelay(1); + dma_status = readb(dma_cs_addr); + } + if (i == timeout) { +- rt_printk ++ printk + ("plx9080: cancel() timed out waiting for dma %i done clear\n", + channel); + return -ETIMEDOUT; +@@ -413,11 +413,11 @@ static inline int plx9080_abort_dma(void + /* wait for dma done bit */ + dma_status = readb(dma_cs_addr); + for (i = 0; (dma_status & PLX_DMA_DONE_BIT) == 0 && i < timeout; i++) { +- comedi_udelay(1); ++ udelay(1); + dma_status = readb(dma_cs_addr); + } + if (i == timeout) { +- rt_printk ++ printk + ("plx9080: cancel() timed out waiting for dma %i done set\n", + channel); + return -ETIMEDOUT; +--- a/drivers/staging/comedi/drivers/rtd520.c ++++ b/drivers/staging/comedi/drivers/rtd520.c +@@ -135,7 +135,7 @@ Configuration options: + #define RTD_DMA_TIMEOUT 33000 /* 1 msec */ + #else + /* by delaying, power and electrical noise are reduced somewhat */ +-#define WAIT_QUIETLY comedi_udelay (1) ++#define WAIT_QUIETLY udelay (1) + #define RTD_ADC_TIMEOUT 2000 /* in usec */ + #define RTD_DAC_TIMEOUT 2000 /* in usec */ + #define RTD_DMA_TIMEOUT 1000 /* in usec */ +@@ -900,7 +900,7 @@ static int rtd_attach(struct comedi_devi + /* initialize board, per RTD spec */ + /* also, initialize shadow registers */ + RtdResetBoard(dev); +- comedi_udelay(100); /* needed? */ ++ udelay(100); /* needed? */ + RtdPlxInterruptWrite(dev, 0); + RtdInterruptMask(dev, 0); /* and sets shadow */ + RtdInterruptClearMask(dev, ~0); /* and sets shadow */ +@@ -919,7 +919,7 @@ static int rtd_attach(struct comedi_devi + /* TODO: set user out source ??? */ + + /* check if our interrupt is available and get it */ +- ret = comedi_request_irq(devpriv->pci_dev->irq, rtd_interrupt, ++ ret = request_irq(devpriv->pci_dev->irq, rtd_interrupt, + IRQF_SHARED, DRV_NAME, dev); + + if (ret < 0) { +@@ -1032,7 +1032,7 @@ static int rtd_attach(struct comedi_devi + /* disable interrupt controller */ + RtdPlxInterruptWrite(dev, RtdPlxInterruptRead(dev) + & ~(ICS_PLIE | ICS_DMA0_E | ICS_DMA1_E)); +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + + /* release all regions that were allocated */ +@@ -1111,7 +1111,7 @@ static int rtd_detach(struct comedi_devi + /* disable interrupt controller */ + RtdPlxInterruptWrite(dev, RtdPlxInterruptRead(dev) + & ~(ICS_PLIE | ICS_DMA0_E | ICS_DMA1_E)); +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + } + + /* release all regions that were allocated */ +@@ -1224,7 +1224,7 @@ static int rtd520_probe_fifo_depth(struc + unsigned fifo_status; + /* trigger conversion */ + RtdAdcStart(dev); +- comedi_udelay(1); ++ udelay(1); + fifo_status = RtdFifoStatus(dev); + if ((fifo_status & FS_ADC_HEMPTY) == 0) { + fifo_size = 2 * i; +@@ -1233,13 +1233,13 @@ static int rtd520_probe_fifo_depth(struc + } + if (i == limit) + { +- rt_printk("\ncomedi: %s: failed to probe fifo size.\n", DRV_NAME); ++ printk("\ncomedi: %s: failed to probe fifo size.\n", DRV_NAME); + return -EIO; + } + RtdAdcClearFifo(dev); + if (fifo_size != 0x400 && fifo_size != 0x2000) + { +- rt_printk("\ncomedi: %s: unexpected fifo size of %i, expected 1024 or 8192.\n", ++ printk("\ncomedi: %s: unexpected fifo size of %i, expected 1024 or 8192.\n", + DRV_NAME, fifo_size); + return -EIO; + } +@@ -1386,7 +1386,7 @@ void abort_dma(struct comedi_device *dev + + ((channel == 0) ? LCFG_DMACSR0 : LCFG_DMACSR1); + + /* spinlock for plx dma control/status reg */ +- /* comedi_spin_lock_irqsave( &dev->spinlock, flags ); */ ++ /* spin_lock_irqsave( &dev->spinlock, flags ); */ + + /* abort dma transfer if necessary */ + status = readb(dma_cs_addr); +@@ -1409,7 +1409,7 @@ void abort_dma(struct comedi_device *dev + + /* disable channel (required) */ + writeb(0, dma_cs_addr); +- comedi_udelay(1); /* needed?? */ ++ udelay(1); /* needed?? */ + /* set abort bit for channel */ + writeb(PLX_DMA_ABORT_BIT, dma_cs_addr); + +@@ -1427,7 +1427,7 @@ void abort_dma(struct comedi_device *dev + } + + abortDmaExit: +- /* comedi_spin_unlock_irqrestore( &dev->spinlock, flags ); */ ++ /* spin_unlock_irqrestore( &dev->spinlock, flags ); */ + } + + /* +--- a/drivers/staging/comedi/drivers/rti800.c ++++ b/drivers/staging/comedi/drivers/rti800.c +@@ -200,7 +200,7 @@ static int rti800_ai_insn_read(struct co + * gets set, and you will have an error. */ + if (insn->n > 0) { + BUG_ON(gain >= ARRAY_SIZE(gaindelay)); +- comedi_udelay(gaindelay[gain]); ++ udelay(gaindelay[gain]); + } + } + +@@ -209,16 +209,16 @@ static int rti800_ai_insn_read(struct co + for (t = RTI800_TIMEOUT; t; t--) { + status = inb(dev->iobase + RTI800_CSR); + if (status & RTI800_OVERRUN) { +- rt_printk("rti800: a/d overrun\n"); ++ printk("rti800: a/d overrun\n"); + outb(0, dev->iobase + RTI800_CLRFLAGS); + return -EIO; + } + if (status & RTI800_DONE) + break; +- comedi_udelay(1); ++ udelay(1); + } + if (t == 0) { +- rt_printk("rti800: timeout\n"); ++ printk("rti800: timeout\n"); + return -ETIME; + } + data[i] = inb(dev->iobase + RTI800_ADCLO); +@@ -338,8 +338,7 @@ static int rti800_attach(struct comedi_d + irq = it->options[1]; + if (irq) { + printk("( irq = %u )", irq); +- ret = comedi_request_irq(irq, rti800_interrupt, 0, +- "rti800", dev); ++ ret = request_irq(irq, rti800_interrupt, 0, "rti800", dev); + if (ret < 0) { + printk(" Failed to allocate IRQ\n"); + return ret; +@@ -455,7 +454,7 @@ static int rti800_detach(struct comedi_d + release_region(dev->iobase, RTI800_SIZE); + + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + + return 0; + } +--- a/drivers/staging/comedi/drivers/s526.c ++++ b/drivers/staging/comedi/drivers/s526.c +@@ -850,9 +850,9 @@ static int s526_ai_rinsn(struct comedi_d + } + } + if (i == TIMEOUT) { +- /* rt_printk() should be used instead of printk() ++ /* printk() should be used instead of printk() + * whenever the code can be called from real-time. */ +- rt_printk("s526: ADC(0x%04x) timeout\n", ++ printk("s526: ADC(0x%04x) timeout\n", + inw(ADDR_REG(REG_ISR))); + return -ETIMEDOUT; + } +--- a/drivers/staging/comedi/drivers/s626.c ++++ b/drivers/staging/comedi/drivers/s626.c +@@ -596,8 +596,8 @@ static int s626_attach(struct comedi_dev + if (dev->irq == 0) { + printk(" unknown irq (bad)\n"); + } else { +- ret = comedi_request_irq(dev->irq, s626_irq_handler, +- IRQF_SHARED, "s626", dev); ++ ret = request_irq(dev->irq, s626_irq_handler, IRQF_SHARED, ++ "s626", dev); + + if (ret < 0) { + printk(" irq not available\n"); +@@ -987,7 +987,7 @@ static irqreturn_t s626_irq_handler(int + if (dev->attached == 0) + return IRQ_NONE; + /* lock to avoid race with comedi_poll */ +- comedi_spin_lock_irqsave(&dev->spinlock, flags); ++ spin_lock_irqsave(&dev->spinlock, flags); + + /* save interrupt enable register state */ + irqstatus = readl(devpriv->base_addr + P_IER); +@@ -1264,7 +1264,7 @@ static irqreturn_t s626_irq_handler(int + + DEBUG("s626_irq_handler: exit interrupt service routine.\n"); + +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); ++ spin_unlock_irqrestore(&dev->spinlock, flags); + return IRQ_HANDLED; + } + +@@ -1291,7 +1291,7 @@ static int s626_detach(struct comedi_dev + } + + if (dev->irq) +- comedi_free_irq(dev->irq, dev); ++ free_irq(dev->irq, dev); + + if (devpriv->base_addr) + iounmap(devpriv->base_addr); +@@ -1574,7 +1574,7 @@ static int s626_ai_insn_read(struct come + for (n = 0; n < insn->n; n++) { + + /* Delay 10 microseconds for analog input settling. */ +- comedi_udelay(10); ++ udelay(10); + + /* Start ADC by pulsing GPIO1 low. */ + GpioImage = RR7146(P_GPIO); +@@ -1606,7 +1606,7 @@ static int s626_ai_insn_read(struct come + * data value is sometimes set to the previous + * conversion's data value. + */ +- comedi_udelay(4); ++ udelay(4); + } + + /* Start a dummy conversion to cause the data from the +--- a/drivers/staging/comedi/drivers/s626.h ++++ b/drivers/staging/comedi/drivers/s626.h +@@ -63,7 +63,7 @@ + */ + + #ifdef _DEBUG_ +-#define DEBUG(...); rt_printk(__VA_ARGS__); ++#define DEBUG(...); printk(__VA_ARGS__); + #else + #define DEBUG(...) + #endif +--- a/drivers/staging/comedi/drivers/serial2002.c ++++ b/drivers/staging/comedi/drivers/serial2002.c +@@ -223,7 +223,7 @@ static int tty_read(struct file *f, int + result = ch; + break; + } +- comedi_udelay(100); ++ udelay(100); + } + } + set_fs(oldfs); +--- a/drivers/staging/comedi/drivers/skel.c ++++ b/drivers/staging/comedi/drivers/skel.c +@@ -331,9 +331,9 @@ static int skel_ai_rinsn(struct comedi_d + break; + } + if (i == TIMEOUT) { +- /* rt_printk() should be used instead of printk() ++ /* printk() should be used instead of printk() + * whenever the code can be called from real-time. */ +- rt_printk("timeout\n"); ++ printk("timeout\n"); + return -ETIMEDOUT; + } + +--- a/drivers/staging/comedi/drivers/unioxx5.c ++++ b/drivers/staging/comedi/drivers/unioxx5.c +@@ -311,7 +311,7 @@ static int __unioxx5_subdev_init(struct + usp->usp_module_type[i] = inb(subdev_iobase + 6); + + printk(" [%d] 0x%02x |", i, usp->usp_module_type[i]); +- comedi_udelay(1); ++ udelay(1); + } + + printk("\n"); +--- a/drivers/staging/comedi/kcomedilib/data.c ++++ b/drivers/staging/comedi/kcomedilib/data.c +@@ -23,7 +23,7 @@ + + #include "../comedi.h" + #include "../comedilib.h" +-#include "../comedidev.h" /* for comedi_udelay() */ ++#include "../comedidev.h" + + #include <linux/string.h> + +@@ -83,7 +83,7 @@ int comedi_data_read_delayed(void *dev, + if (retval < 0) + return retval; + +- comedi_udelay((nano_sec + 999) / 1000); ++ udelay((nano_sec + 999) / 1000); + + return comedi_data_read(dev, subdev, chan, range, aref, data); + } +--- a/drivers/staging/comedi/kcomedilib/kcomedilib_main.c ++++ b/drivers/staging/comedi/kcomedilib/kcomedilib_main.c +@@ -105,7 +105,7 @@ int comedi_loglevel(int newlevel) + + void comedi_perror(const char *message) + { +- rt_printk("%s: unknown error\n", message); ++ printk("%s: unknown error\n", message); + } + + char *comedi_strerror(int err) +@@ -208,7 +208,7 @@ int comedi_do_insn(void *d, struct comed + ret = -EINVAL; + break; + } +- comedi_udelay(insn->data[0]); ++ udelay(insn->data[0]); + ret = 1; + break; + case INSN_INTTRIG: +@@ -217,19 +217,19 @@ int comedi_do_insn(void *d, struct comed + break; + } + if (insn->subdev >= dev->n_subdevices) { +- rt_printk("%d not usable subdevice\n", ++ printk("%d not usable subdevice\n", + insn->subdev); + ret = -EINVAL; + break; + } + s = dev->subdevices + insn->subdev; + if (!s->async) { +- rt_printk("no async\n"); ++ printk("no async\n"); + ret = -EINVAL; + break; + } + if (!s->async->inttrig) { +- rt_printk("no inttrig\n"); ++ printk("no inttrig\n"); + ret = -EAGAIN; + break; + } +@@ -249,7 +249,7 @@ int comedi_do_insn(void *d, struct comed + s = dev->subdevices + insn->subdev; + + if (s->type == COMEDI_SUBD_UNUSED) { +- rt_printk("%d not useable subdevice\n", insn->subdev); ++ printk("%d not useable subdevice\n", insn->subdev); + ret = -EIO; + goto error; + } +@@ -258,7 +258,7 @@ int comedi_do_insn(void *d, struct comed + + ret = check_chanlist(s, 1, &insn->chanspec); + if (ret < 0) { +- rt_printk("bad chanspec\n"); ++ printk("bad chanspec\n"); + ret = -EINVAL; + goto error; + } +@@ -295,7 +295,7 @@ int comedi_do_insn(void *d, struct comed + #if 0 + /* XXX do we want this? -- abbotti #if'ed it out for now. */ + if (ret != insn->n) { +- rt_printk("BUG: result of insn != insn.n\n"); ++ printk("BUG: result of insn != insn.n\n"); + ret = -EINVAL; + goto error; + } +@@ -336,7 +336,7 @@ int comedi_lock(void *d, unsigned int su + + s = dev->subdevices + subdevice; + +- comedi_spin_lock_irqsave(&s->spin_lock, flags); ++ spin_lock_irqsave(&s->spin_lock, flags); + + if (s->busy) { + ret = -EBUSY; +@@ -348,7 +348,7 @@ int comedi_lock(void *d, unsigned int su + } + } + +- comedi_spin_unlock_irqrestore(&s->spin_lock, flags); ++ spin_unlock_irqrestore(&s->spin_lock, flags); + + return ret; + } +@@ -382,7 +382,7 @@ int comedi_unlock(void *d, unsigned int + + async = s->async; + +- comedi_spin_lock_irqsave(&s->spin_lock, flags); ++ spin_lock_irqsave(&s->spin_lock, flags); + + if (s->busy) { + ret = -EBUSY; +@@ -400,7 +400,7 @@ int comedi_unlock(void *d, unsigned int + ret = 0; + } + +- comedi_spin_unlock_irqrestore(&s->spin_lock, flags); ++ spin_unlock_irqrestore(&s->spin_lock, flags); + + return ret; + } +--- a/drivers/staging/comedi/range.c ++++ b/drivers/staging/comedi/range.c +@@ -130,8 +130,7 @@ int check_chanlist(struct comedi_subdevi + if (CR_CHAN(chanlist[i]) >= s->n_chan || + CR_RANGE(chanlist[i]) >= s->range_table->length + || aref_invalid(s, chanlist[i])) { +- rt_printk +- ("bad chanlist[%d]=0x%08x n_chan=%d range length=%d\n", ++ printk("bad chanlist[%d]=0x%08x n_chan=%d range length=%d\n", + i, chanlist[i], s->n_chan, + s->range_table->length); + #if 0 +@@ -147,13 +146,13 @@ int check_chanlist(struct comedi_subdevi + CR_RANGE(chanlist[i]) >= + s->range_table_list[chan]->length + || aref_invalid(s, chanlist[i])) { +- rt_printk("bad chanlist[%d]=0x%08x\n", i, ++ printk("bad chanlist[%d]=0x%08x\n", i, + chanlist[i]); + return -EINVAL; + } + } + } else { +- rt_printk("comedi: (bug) no range type list!\n"); ++ printk("comedi: (bug) no range type list!\n"); + return -EINVAL; + } + return 0; diff --git a/staging/staging-comedi-remove-rt-code.patch b/staging/staging-comedi-remove-rt-code.patch new file mode 100644 index 00000000000000..a3f67b71726c69 --- /dev/null +++ b/staging/staging-comedi-remove-rt-code.patch @@ -0,0 +1,2040 @@ +From foo@baz Mon Apr 27 15:14:34 PDT 2009 +Date: Mon, 27 Apr 2009 15:14:34 -0700 +To: Greg KH <greg@kroah.com> +From: Greg Kroah-Hartman <gregkh@suse.de> +Subject: Staging: comedi: remove RT code + +From: Greg Kroah-Hartman <gregkh@suse.de> + +This removes the unused RT code from the comedi subsystem. + +A lot of drivers needed to then include interrupt.h on their own, as they +were picking it up through the comedi_rt.h inclusion. + +Cc: Ian Abbott <abbotti@mev.co.uk> +Cc: Frank Mori Hess <fmhess@users.sourceforge.net> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> +--- + drivers/staging/comedi/Kconfig | 7 + drivers/staging/comedi/Makefile | 5 + drivers/staging/comedi/comedi_fops.c | 26 + drivers/staging/comedi/comedi_ksyms.c | 7 + drivers/staging/comedi/comedi_rt.h | 150 --- + drivers/staging/comedi/comedidev.h | 2 + drivers/staging/comedi/drivers/cb_das16_cs.c | 1 + drivers/staging/comedi/drivers/cb_pcimdas.c | 1 + drivers/staging/comedi/drivers/comedi_rt_timer.c | 756 -------------------- + drivers/staging/comedi/drivers/daqboard2000.c | 1 + drivers/staging/comedi/drivers/das16.c | 1 + drivers/staging/comedi/drivers/das16m1.c | 1 + drivers/staging/comedi/drivers/das1800.c | 1 + drivers/staging/comedi/drivers/das6402.c | 1 + drivers/staging/comedi/drivers/das800.c | 1 + drivers/staging/comedi/drivers/dmm32at.c | 1 + drivers/staging/comedi/drivers/dt2811.c | 1 + drivers/staging/comedi/drivers/dt2814.c | 1 + drivers/staging/comedi/drivers/dt3000.c | 1 + drivers/staging/comedi/drivers/gsc_hpdi.c | 1 + drivers/staging/comedi/drivers/icp_multi.c | 1 + drivers/staging/comedi/drivers/me4000.c | 1 + drivers/staging/comedi/drivers/me_daq.c | 1 + drivers/staging/comedi/drivers/multiq3.c | 1 + drivers/staging/comedi/drivers/ni_6527.c | 1 + drivers/staging/comedi/drivers/ni_65xx.c | 1 + drivers/staging/comedi/drivers/ni_660x.c | 1 + drivers/staging/comedi/drivers/ni_670x.c | 1 + drivers/staging/comedi/drivers/ni_at_a2150.c | 1 + drivers/staging/comedi/drivers/ni_atmio.c | 1 + drivers/staging/comedi/drivers/ni_atmio16d.c | 1 + drivers/staging/comedi/drivers/ni_daq_700.c | 1 + drivers/staging/comedi/drivers/ni_daq_dio24.c | 1 + drivers/staging/comedi/drivers/ni_labpc.c | 1 + drivers/staging/comedi/drivers/ni_mio_common.c | 1 + drivers/staging/comedi/drivers/ni_pcidio.c | 1 + drivers/staging/comedi/drivers/pcl711.c | 1 + drivers/staging/comedi/drivers/pcl812.c | 1 + drivers/staging/comedi/drivers/pcmad.c | 1 + drivers/staging/comedi/drivers/pcmmio.c | 1 + drivers/staging/comedi/drivers/pcmuio.c | 1 + drivers/staging/comedi/drivers/rtd520.c | 1 + drivers/staging/comedi/drivers/rti800.c | 1 + drivers/staging/comedi/drivers/s626.c | 1 + drivers/staging/comedi/kcomedilib/kcomedilib_main.c | 9 + drivers/staging/comedi/rt.c | 411 ---------- + drivers/staging/comedi/rt_pend_tq.c | 113 -- + drivers/staging/comedi/rt_pend_tq.h | 10 + 48 files changed, 38 insertions(+), 1495 deletions(-) + +--- a/drivers/staging/comedi/comedidev.h ++++ b/drivers/staging/comedi/comedidev.h +@@ -523,8 +523,6 @@ struct usb_device; /* forward declaratio + int comedi_usb_auto_config(struct usb_device *usbdev, const char *board_name); + void comedi_usb_auto_unconfig(struct usb_device *usbdev); + +-#include "comedi_rt.h" +- + #ifdef CONFIG_COMEDI_PCI_DRIVERS + #define CONFIG_COMEDI_PCI + #endif +--- a/drivers/staging/comedi/comedi_fops.c ++++ b/drivers/staging/comedi/comedi_fops.c +@@ -1079,13 +1079,6 @@ static int do_cmd_ioctl(struct comedi_de + + comedi_set_subdevice_runflags(s, ~0, SRF_USER | SRF_RUNNING); + +-#ifdef CONFIG_COMEDI_RT +- if (async->cmd.flags & TRIG_RT) { +- if (comedi_switch_to_rt(dev) == 0) +- comedi_set_subdevice_runflags(s, SRF_RT, SRF_RT); +- } +-#endif +- + ret = s->do_cmd(dev, s); + if (ret == 0) + return 0; +@@ -1720,12 +1713,6 @@ void do_become_nonbusy(struct comedi_dev + struct comedi_async *async = s->async; + + comedi_set_subdevice_runflags(s, SRF_RUNNING, 0); +-#ifdef CONFIG_COMEDI_RT +- if (comedi_get_subdevice_runflags(s) & SRF_RT) { +- comedi_switch_to_non_rt(dev); +- comedi_set_subdevice_runflags(s, SRF_RT, 0); +- } +-#endif + if (async) { + comedi_reset_async_buf(async); + async->inttrig = NULL; +@@ -1952,8 +1939,6 @@ static int __init comedi_init(void) + } + } + +- comedi_rt_init(); +- + comedi_register_ioctl32(); + + return 0; +@@ -1974,8 +1959,6 @@ static void __exit comedi_cleanup(void) + + comedi_proc_cleanup(); + +- comedi_rt_cleanup(); +- + comedi_unregister_ioctl32(); + } + +@@ -2015,15 +1998,8 @@ void comedi_event(struct comedi_device * + + if (async->cb_mask & s->async->events) { + if (comedi_get_subdevice_runflags(s) & SRF_USER) { +- + if (dev->rt) { +-#ifdef CONFIG_COMEDI_RT +- /* pend wake up */ +- comedi_rt_pend_wakeup(&async->wait_head); +-#else +- printk +- ("BUG: comedi_event() code unreachable\n"); +-#endif ++ printk("BUG: comedi_event() code unreachable\n"); + } else { + wake_up_interruptible(&async->wait_head); + if (s->subdev_flags & SDF_CMD_READ) { +--- a/drivers/staging/comedi/comedi_ksyms.c ++++ b/drivers/staging/comedi/comedi_ksyms.c +@@ -46,13 +46,6 @@ EXPORT_SYMBOL(range_bipolar2_5); + EXPORT_SYMBOL(range_unipolar10); + EXPORT_SYMBOL(range_unipolar5); + EXPORT_SYMBOL(range_unknown); +-#ifdef CONFIG_COMEDI_RT +-EXPORT_SYMBOL(comedi_free_irq); +-EXPORT_SYMBOL(comedi_request_irq); +-EXPORT_SYMBOL(comedi_switch_to_rt); +-EXPORT_SYMBOL(comedi_switch_to_non_rt); +-EXPORT_SYMBOL(rt_pend_call); +-#endif + #ifdef CONFIG_COMEDI_DEBUG + EXPORT_SYMBOL(comedi_debug); + #endif +--- a/drivers/staging/comedi/comedi_rt.h ++++ /dev/null +@@ -1,150 +0,0 @@ +-/* +- module/comedi_rt.h +- header file for real-time structures, variables, and constants +- +- COMEDI - Linux Control and Measurement Device Interface +- Copyright (C) 1997-2000 David A. Schleef <ds@schleef.org> +- +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2 of the License, or +- (at your option) any later version. +- +- This program is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. +- +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software +- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +- +-*/ +- +-#ifndef _COMEDI_RT_H +-#define _COMEDI_RT_H +- +-#ifndef _COMEDIDEV_H +-#error comedi_rt.h should only be included by comedidev.h +-#endif +- +-#include <linux/kdev_t.h> +-#include <linux/slab.h> +-#include <linux/errno.h> +-#include <linux/spinlock.h> +-#include <linux/delay.h> +-#include <linux/interrupt.h> +- +-#ifdef CONFIG_COMEDI_RT +- +-#ifdef CONFIG_COMEDI_RTAI +-#include <rtai.h> +-#include <rtai_sched.h> +-#include <rtai_version.h> +-#endif +-#ifdef CONFIG_COMEDI_RTL +-#include <rtl_core.h> +-#include <rtl_time.h> +-/* #ifdef RTLINUX_VERSION_CODE */ +-#include <rtl_sync.h> +-/* #endif */ +-#define rt_printk rtl_printf +-#endif +-#ifdef CONFIG_COMEDI_FUSION +-#define rt_printk(format, args...) printk(format , ## args) +-#endif /* CONFIG_COMEDI_FUSION */ +-#ifdef CONFIG_PRIORITY_IRQ +-#define rt_printk printk +-#endif +- +-int comedi_request_irq(unsigned int irq, irq_handler_t handler, +- unsigned long flags, const char *device, +- struct comedi_device *dev_id); +-void comedi_free_irq(unsigned int irq, struct comedi_device *dev_id); +-void comedi_rt_init(void); +-void comedi_rt_cleanup(void); +-int comedi_switch_to_rt(struct comedi_device *dev); +-void comedi_switch_to_non_rt(struct comedi_device *dev); +-void comedi_rt_pend_wakeup(wait_queue_head_t *q); +-extern int rt_pend_call(void (*func) (int arg1, void *arg2), int arg1, +- void *arg2); +- +-#else +- +-#define comedi_request_irq(a, b, c, d, e) request_irq(a, b, c, d, e) +-#define comedi_free_irq(a, b) free_irq(a, b) +-#define comedi_rt_init() do {} while (0) +-#define comedi_rt_cleanup() do {} while (0) +-#define comedi_switch_to_rt(a) (-1) +-#define comedi_switch_to_non_rt(a) do {} while (0) +-#define comedi_rt_pend_wakeup(a) do {} while (0) +- +-#define rt_printk(format, args...) printk(format, ##args) +- +-#endif +- +-/* Define a spin_lock_irqsave function that will work with rt or without. +- * Use inline functions instead of just macros to enforce some type checking. +- */ +-#define comedi_spin_lock_irqsave(lock_ptr, flags) \ +- (flags = __comedi_spin_lock_irqsave(lock_ptr)) +- +-static inline unsigned long __comedi_spin_lock_irqsave(spinlock_t *lock_ptr) +-{ +- unsigned long flags; +- +-#if defined(CONFIG_COMEDI_RTAI) +- flags = rt_spin_lock_irqsave(lock_ptr); +- +-#elif defined(CONFIG_COMEDI_RTL) +- rtl_spin_lock_irqsave(lock_ptr, flags); +- +-#elif defined(CONFIG_COMEDI_RTL_V1) +- rtl_spin_lock_irqsave(lock_ptr, flags); +- +-#elif defined(CONFIG_COMEDI_FUSION) +- rthal_spin_lock_irqsave(lock_ptr, flags); +-#else +- spin_lock_irqsave(lock_ptr, flags); +- +-#endif +- +- return flags; +-} +- +-static inline void comedi_spin_unlock_irqrestore(spinlock_t *lock_ptr, +- unsigned long flags) +-{ +- +-#if defined(CONFIG_COMEDI_RTAI) +- rt_spin_unlock_irqrestore(flags, lock_ptr); +- +-#elif defined(CONFIG_COMEDI_RTL) +- rtl_spin_unlock_irqrestore(lock_ptr, flags); +- +-#elif defined(CONFIG_COMEDI_RTL_V1) +- rtl_spin_unlock_irqrestore(lock_ptr, flags); +-#elif defined(CONFIG_COMEDI_FUSION) +- rthal_spin_unlock_irqrestore(lock_ptr, flags); +-#else +- spin_unlock_irqrestore(lock_ptr, flags); +- +-#endif +- +-} +- +-/* define a RT safe udelay */ +-static inline void comedi_udelay(unsigned int usec) +-{ +-#if defined(CONFIG_COMEDI_RTAI) +- static const int nanosec_per_usec = 1000; +- rt_busy_sleep(usec * nanosec_per_usec); +-#elif defined(CONFIG_COMEDI_RTL) +- static const int nanosec_per_usec = 1000; +- rtl_delay(usec * nanosec_per_usec); +-#else +- udelay(usec); +-#endif +-} +- +-#endif +--- a/drivers/staging/comedi/drivers/cb_das16_cs.c ++++ b/drivers/staging/comedi/drivers/cb_das16_cs.c +@@ -31,6 +31,7 @@ Status: experimental + + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + #include <linux/delay.h> + #include <linux/pci.h> +--- a/drivers/staging/comedi/drivers/cb_pcimdas.c ++++ b/drivers/staging/comedi/drivers/cb_pcimdas.c +@@ -43,6 +43,7 @@ See http://www.measurementcomputing.com/ + #include "../comedidev.h" + + #include <linux/delay.h> ++#include <linux/interrupt.h> + + #include "comedi_pci.h" + #include "plx9052.h" +--- a/drivers/staging/comedi/drivers/comedi_rt_timer.c ++++ /dev/null +@@ -1,756 +0,0 @@ +-/* +- comedi/drivers/comedi_rt_timer.c +- virtual driver for using RTL timing sources +- +- Authors: David A. Schleef, Frank M. Hess +- +- COMEDI - Linux Control and Measurement Device Interface +- Copyright (C) 1999,2001 David A. Schleef <ds@schleef.org> +- +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2 of the License, or +- (at your option) any later version. +- +- This program is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. +- +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software +- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +- +-************************************************************************** +-*/ +-/* +-Driver: comedi_rt_timer +-Description: Command emulator using real-time tasks +-Author: ds, fmhess +-Devices: +-Status: works +- +-This driver requires RTAI or RTLinux to work correctly. It doesn't +-actually drive hardware directly, but calls other drivers and uses +-a real-time task to emulate commands for drivers and devices that +-are incapable of native commands. Thus, you can get accurately +-timed I/O on any device. +- +-Since the timing is all done in software, sampling jitter is much +-higher than with a device that has an on-board timer, and maximum +-sample rate is much lower. +- +-Configuration options: +- [0] - minor number of device you wish to emulate commands for +- [1] - subdevice number you wish to emulate commands for +-*/ +-/* +-TODO: +- Support for digital io commands could be added, except I can't see why +- anyone would want to use them +- What happens if device we are emulating for is de-configured? +-*/ +- +-#include "../comedidev.h" +-#include "../comedilib.h" +- +-#include "comedi_fc.h" +- +-#ifdef CONFIG_COMEDI_RTL_V1 +-#include <rtl_sched.h> +-#include <asm/rt_irq.h> +-#endif +-#ifdef CONFIG_COMEDI_RTL +-#include <rtl.h> +-#include <rtl_sched.h> +-#include <rtl_compat.h> +-#include <asm/div64.h> +- +-#ifndef RTLINUX_VERSION_CODE +-#define RTLINUX_VERSION_CODE 0 +-#endif +-#ifndef RTLINUX_VERSION +-#define RTLINUX_VERSION(a, b, c) (((a) << 16) + ((b) << 8) + (c)) +-#endif +- +-/* begin hack to workaround broken HRT_TO_8254() function on rtlinux */ +-#if RTLINUX_VERSION_CODE <= RTLINUX_VERSION(3, 0, 100) +-/* this function sole purpose is to divide a long long by 838 */ +-static inline RTIME nano2count(long long ns) +-{ +- do_div(ns, 838); +- return ns; +-} +- +-#ifdef rt_get_time() +-#undef rt_get_time() +-#endif +-#define rt_get_time() nano2count(gethrtime()) +- +-#else +- +-#define nano2count(x) HRT_TO_8254(x) +-#endif +-/* end hack */ +- +-/* rtl-rtai compatibility */ +-#define rt_task_wait_period() rt_task_wait() +-#define rt_pend_linux_srq(irq) rtl_global_pend_irq(irq) +-#define rt_free_srq(irq) rtl_free_soft_irq(irq) +-#define rt_request_srq(x, y, z) rtl_get_soft_irq(y, "timer") +-#define rt_task_init(a, b, c, d, e, f, g) rt_task_init(a, b, c, d, (e)+1) +-#define rt_task_resume(x) rt_task_wakeup(x) +-#define rt_set_oneshot_mode() +-#define start_rt_timer(x) +-#define stop_rt_timer() +- +-#define comedi_rt_task_context_t int +- +-#endif +-#ifdef CONFIG_COMEDI_RTAI +-#include <rtai.h> +-#include <rtai_sched.h> +-#include <rtai_version.h> +- +-/* RTAI_VERSION_CODE doesn't work for rtai-3.6-cv and other strange versions. +- * These are characterized by CONFIG_RTAI_REVISION_LEVEL being defined as an +- * empty macro and CONFIG_RTAI_VERSION_MINOR being defined as something like +- * '6-cv' or '7-test1'. The problem has been noted by the RTAI folks and they +- * promise not to do it again. :-) Try and work around it here. */ +-#if !(CONFIG_RTAI_REVISION_LEVEL + 0) +-#undef CONFIG_RTAI_REVISION_LEVEL +-#define CONFIG_RTAI_REVISION_LEVEL 0 +-#define cv 0 +-#define test1 0 +-#define test2 0 +-#define test3 0 +-#endif +- +-#if RTAI_VERSION_CODE < RTAI_MANGLE_VERSION(3, 3, 0) +-#define comedi_rt_task_context_t int +-#else +-#define comedi_rt_task_context_t long +-#endif +- +-/* Finished checking RTAI_VERSION_CODE. */ +-#undef cv +-#undef test1 +-#undef test2 +-#undef test3 +- +-#endif +- +-/* This defines the fastest speed we will emulate. Note that +- * without a watchdog (like in RTAI), we could easily overrun our +- * task period because analog input tends to be slow. */ +-#define SPEED_LIMIT 100000 /* in nanoseconds */ +- +-static int timer_attach(struct comedi_device *dev, struct comedi_devconfig *it); +-static int timer_detach(struct comedi_device *dev); +-static int timer_inttrig(struct comedi_device *dev, struct comedi_subdevice *s, +- unsigned int trig_num); +-static int timer_start_cmd(struct comedi_device *dev, struct comedi_subdevice *s); +- +-static struct comedi_driver driver_timer = { +- .module = THIS_MODULE, +- .driver_name = "comedi_rt_timer", +- .attach = timer_attach, +- .detach = timer_detach, +-/* .open = timer_open, */ +-}; +- +-COMEDI_INITCLEANUP(driver_timer); +- +-struct timer_private { +- comedi_t *device; /* device we are emulating commands for */ +- int subd; /* subdevice we are emulating commands for */ +- RT_TASK *rt_task; /* rt task that starts scans */ +- RT_TASK *scan_task; /* rt task that controls conversion timing in a scan */ +- /* io_function can point to either an input or output function +- * depending on what kind of subdevice we are emulating for */ +- int (*io_function) (struct comedi_device *dev, struct comedi_cmd *cmd, +- unsigned int index); +-/* +-* RTIME has units of 1 = 838 nanoseconds time at which first scan +-* started, used to check scan timing +-*/ +- RTIME start; +- /* time between scans */ +- RTIME scan_period; +- /* time between conversions in a scan */ +- RTIME convert_period; +- /* flags */ +- volatile int stop; /* indicates we should stop */ +- volatile int rt_task_active; /* indicates rt_task is servicing a struct comedi_cmd */ +- volatile int scan_task_active; /* indicates scan_task is servicing a struct comedi_cmd */ +- unsigned timer_running:1; +-}; +-#define devpriv ((struct timer_private *)dev->private) +- +-static int timer_cancel(struct comedi_device *dev, struct comedi_subdevice *s) +-{ +- devpriv->stop = 1; +- +- return 0; +-} +- +-/* checks for scan timing error */ +-inline static int check_scan_timing(struct comedi_device *dev, +- unsigned long long scan) +-{ +- RTIME now, timing_error; +- +- now = rt_get_time(); +- timing_error = now - (devpriv->start + scan * devpriv->scan_period); +- if (timing_error > devpriv->scan_period) { +- comedi_error(dev, "timing error"); +- printk("scan started %i ns late\n", timing_error * 838); +- return -1; +- } +- +- return 0; +-} +- +-/* checks for conversion timing error */ +-inline static int check_conversion_timing(struct comedi_device *dev, +- RTIME scan_start, unsigned int conversion) +-{ +- RTIME now, timing_error; +- +- now = rt_get_time(); +- timing_error = +- now - (scan_start + conversion * devpriv->convert_period); +- if (timing_error > devpriv->convert_period) { +- comedi_error(dev, "timing error"); +- printk("conversion started %i ns late\n", +- timing_error * 838); +- return -1; +- } +- +- return 0; +-} +- +-/* devpriv->io_function for an input subdevice */ +-static int timer_data_read(struct comedi_device *dev, struct comedi_cmd *cmd, +- unsigned int index) +-{ +- struct comedi_subdevice *s = dev->read_subdev; +- int ret; +- unsigned int data; +- +- ret = comedi_data_read(devpriv->device, devpriv->subd, +- CR_CHAN(cmd->chanlist[index]), +- CR_RANGE(cmd->chanlist[index]), +- CR_AREF(cmd->chanlist[index]), &data); +- if (ret < 0) { +- comedi_error(dev, "read error"); +- return -EIO; +- } +- if (s->flags & SDF_LSAMPL) { +- cfc_write_long_to_buffer(s, data); +- } else { +- comedi_buf_put(s->async, data); +- } +- +- return 0; +-} +- +-/* devpriv->io_function for an output subdevice */ +-static int timer_data_write(struct comedi_device *dev, struct comedi_cmd *cmd, +- unsigned int index) +-{ +- struct comedi_subdevice *s = dev->write_subdev; +- unsigned int num_bytes; +- short data; +- unsigned int long_data; +- int ret; +- +- if (s->flags & SDF_LSAMPL) { +- num_bytes = +- cfc_read_array_from_buffer(s, &long_data, +- sizeof(long_data)); +- } else { +- num_bytes = cfc_read_array_from_buffer(s, &data, sizeof(data)); +- long_data = data; +- } +- +- if (num_bytes == 0) { +- comedi_error(dev, "buffer underrun"); +- return -EAGAIN; +- } +- ret = comedi_data_write(devpriv->device, devpriv->subd, +- CR_CHAN(cmd->chanlist[index]), +- CR_RANGE(cmd->chanlist[index]), +- CR_AREF(cmd->chanlist[index]), long_data); +- if (ret < 0) { +- comedi_error(dev, "write error"); +- return -EIO; +- } +- +- return 0; +-} +- +-/* devpriv->io_function for DIO subdevices */ +-static int timer_dio_read(struct comedi_device *dev, struct comedi_cmd *cmd, +- unsigned int index) +-{ +- struct comedi_subdevice *s = dev->read_subdev; +- int ret; +- unsigned int data; +- +- ret = comedi_dio_bitfield(devpriv->device, devpriv->subd, 0, &data); +- if (ret < 0) { +- comedi_error(dev, "read error"); +- return -EIO; +- } +- +- if (s->flags & SDF_LSAMPL) +- cfc_write_long_to_buffer(s, data); +- else +- cfc_write_to_buffer(s, data); +- +- return 0; +-} +- +-/* performs scans */ +-static void scan_task_func(comedi_rt_task_context_t d) +-{ +- struct comedi_device *dev = (struct comedi_device *) d; +- struct comedi_subdevice *s = dev->subdevices + 0; +- struct comedi_async *async = s->async; +- struct comedi_cmd *cmd = &async->cmd; +- int i, ret; +- unsigned long long n; +- RTIME scan_start; +- +- /* every struct comedi_cmd causes one execution of while loop */ +- while (1) { +- devpriv->scan_task_active = 1; +- /* each for loop completes one scan */ +- for (n = 0; n < cmd->stop_arg || cmd->stop_src == TRIG_NONE; +- n++) { +- if (n) { +- /* suspend task until next scan */ +- ret = rt_task_suspend(devpriv->scan_task); +- if (ret < 0) { +- comedi_error(dev, +- "error suspending scan task"); +- async->events |= COMEDI_CB_ERROR; +- goto cleanup; +- } +- } +- /* check if stop flag was set (by timer_cancel()) */ +- if (devpriv->stop) +- goto cleanup; +- ret = check_scan_timing(dev, n); +- if (ret < 0) { +- async->events |= COMEDI_CB_ERROR; +- goto cleanup; +- } +- scan_start = rt_get_time(); +- for (i = 0; i < cmd->scan_end_arg; i++) { +- /* conversion timing */ +- if (cmd->convert_src == TRIG_TIMER && i) { +- rt_task_wait_period(); +- ret = check_conversion_timing(dev, +- scan_start, i); +- if (ret < 0) { +- async->events |= +- COMEDI_CB_ERROR; +- goto cleanup; +- } +- } +- ret = devpriv->io_function(dev, cmd, i); +- if (ret < 0) { +- async->events |= COMEDI_CB_ERROR; +- goto cleanup; +- } +- } +- s->async->events |= COMEDI_CB_BLOCK; +- comedi_event(dev, s); +- s->async->events = 0; +- } +- +- cleanup: +- +- comedi_unlock(devpriv->device, devpriv->subd); +- async->events |= COMEDI_CB_EOA; +- comedi_event(dev, s); +- async->events = 0; +- devpriv->scan_task_active = 0; +- /* suspend task until next struct comedi_cmd */ +- rt_task_suspend(devpriv->scan_task); +- } +-} +- +-static void timer_task_func(comedi_rt_task_context_t d) +-{ +- struct comedi_device *dev = (struct comedi_device *) d; +- struct comedi_subdevice *s = dev->subdevices + 0; +- struct comedi_cmd *cmd = &s->async->cmd; +- int ret; +- unsigned long long n; +- +- /* every struct comedi_cmd causes one execution of while loop */ +- while (1) { +- devpriv->rt_task_active = 1; +- devpriv->scan_task_active = 1; +- devpriv->start = rt_get_time(); +- +- for (n = 0; n < cmd->stop_arg || cmd->stop_src == TRIG_NONE; +- n++) { +- /* scan timing */ +- if (n) +- rt_task_wait_period(); +- if (devpriv->scan_task_active == 0) { +- goto cleanup; +- } +- ret = rt_task_make_periodic(devpriv->scan_task, +- devpriv->start + devpriv->scan_period * n, +- devpriv->convert_period); +- if (ret < 0) { +- comedi_error(dev, "bug!"); +- } +- } +- +- cleanup: +- +- devpriv->rt_task_active = 0; +- /* suspend until next struct comedi_cmd */ +- rt_task_suspend(devpriv->rt_task); +- } +-} +- +-static int timer_insn(struct comedi_device *dev, struct comedi_subdevice *s, +- struct comedi_insn *insn, unsigned int *data) +-{ +- struct comedi_insn xinsn = *insn; +- +- xinsn.data = data; +- xinsn.subdev = devpriv->subd; +- +- return comedi_do_insn(devpriv->device, &xinsn); +-} +- +-static int cmdtest_helper(struct comedi_cmd *cmd, +- unsigned int start_src, +- unsigned int scan_begin_src, +- unsigned int convert_src, +- unsigned int scan_end_src, unsigned int stop_src) +-{ +- int err = 0; +- int tmp; +- +- tmp = cmd->start_src; +- cmd->start_src &= start_src; +- if (!cmd->start_src || tmp != cmd->start_src) +- err++; +- +- tmp = cmd->scan_begin_src; +- cmd->scan_begin_src &= scan_begin_src; +- if (!cmd->scan_begin_src || tmp != cmd->scan_begin_src) +- err++; +- +- tmp = cmd->convert_src; +- cmd->convert_src &= convert_src; +- if (!cmd->convert_src || tmp != cmd->convert_src) +- err++; +- +- tmp = cmd->scan_end_src; +- cmd->scan_end_src &= scan_end_src; +- if (!cmd->scan_end_src || tmp != cmd->scan_end_src) +- err++; +- +- tmp = cmd->stop_src; +- cmd->stop_src &= stop_src; +- if (!cmd->stop_src || tmp != cmd->stop_src) +- err++; +- +- return err; +-} +- +-static int timer_cmdtest(struct comedi_device *dev, struct comedi_subdevice *s, +- struct comedi_cmd *cmd) +-{ +- int err = 0; +- unsigned int start_src = 0; +- +- if (s->type == COMEDI_SUBD_AO) +- start_src = TRIG_INT; +- else +- start_src = TRIG_NOW; +- +- err = cmdtest_helper(cmd, start_src, /* start_src */ +- TRIG_TIMER | TRIG_FOLLOW, /* scan_begin_src */ +- TRIG_NOW | TRIG_TIMER, /* convert_src */ +- TRIG_COUNT, /* scan_end_src */ +- TRIG_COUNT | TRIG_NONE); /* stop_src */ +- if (err) +- return 1; +- +- /* step 2: make sure trigger sources are unique and mutually +- * compatible */ +- +- if (cmd->start_src != TRIG_NOW && cmd->start_src != TRIG_INT) +- err++; +- if (cmd->scan_begin_src != TRIG_TIMER && +- cmd->scan_begin_src != TRIG_FOLLOW) +- err++; +- if (cmd->convert_src != TRIG_TIMER && cmd->convert_src != TRIG_NOW) +- err++; +- if (cmd->stop_src != TRIG_COUNT && cmd->stop_src != TRIG_NONE) +- err++; +- if (cmd->scan_begin_src == TRIG_FOLLOW +- && cmd->convert_src != TRIG_TIMER) +- err++; +- if (cmd->convert_src == TRIG_NOW && cmd->scan_begin_src != TRIG_TIMER) +- err++; +- +- if (err) +- return 2; +- +- /* step 3: make sure arguments are trivially compatible */ +- /* limit frequency, this is fairly arbitrary */ +- if (cmd->scan_begin_src == TRIG_TIMER) { +- if (cmd->scan_begin_arg < SPEED_LIMIT) { +- cmd->scan_begin_arg = SPEED_LIMIT; +- err++; +- } +- } +- if (cmd->convert_src == TRIG_TIMER) { +- if (cmd->convert_arg < SPEED_LIMIT) { +- cmd->convert_arg = SPEED_LIMIT; +- err++; +- } +- } +- /* make sure conversion and scan frequencies are compatible */ +- if (cmd->convert_src == TRIG_TIMER && cmd->scan_begin_src == TRIG_TIMER) { +- if (cmd->convert_arg * cmd->scan_end_arg > cmd->scan_begin_arg) { +- cmd->scan_begin_arg = +- cmd->convert_arg * cmd->scan_end_arg; +- err++; +- } +- } +- if (err) +- return 3; +- +- /* step 4: fix up and arguments */ +- if (err) +- return 4; +- +- return 0; +-} +- +-static int timer_cmd(struct comedi_device *dev, struct comedi_subdevice *s) +-{ +- int ret; +- struct comedi_cmd *cmd = &s->async->cmd; +- +- /* hack attack: drivers are not supposed to do this: */ +- dev->rt = 1; +- +- /* make sure tasks have finished cleanup of last struct comedi_cmd */ +- if (devpriv->rt_task_active || devpriv->scan_task_active) +- return -EBUSY; +- +- ret = comedi_lock(devpriv->device, devpriv->subd); +- if (ret < 0) { +- comedi_error(dev, "failed to obtain lock"); +- return ret; +- } +- switch (cmd->scan_begin_src) { +- case TRIG_TIMER: +- devpriv->scan_period = nano2count(cmd->scan_begin_arg); +- break; +- case TRIG_FOLLOW: +- devpriv->scan_period = +- nano2count(cmd->convert_arg * cmd->scan_end_arg); +- break; +- default: +- comedi_error(dev, "bug setting scan period!"); +- return -1; +- break; +- } +- switch (cmd->convert_src) { +- case TRIG_TIMER: +- devpriv->convert_period = nano2count(cmd->convert_arg); +- break; +- case TRIG_NOW: +- devpriv->convert_period = 1; +- break; +- default: +- comedi_error(dev, "bug setting conversion period!"); +- return -1; +- break; +- } +- +- if (cmd->start_src == TRIG_NOW) +- return timer_start_cmd(dev, s); +- +- s->async->inttrig = timer_inttrig; +- +- return 0; +-} +- +-static int timer_inttrig(struct comedi_device *dev, struct comedi_subdevice *s, +- unsigned int trig_num) +-{ +- if (trig_num != 0) +- return -EINVAL; +- +- s->async->inttrig = NULL; +- +- return timer_start_cmd(dev, s); +-} +- +-static int timer_start_cmd(struct comedi_device *dev, struct comedi_subdevice *s) +-{ +- struct comedi_async *async = s->async; +- struct comedi_cmd *cmd = &async->cmd; +- RTIME now, delay, period; +- int ret; +- +- devpriv->stop = 0; +- s->async->events = 0; +- +- if (cmd->start_src == TRIG_NOW) +- delay = nano2count(cmd->start_arg); +- else +- delay = 0; +- +- now = rt_get_time(); +- /* Using 'period' this way gets around some weird bug in gcc-2.95.2 +- * that generates the compile error 'internal error--unrecognizable insn' +- * when rt_task_make_period() is called (observed with rtlinux-3.1, linux-2.2.19). +- * - fmhess */ +- period = devpriv->scan_period; +- ret = rt_task_make_periodic(devpriv->rt_task, now + delay, period); +- if (ret < 0) { +- comedi_error(dev, "error starting rt_task"); +- return ret; +- } +- return 0; +-} +- +-static int timer_attach(struct comedi_device *dev, struct comedi_devconfig *it) +-{ +- int ret; +- struct comedi_subdevice *s, *emul_s; +- struct comedi_device *emul_dev; +- /* These should probably be devconfig options[] */ +- const int timer_priority = 4; +- const int scan_priority = timer_priority + 1; +- char path[20]; +- +- printk("comedi%d: timer: ", dev->minor); +- +- dev->board_name = "timer"; +- +- ret = alloc_subdevices(dev, 1); +- if (ret < 0) +- return ret; +- +- ret = alloc_private(dev, sizeof(struct timer_private)); +- if (ret < 0) +- return ret; +- +- sprintf(path, "/dev/comedi%d", it->options[0]); +- devpriv->device = comedi_open(path); +- devpriv->subd = it->options[1]; +- +- printk("emulating commands for minor %i, subdevice %d\n", +- it->options[0], devpriv->subd); +- +- emul_dev = devpriv->device; +- emul_s = emul_dev->subdevices + devpriv->subd; +- +- /* input or output subdevice */ +- s = dev->subdevices + 0; +- s->type = emul_s->type; +- s->subdev_flags = emul_s->subdev_flags; /* SDF_GROUND (to fool check_driver) */ +- s->n_chan = emul_s->n_chan; +- s->len_chanlist = 1024; +- s->do_cmd = timer_cmd; +- s->do_cmdtest = timer_cmdtest; +- s->cancel = timer_cancel; +- s->maxdata = emul_s->maxdata; +- s->range_table = emul_s->range_table; +- s->range_table_list = emul_s->range_table_list; +- switch (emul_s->type) { +- case COMEDI_SUBD_AI: +- s->insn_read = timer_insn; +- dev->read_subdev = s; +- s->subdev_flags |= SDF_CMD_READ; +- devpriv->io_function = timer_data_read; +- break; +- case COMEDI_SUBD_AO: +- s->insn_write = timer_insn; +- s->insn_read = timer_insn; +- dev->write_subdev = s; +- s->subdev_flags |= SDF_CMD_WRITE; +- devpriv->io_function = timer_data_write; +- break; +- case COMEDI_SUBD_DIO: +- s->insn_write = timer_insn; +- s->insn_read = timer_insn; +- s->insn_bits = timer_insn; +- dev->read_subdev = s; +- s->subdev_flags |= SDF_CMD_READ; +- devpriv->io_function = timer_dio_read; +- break; +- default: +- comedi_error(dev, "failed to determine subdevice type!"); +- return -EINVAL; +- } +- +- rt_set_oneshot_mode(); +- start_rt_timer(1); +- devpriv->timer_running = 1; +- +- devpriv->rt_task = kzalloc(sizeof(RT_TASK), GFP_KERNEL); +- +- /* initialize real-time tasks */ +- ret = rt_task_init(devpriv->rt_task, timer_task_func, +- (comedi_rt_task_context_t) dev, 3000, timer_priority, 0, 0); +- if (ret < 0) { +- comedi_error(dev, "error initalizing rt_task"); +- kfree(devpriv->rt_task); +- devpriv->rt_task = 0; +- return ret; +- } +- +- devpriv->scan_task = kzalloc(sizeof(RT_TASK), GFP_KERNEL); +- +- ret = rt_task_init(devpriv->scan_task, scan_task_func, +- (comedi_rt_task_context_t) dev, 3000, scan_priority, 0, 0); +- if (ret < 0) { +- comedi_error(dev, "error initalizing scan_task"); +- kfree(devpriv->scan_task); +- devpriv->scan_task = 0; +- return ret; +- } +- +- return 1; +-} +- +-/* free allocated resources */ +-static int timer_detach(struct comedi_device *dev) +-{ +- printk("comedi%d: timer: remove\n", dev->minor); +- +- if (devpriv) { +- if (devpriv->rt_task) { +- rt_task_delete(devpriv->rt_task); +- kfree(devpriv->rt_task); +- } +- if (devpriv->scan_task) { +- rt_task_delete(devpriv->scan_task); +- kfree(devpriv->scan_task); +- } +- if (devpriv->timer_running) +- stop_rt_timer(); +- if (devpriv->device) +- comedi_close(devpriv->device); +- } +- return 0; +-} +--- a/drivers/staging/comedi/drivers/daqboard2000.c ++++ b/drivers/staging/comedi/drivers/daqboard2000.c +@@ -119,6 +119,7 @@ Configuration options: + #include "../comedidev.h" + + #include <linux/delay.h> ++#include <linux/interrupt.h> + + #include "comedi_pci.h" + #include "8255.h" +--- a/drivers/staging/comedi/drivers/das16.c ++++ b/drivers/staging/comedi/drivers/das16.c +@@ -79,6 +79,7 @@ Computer boards manuals also available f + */ + + #include <linux/pci.h> ++#include <linux/interrupt.h> + #include <asm/dma.h> + #include "../comedidev.h" + +--- a/drivers/staging/comedi/drivers/das16m1.c ++++ b/drivers/staging/comedi/drivers/das16m1.c +@@ -59,6 +59,7 @@ irq can be omitted, although the cmd int + */ + + #include <linux/ioport.h> ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include "8255.h" +--- a/drivers/staging/comedi/drivers/das1800.c ++++ b/drivers/staging/comedi/drivers/das1800.c +@@ -100,6 +100,7 @@ TODO: + read insn for analog out + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/ioport.h> +--- a/drivers/staging/comedi/drivers/das6402.c ++++ b/drivers/staging/comedi/drivers/das6402.c +@@ -38,6 +38,7 @@ Devices: [Keithley Metrabyte] DAS6402 (d + This driver has suffered bitrot. + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/ioport.h> +--- a/drivers/staging/comedi/drivers/das800.c ++++ b/drivers/staging/comedi/drivers/das800.c +@@ -62,6 +62,7 @@ cmd triggers supported: + + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/ioport.h> +--- a/drivers/staging/comedi/drivers/dmm32at.c ++++ b/drivers/staging/comedi/drivers/dmm32at.c +@@ -74,6 +74,7 @@ Configuration Options: + * options that are used with comedi_config. + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + #include <linux/ioport.h> + +--- a/drivers/staging/comedi/drivers/dt2811.c ++++ b/drivers/staging/comedi/drivers/dt2811.c +@@ -45,6 +45,7 @@ Configuration options: + [4] - D/A 1 range (same choices) + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/ioport.h> +--- a/drivers/staging/comedi/drivers/dt2814.c ++++ b/drivers/staging/comedi/drivers/dt2814.c +@@ -39,6 +39,7 @@ a power of 10, from 1 to 10^7, of which + addition, the clock does not seem to be very accurate. + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/ioport.h> +--- a/drivers/staging/comedi/drivers/dt3000.c ++++ b/drivers/staging/comedi/drivers/dt3000.c +@@ -59,6 +59,7 @@ AO commands are not supported. + + #define DEBUG 1 + ++#include <linux/interrupt.h> + #include "../comedidev.h" + #include <linux/delay.h> + +--- a/drivers/staging/comedi/drivers/gsc_hpdi.c ++++ b/drivers/staging/comedi/drivers/gsc_hpdi.c +@@ -45,6 +45,7 @@ support could be added to this driver. + + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + #include <linux/delay.h> + +--- a/drivers/staging/comedi/drivers/icp_multi.c ++++ b/drivers/staging/comedi/drivers/icp_multi.c +@@ -50,6 +50,7 @@ Options: + [1] - PCI slot number + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/delay.h> +--- a/drivers/staging/comedi/drivers/me4000.c ++++ b/drivers/staging/comedi/drivers/me4000.c +@@ -51,6 +51,7 @@ broken. + + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/delay.h> +--- a/drivers/staging/comedi/drivers/me_daq.c ++++ b/drivers/staging/comedi/drivers/me_daq.c +@@ -50,6 +50,7 @@ from http://www.comedi.org + + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include "comedi_pci.h" +--- a/drivers/staging/comedi/drivers/multiq3.c ++++ b/drivers/staging/comedi/drivers/multiq3.c +@@ -29,6 +29,7 @@ Devices: [Quanser Consulting] MultiQ-3 ( + + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/ioport.h> +--- a/drivers/staging/comedi/drivers/ni_6527.c ++++ b/drivers/staging/comedi/drivers/ni_6527.c +@@ -41,6 +41,7 @@ Updated: Sat, 25 Jan 2003 13:24:40 -0800 + #define DEBUG 1 + #define DEBUG_FLAGS + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include "mite.h" +--- a/drivers/staging/comedi/drivers/ni_65xx.c ++++ b/drivers/staging/comedi/drivers/ni_65xx.c +@@ -50,6 +50,7 @@ except maybe the 6514. + #define _GNU_SOURCE + #define DEBUG 1 + #define DEBUG_FLAGS ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include "mite.h" +--- a/drivers/staging/comedi/drivers/ni_660x.c ++++ b/drivers/staging/comedi/drivers/ni_660x.c +@@ -40,6 +40,7 @@ DAQ 6601/6602 User Manual (NI 322137B-01 + + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + #include "mite.h" + #include "ni_tio.h" +--- a/drivers/staging/comedi/drivers/ni_670x.c ++++ b/drivers/staging/comedi/drivers/ni_670x.c +@@ -41,6 +41,7 @@ Commands are not supported. + + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include "mite.h" +--- a/drivers/staging/comedi/drivers/ni_at_a2150.c ++++ b/drivers/staging/comedi/drivers/ni_at_a2150.c +@@ -64,6 +64,7 @@ TRIG_WAKE_EOS + + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/ioport.h> +--- a/drivers/staging/comedi/drivers/ni_atmio16d.c ++++ b/drivers/staging/comedi/drivers/ni_atmio16d.c +@@ -35,6 +35,7 @@ Devices: [National Instruments] AT-MIO-1 + * + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/ioport.h> +--- a/drivers/staging/comedi/drivers/ni_atmio.c ++++ b/drivers/staging/comedi/drivers/ni_atmio.c +@@ -93,6 +93,7 @@ are not supported. + + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/delay.h> +--- a/drivers/staging/comedi/drivers/ni_daq_700.c ++++ b/drivers/staging/comedi/drivers/ni_daq_700.c +@@ -41,6 +41,7 @@ emu as port A output, port B input, port + IRQ is assigned but not used. + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/ioport.h> +--- a/drivers/staging/comedi/drivers/ni_daq_dio24.c ++++ b/drivers/staging/comedi/drivers/ni_daq_dio24.c +@@ -40,6 +40,7 @@ the PCMCIA interface. + /* #define LABPC_DEBUG */ /* enable debugging messages */ + #undef LABPC_DEBUG + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/ioport.h> +--- a/drivers/staging/comedi/drivers/ni_labpc.c ++++ b/drivers/staging/comedi/drivers/ni_labpc.c +@@ -76,6 +76,7 @@ NI manuals: + #undef LABPC_DEBUG + /* #define LABPC_DEBUG enable debugging messages */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/delay.h> +--- a/drivers/staging/comedi/drivers/ni_mio_common.c ++++ b/drivers/staging/comedi/drivers/ni_mio_common.c +@@ -61,6 +61,7 @@ + /* #define DEBUG_STATUS_A */ + /* #define DEBUG_STATUS_B */ + ++#include <linux/interrupt.h> + #include "8255.h" + #include "mite.h" + #include "comedi_fc.h" +--- a/drivers/staging/comedi/drivers/ni_pcidio.c ++++ b/drivers/staging/comedi/drivers/ni_pcidio.c +@@ -69,6 +69,7 @@ comedi_nonfree_firmware tarball availabl + /* #define DEBUG 1 */ + /* #define DEBUG_FLAGS */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include "mite.h" +--- a/drivers/staging/comedi/drivers/pcl711.c ++++ b/drivers/staging/comedi/drivers/pcl711.c +@@ -58,6 +58,7 @@ supported. + + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/ioport.h> +--- a/drivers/staging/comedi/drivers/pcl812.c ++++ b/drivers/staging/comedi/drivers/pcl812.c +@@ -107,6 +107,7 @@ Options for ACL-8113, ISO-813: + 3= 20V unipolar inputs + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/delay.h> +--- a/drivers/staging/comedi/drivers/pcmad.c ++++ b/drivers/staging/comedi/drivers/pcmad.c +@@ -41,6 +41,7 @@ Configuration options: + 1 = two's complement + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/ioport.h> +--- a/drivers/staging/comedi/drivers/pcmmio.c ++++ b/drivers/staging/comedi/drivers/pcmmio.c +@@ -73,6 +73,7 @@ Configuration Options: + [1] - IRQ (optional -- for edge-detect interrupt support only, leave out if you don't need this feature) + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + #include <linux/pci.h> /* for PCI devices */ + +--- a/drivers/staging/comedi/drivers/pcmuio.c ++++ b/drivers/staging/comedi/drivers/pcmuio.c +@@ -75,6 +75,7 @@ Configuration Options: + [2] - IRQ for second ASIC (pcmuio96 only - IRQ for chans 48-72 .. can be the same as first irq!) + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/pci.h> /* for PCI devices */ +--- a/drivers/staging/comedi/drivers/rtd520.c ++++ b/drivers/staging/comedi/drivers/rtd520.c +@@ -101,6 +101,7 @@ Configuration options: + + */ + ++#include <linux/interrupt.h> + #include <linux/delay.h> + + #include "../comedidev.h" +--- a/drivers/staging/comedi/drivers/rti800.c ++++ b/drivers/staging/comedi/drivers/rti800.c +@@ -52,6 +52,7 @@ Configuration options: + [8] - DAC 1 encoding (same as DAC 0) + */ + ++#include <linux/interrupt.h> + #include "../comedidev.h" + + #include <linux/ioport.h> +--- a/drivers/staging/comedi/drivers/s626.c ++++ b/drivers/staging/comedi/drivers/s626.c +@@ -68,6 +68,7 @@ INSN_CONFIG instructions: + comedi_do_insn(cf,&insn); //executing configuration + */ + ++#include <linux/interrupt.h> + #include <linux/kernel.h> + #include <linux/types.h> + +--- a/drivers/staging/comedi/kcomedilib/kcomedilib_main.c ++++ b/drivers/staging/comedi/kcomedilib/kcomedilib_main.c +@@ -150,10 +150,6 @@ int comedi_command(void *d, struct comed + + runflags = SRF_RUNNING; + +-#ifdef CONFIG_COMEDI_RT +- if (comedi_switch_to_rt(dev) == 0) +- runflags |= SRF_RT; +-#endif + comedi_set_subdevice_runflags(s, ~0, runflags); + + comedi_reset_async_buf(async); +@@ -449,11 +445,6 @@ int comedi_cancel(void *d, unsigned int + if (ret) + return ret; + +-#ifdef CONFIG_COMEDI_RT +- if (comedi_get_subdevice_runflags(s) & SRF_RT) +- comedi_switch_to_non_rt(dev); +- +-#endif + comedi_set_subdevice_runflags(s, SRF_RUNNING | SRF_RT, 0); + s->async->inttrig = NULL; + s->busy = NULL; +--- a/drivers/staging/comedi/Kconfig ++++ b/drivers/staging/comedi/Kconfig +@@ -13,13 +13,6 @@ config COMEDI_DEBUG + This is an option for use by developers; most people should + say N here. This enables comedi core and driver debugging. + +-config COMEDI_RT +- tristate "Comedi Real-time support" +- depends on COMEDI && RT +- default N +- ---help--- +- Enable Real time support for the Comedi core. +- + config COMEDI_PCI_DRIVERS + tristate "Comedi PCI drivers" + depends on COMEDI && PCI +--- a/drivers/staging/comedi/Makefile ++++ b/drivers/staging/comedi/Makefile +@@ -1,5 +1,4 @@ + obj-$(CONFIG_COMEDI) += comedi.o +-obj-$(CONFIG_COMEDI_RT) += comedi_rt.o + + obj-$(CONFIG_COMEDI) += kcomedilib/ + obj-$(CONFIG_COMEDI) += drivers/ +@@ -11,7 +10,3 @@ comedi-objs := \ + drivers.o \ + comedi_compat32.o \ + comedi_ksyms.o \ +- +-comedi_rt-objs := \ +- rt_pend_tq.o \ +- rt.o +--- a/drivers/staging/comedi/rt.c ++++ /dev/null +@@ -1,411 +0,0 @@ +-/* +- comedi/rt.c +- comedi kernel module +- +- COMEDI - Linux Control and Measurement Device Interface +- Copyright (C) 1997-2000 David A. Schleef <ds@schleef.org> +- +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2 of the License, or +- (at your option) any later version. +- +- This program is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. +- +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software +- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +- +-*/ +- +-#undef DEBUG +- +-#define __NO_VERSION__ +-#include <linux/comedidev.h> +- +-#include <linux/errno.h> +-#include <linux/interrupt.h> +-#include <linux/kernel.h> +-#include <linux/sched.h> +-#include <linux/fcntl.h> +-#include <linux/delay.h> +-#include <linux/ioport.h> +-#include <linux/mm.h> +-#include <linux/slab.h> +-#include <asm/io.h> +- +-#include "rt_pend_tq.h" +- +-#ifdef CONFIG_COMEDI_RTAI +-#include <rtai.h> +-#endif +- +-#ifdef CONFIG_COMEDI_FUSION +-#include <nucleus/asm/hal.h> +-#endif +- +-#ifdef CONFIG_COMEDI_RTL +-#include <rtl_core.h> +-#include <rtl_sync.h> +-#endif +- +-struct comedi_irq_struct { +- int rt; +- int irq; +- irq_handler_t handler; +- unsigned long flags; +- const char *device; +- struct comedi_device *dev_id; +-}; +- +-static int comedi_rt_get_irq(struct comedi_irq_struct *it); +-static int comedi_rt_release_irq(struct comedi_irq_struct *it); +- +-static struct comedi_irq_struct *comedi_irqs[NR_IRQS]; +- +-int comedi_request_irq(unsigned irq, irq_handler_t handler, unsigned long flags, +- const char *device, struct comedi_device *dev_id) +-{ +- struct comedi_irq_struct *it; +- int ret; +- /* null shared interrupt flag, since rt interrupt handlers do not +- * support it, and this version of comedi_request_irq() is only +- * called for kernels with rt support */ +- unsigned long unshared_flags = flags & ~IRQF_SHARED; +- +- ret = request_irq(irq, handler, unshared_flags, device, dev_id); +- if (ret < 0) { +- /* we failed, so fall back on allowing shared interrupt (which we won't ever make RT) */ +- if (flags & IRQF_SHARED) { +- rt_printk +- ("comedi: cannot get unshared interrupt, will not use RT interrupts.\n"); +- ret = request_irq(irq, handler, flags, device, dev_id); +- } +- if (ret < 0) +- return ret; +- +- } else { +- it = kzalloc(sizeof(struct comedi_irq_struct), GFP_KERNEL); +- if (!it) +- return -ENOMEM; +- +- it->handler = handler; +- it->irq = irq; +- it->dev_id = dev_id; +- it->device = device; +- it->flags = unshared_flags; +- comedi_irqs[irq] = it; +- } +- return 0; +-} +- +-void comedi_free_irq(unsigned int irq, struct comedi_device *dev_id) +-{ +- struct comedi_irq_struct *it; +- +- free_irq(irq, dev_id); +- +- it = comedi_irqs[irq]; +- if (it == NULL) +- return; +- +- if (it->rt) { +- printk("real-time IRQ allocated at board removal (ignore)\n"); +- comedi_rt_release_irq(it); +- } +- +- kfree(it); +- comedi_irqs[irq] = NULL; +-} +- +-int comedi_switch_to_rt(struct comedi_device *dev) +-{ +- struct comedi_irq_struct *it; +- unsigned long flags; +- +- it = comedi_irqs[dev->irq]; +- /* drivers might not be using an interrupt for commands, +- or we might not have been able to get an unshared irq */ +- if (it == NULL) +- return -1; +- +- comedi_spin_lock_irqsave(&dev->spinlock, flags); +- +- if (!dev->rt) +- comedi_rt_get_irq(it); +- +- dev->rt++; +- it->rt = 1; +- +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); +- +- return 0; +-} +- +-void comedi_switch_to_non_rt(struct comedi_device *dev) +-{ +- struct comedi_irq_struct *it; +- unsigned long flags; +- +- it = comedi_irqs[dev->irq]; +- if (it == NULL) +- return; +- +- comedi_spin_lock_irqsave(&dev->spinlock, flags); +- +- dev->rt--; +- if (!dev->rt) +- comedi_rt_release_irq(it); +- +- it->rt = 0; +- +- comedi_spin_unlock_irqrestore(&dev->spinlock, flags); +-} +- +-void wake_up_int_handler(int arg1, void *arg2) +-{ +- wake_up_interruptible((wait_queue_head_t *) arg2); +-} +- +-void comedi_rt_pend_wakeup(wait_queue_head_t *q) +-{ +- rt_pend_call(wake_up_int_handler, 0, q); +-} +- +-/* RTAI section */ +-#ifdef CONFIG_COMEDI_RTAI +- +-#ifndef HAVE_RT_REQUEST_IRQ_WITH_ARG +-#define DECLARE_VOID_IRQ(irq) \ +-static void handle_void_irq_ ## irq (void){ handle_void_irq(irq); } +- +-static void handle_void_irq(int irq) +-{ +- struct comedi_irq_struct *it; +- +- it = comedi_irqs[irq]; +- if (it == NULL) { +- rt_printk("comedi: null irq struct?\n"); +- return; +- } +- it->handler(irq, it->dev_id); +- rt_enable_irq(irq); /* needed by rtai-adeos, seems like it shouldn't hurt earlier versions */ +-} +- +-DECLARE_VOID_IRQ(0); +-DECLARE_VOID_IRQ(1); +-DECLARE_VOID_IRQ(2); +-DECLARE_VOID_IRQ(3); +-DECLARE_VOID_IRQ(4); +-DECLARE_VOID_IRQ(5); +-DECLARE_VOID_IRQ(6); +-DECLARE_VOID_IRQ(7); +-DECLARE_VOID_IRQ(8); +-DECLARE_VOID_IRQ(9); +-DECLARE_VOID_IRQ(10); +-DECLARE_VOID_IRQ(11); +-DECLARE_VOID_IRQ(12); +-DECLARE_VOID_IRQ(13); +-DECLARE_VOID_IRQ(14); +-DECLARE_VOID_IRQ(15); +-DECLARE_VOID_IRQ(16); +-DECLARE_VOID_IRQ(17); +-DECLARE_VOID_IRQ(18); +-DECLARE_VOID_IRQ(19); +-DECLARE_VOID_IRQ(20); +-DECLARE_VOID_IRQ(21); +-DECLARE_VOID_IRQ(22); +-DECLARE_VOID_IRQ(23); +- +-static void handle_void_irq_ptrs[] = { +- handle_void_irq_0, +- handle_void_irq_1, +- handle_void_irq_2, +- handle_void_irq_3, +- handle_void_irq_4, +- handle_void_irq_5, +- handle_void_irq_6, +- handle_void_irq_7, +- handle_void_irq_8, +- handle_void_irq_9, +- handle_void_irq_10, +- handle_void_irq_11, +- handle_void_irq_12, +- handle_void_irq_13, +- handle_void_irq_14, +- handle_void_irq_15, +- handle_void_irq_16, +- handle_void_irq_17, +- handle_void_irq_18, +- handle_void_irq_19, +- handle_void_irq_20, +- handle_void_irq_21, +- handle_void_irq_22, +- handle_void_irq_23, +-}; +- +-static int comedi_rt_get_irq(struct comedi_irq_struct *it) +-{ +- rt_request_global_irq(it->irq, handle_void_irq_ptrs[it->irq]); +- rt_startup_irq(it->irq); +- +- return 0; +-} +- +-static int comedi_rt_release_irq(struct comedi_irq_struct *it) +-{ +- rt_shutdown_irq(it->irq); +- rt_free_global_irq(it->irq); +- return 0; +-} +-#else +- +-static int comedi_rt_get_irq(struct comedi_irq_struct *it) +-{ +- int ret; +- +- ret = rt_request_global_irq_arg(it->irq, it->handler, it->flags, +- it->device, it->dev_id); +- if (ret < 0) { +- rt_printk("rt_request_global_irq_arg() returned %d\n", ret); +- return ret; +- } +- rt_startup_irq(it->irq); +- +- return 0; +-} +- +-static int comedi_rt_release_irq(struct comedi_irq_struct *it) +-{ +- rt_shutdown_irq(it->irq); +- rt_free_global_irq(it->irq); +- return 0; +-} +-#endif +- +-void comedi_rt_init(void) +-{ +- rt_mount_rtai(); +- rt_pend_tq_init(); +-} +- +-void comedi_rt_cleanup(void) +-{ +- rt_umount_rtai(); +- rt_pend_tq_cleanup(); +-} +- +-#endif +- +-/* Fusion section */ +-#ifdef CONFIG_COMEDI_FUSION +- +-static void fusion_handle_irq(unsigned int irq, void *cookie) +-{ +- struct comedi_irq_struct *it = cookie; +- +- it->handler(irq, it->dev_id); +- rthal_irq_enable(irq); +-} +- +-static int comedi_rt_get_irq(struct comedi_irq_struct *it) +-{ +- rthal_irq_request(it->irq, fusion_handle_irq, it); +- rthal_irq_enable(it->irq); +- return 0; +-} +- +-static int comedi_rt_release_irq(struct comedi_irq_struct *it) +-{ +- rthal_irq_disable(it->irq); +- rthal_irq_release(it->irq); +- return 0; +-} +- +-void comedi_rt_init(void) +-{ +- rt_pend_tq_init(); +-} +- +-void comedi_rt_cleanup(void) +-{ +- rt_pend_tq_cleanup(); +-} +- +-#endif /*CONFIG_COMEDI_FUSION */ +- +-/* RTLinux section */ +-#ifdef CONFIG_COMEDI_RTL +- +-static unsigned int handle_rtl_irq(unsigned int irq) +-{ +- struct comedi_irq_struct *it; +- +- it = comedi_irqs[irq]; +- if (it == NULL) +- return 0; +- it->handler(irq, it->dev_id); +- rtl_hard_enable_irq(irq); +- return 0; +-} +- +-static int comedi_rt_get_irq(struct comedi_irq_struct *it) +-{ +- rtl_request_global_irq(it->irq, handle_rtl_irq); +- return 0; +-} +- +-static int comedi_rt_release_irq(struct comedi_irq_struct *it) +-{ +- rtl_free_global_irq(it->irq); +- return 0; +-} +- +-void comedi_rt_init(void) +-{ +- rt_pend_tq_init(); +-} +- +-void comedi_rt_cleanup(void) +-{ +- rt_pend_tq_cleanup(); +-} +- +-#endif +- +-#ifdef CONFIG_COMEDI_PIRQ +-static int comedi_rt_get_irq(struct comedi_irq_struct *it) +-{ +- int ret; +- +- free_irq(it->irq, it->dev_id); +- ret = request_irq(it->irq, it->handler, it->flags | SA_PRIORITY, +- it->device, it->dev_id); +- +- return ret; +-} +- +-static int comedi_rt_release_irq(struct comedi_irq_struct *it) +-{ +- int ret; +- +- free_irq(it->irq, it->dev_id); +- ret = request_irq(it->irq, it->handler, it->flags, +- it->device, it->dev_id); +- +- return ret; +-} +- +-void comedi_rt_init(void) +-{ +- /* rt_pend_tq_init(); */ +-} +- +-void comedi_rt_cleanup(void) +-{ +- /* rt_pend_tq_cleanup(); */ +-} +-#endif +--- a/drivers/staging/comedi/rt_pend_tq.c ++++ /dev/null +@@ -1,113 +0,0 @@ +-#define __NO_VERSION__ +-/* rt_pend_tq.c */ +-#include <linux/kernel.h> +-#include <linux/errno.h> +-#include <linux/sched.h> +-#include "comedidev.h" /* for rt spinlocks */ +-#include "rt_pend_tq.h" +-#ifdef CONFIG_COMEDI_RTAI +-#include <rtai.h> +-#endif +-#ifdef CONFIG_COMEDI_FUSION +-#include <nucleus/asm/hal.h> +-#endif +-#ifdef CONFIG_COMEDI_RTL +-#include <rtl_core.h> +-#endif +- +-#ifdef standalone +-#include <linux/module.h> +-#define rt_pend_tq_init init_module +-#define rt_pend_tq_cleanup cleanup_module +-#endif +- +-volatile static struct rt_pend_tq rt_pend_tq[RT_PEND_TQ_SIZE]; +-volatile static struct rt_pend_tq *volatile rt_pend_head = rt_pend_tq, +- *volatile rt_pend_tail = rt_pend_tq; +-int rt_pend_tq_irq = 0; +-DEFINE_SPINLOCK(rt_pend_tq_lock); +- +-/* WARNING: following code not checked against race conditions yet. */ +-#define INC_CIRCULAR_PTR (ptr, begin, size) do {if (++ (ptr)>= (begin)+ (size)) (ptr)= (begin); } while (0) +-#define DEC_CIRCULAR_PTR (ptr, begin, size) do {if (-- (ptr)< (begin)) (ptr)= (begin)+ (size)-1; } while (0) +- +-int rt_pend_call(void (*func) (int arg1, void *arg2), int arg1, void *arg2) +-{ +- unsigned long flags; +- +- if (func == NULL) +- return -EINVAL; +- if (rt_pend_tq_irq <= 0) +- return -ENODEV; +- comedi_spin_lock_irqsave(&rt_pend_tq_lock, flags); +- INC_CIRCULAR_PTR(rt_pend_head, rt_pend_tq, RT_PEND_TQ_SIZE); +- if (rt_pend_head == rt_pend_tail) { +- /* overflow, we just refuse to take this request */ +- DEC_CIRCULAR_PTR(rt_pend_head, rt_pend_tq, RT_PEND_TQ_SIZE); +- comedi_spin_unlock_irqrestore(&rt_pend_tq_lock, flags); +- return -EAGAIN; +- } +- rt_pend_head->func = func; +- rt_pend_head->arg1 = arg1; +- rt_pend_head->arg2 = arg2; +- comedi_spin_unlock_irqrestore(&rt_pend_tq_lock, flags); +-#ifdef CONFIG_COMEDI_RTAI +- rt_pend_linux_srq(rt_pend_tq_irq); +-#endif +-#ifdef CONFIG_COMEDI_FUSION +- rthal_apc_schedule(rt_pend_tq_irq); +-#endif +-#ifdef CONFIG_COMEDI_RTL +- rtl_global_pend_irq(rt_pend_tq_irq); +- +-#endif +- return 0; +-} +- +-#ifdef CONFIG_COMEDI_RTAI +-void rt_pend_irq_handler(void) +-#elif defined(CONFIG_COMEDI_FUSION) +-void rt_pend_irq_handler(void *cookie) +-#elif defined(CONFIG_COMEDI_RTL) +-void rt_pend_irq_handler(int irq, void *dev) +-#endif +-{ +- while (rt_pend_head != rt_pend_tail) { +- INC_CIRCULAR_PTR(rt_pend_tail, rt_pend_tq, RT_PEND_TQ_SIZE); +- rt_pend_tail->func(rt_pend_tail->arg1, rt_pend_tail->arg2); +- } +-} +- +-int rt_pend_tq_init(void) +-{ +- rt_pend_head = rt_pend_tail = rt_pend_tq; +-#ifdef CONFIG_COMEDI_RTAI +- rt_pend_tq_irq = rt_request_srq(0, rt_pend_irq_handler, NULL); +-#endif +-#ifdef CONFIG_COMEDI_FUSION +- rt_pend_tq_irq = +- rthal_apc_alloc("comedi APC", rt_pend_irq_handler, NULL); +-#endif +-#ifdef CONFIG_COMEDI_RTL +- rt_pend_tq_irq = rtl_get_soft_irq(rt_pend_irq_handler, "rt_pend_irq"); +-#endif +- if (rt_pend_tq_irq > 0) +- printk("rt_pend_tq: RT bottom half scheduler initialized OK\n"); +- else +- printk("rt_pend_tq: rtl_get_soft_irq failed\n"); +- return 0; +-} +- +-void rt_pend_tq_cleanup(void) +-{ +- printk("rt_pend_tq: unloading\n"); +-#ifdef CONFIG_COMEDI_RTAI +- rt_free_srq(rt_pend_tq_irq); +-#endif +-#ifdef CONFIG_COMEDI_FUSION +- rthal_apc_free(rt_pend_tq_irq); +-#endif +-#ifdef CONFIG_COMEDI_RTL +- free_irq(rt_pend_tq_irq, NULL); +-#endif +-} +--- a/drivers/staging/comedi/rt_pend_tq.h ++++ /dev/null +@@ -1,10 +0,0 @@ +-#define RT_PEND_TQ_SIZE 16 +-struct rt_pend_tq { +- void (*func) (int arg1, void *arg2); +- int arg1; +- void *arg2; +-}; +-extern int rt_pend_call(void (*func) (int arg1, void *arg2), int arg1, +- void *arg2); +-extern int rt_pend_tq_init(void); +-extern void rt_pend_tq_cleanup(void); diff --git a/staging/staging-comedi-remove-some-rt-code-that-lingered.patch b/staging/staging-comedi-remove-some-rt-code-that-lingered.patch new file mode 100644 index 00000000000000..971231130ea8a2 --- /dev/null +++ b/staging/staging-comedi-remove-some-rt-code-that-lingered.patch @@ -0,0 +1,238 @@ +From foo@baz Mon Apr 27 15:15:30 PDT 2009 +Date: Mon, 27 Apr 2009 15:15:30 -0700 +To: Greg KH <greg@kroah.com> +From: Greg Kroah-Hartman <gregkh@suse.de> +Subject: Staging: comedi: remove some RT code that lingered + +From: Greg Kroah-Hartman <gregkh@suse.de> + +This removes some pieces of RT code that was part of the main code +paths. + +Cc: Ian Abbott <abbotti@mev.co.uk> +Cc: Frank Mori Hess <fmhess@users.sourceforge.net> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> +--- + drivers/staging/comedi/comedi.h | 1 + drivers/staging/comedi/comedi_fops.c | 25 ++++---------- + drivers/staging/comedi/comedidev.h | 1 + drivers/staging/comedi/drivers/addi-data/addi_common.c | 19 +++------- + drivers/staging/comedi/drivers/addi-data/hwdrv_APCI1710.c | 18 +++++----- + drivers/staging/comedi/drivers/amplc_pc263.c | 2 - + 6 files changed, 24 insertions(+), 42 deletions(-) + +--- a/drivers/staging/comedi/comedidev.h ++++ b/drivers/staging/comedi/comedidev.h +@@ -263,7 +263,6 @@ struct comedi_device { + const char *board_name; + const void *board_ptr; + int attached; +- int rt; + spinlock_t spinlock; + struct mutex mutex; + int in_request_module; +--- a/drivers/staging/comedi/comedi_fops.c ++++ b/drivers/staging/comedi/comedi_fops.c +@@ -1998,27 +1998,18 @@ void comedi_event(struct comedi_device * + + if (async->cb_mask & s->async->events) { + if (comedi_get_subdevice_runflags(s) & SRF_USER) { +- if (dev->rt) { +- printk("BUG: comedi_event() code unreachable\n"); +- } else { +- wake_up_interruptible(&async->wait_head); +- if (s->subdev_flags & SDF_CMD_READ) { +- kill_fasync(&dev->async_queue, SIGIO, +- POLL_IN); +- } +- if (s->subdev_flags & SDF_CMD_WRITE) { +- kill_fasync(&dev->async_queue, SIGIO, +- POLL_OUT); +- } ++ wake_up_interruptible(&async->wait_head); ++ if (s->subdev_flags & SDF_CMD_READ) { ++ kill_fasync(&dev->async_queue, SIGIO, ++ POLL_IN); ++ } ++ if (s->subdev_flags & SDF_CMD_WRITE) { ++ kill_fasync(&dev->async_queue, SIGIO, ++ POLL_OUT); + } + } else { + if (async->cb_func) + async->cb_func(s->async->events, async->cb_arg); +- /* XXX bug here. If subdevice A is rt, and +- * subdevice B tries to callback to a normal +- * linux kernel function, it will be at the +- * wrong priority. Since this isn't very +- * common, I'm not going to worry about it. */ + } + } + s->async->events = 0; +--- a/drivers/staging/comedi/comedi.h ++++ b/drivers/staging/comedi/comedi.h +@@ -188,7 +188,6 @@ extern "C" { + #define SDF_WRITABLE 0x00020000 /* subdevice can be written (e.g. analog output) */ + #define SDF_WRITEABLE SDF_WRITABLE /* spelling error in API */ + #define SDF_INTERNAL 0x00040000 /* subdevice does not have externally visible lines */ +-#define SDF_RT 0x00080000 /* DEPRECATED: subdevice is RT capable */ + #define SDF_GROUND 0x00100000 /* can do aref=ground */ + #define SDF_COMMON 0x00200000 /* can do aref=common */ + #define SDF_DIFF 0x00400000 /* can do aref=diff */ +--- a/drivers/staging/comedi/drivers/addi-data/addi_common.c ++++ b/drivers/staging/comedi/drivers/addi-data/addi_common.c +@@ -2757,7 +2757,7 @@ static int i_ADDI_Attach(struct comedi_d + dev->read_subdev = s; + s->type = COMEDI_SUBD_AI; + s->subdev_flags = +- SDF_READABLE | SDF_RT | SDF_COMMON | SDF_GROUND ++ SDF_READABLE | SDF_COMMON | SDF_GROUND + | SDF_DIFF; + if (this_board->i_NbrAiChannel) { + s->n_chan = this_board->i_NbrAiChannel; +@@ -2792,9 +2792,7 @@ static int i_ADDI_Attach(struct comedi_d + s = dev->subdevices + 1; + if (this_board->i_NbrAoChannel) { + s->type = COMEDI_SUBD_AO; +- s->subdev_flags = +- SDF_WRITEABLE | SDF_GROUND | SDF_COMMON | +- SDF_RT; ++ s->subdev_flags = SDF_WRITEABLE | SDF_GROUND | SDF_COMMON; + s->n_chan = this_board->i_NbrAoChannel; + s->maxdata = this_board->i_AoMaxdata; + s->len_chanlist = this_board->i_NbrAoChannel; +@@ -2810,8 +2808,7 @@ static int i_ADDI_Attach(struct comedi_d + s = dev->subdevices + 2; + if (this_board->i_NbrDiChannel) { + s->type = COMEDI_SUBD_DI; +- s->subdev_flags = +- SDF_READABLE | SDF_RT | SDF_GROUND | SDF_COMMON; ++ s->subdev_flags = SDF_READABLE | SDF_GROUND | SDF_COMMON; + s->n_chan = this_board->i_NbrDiChannel; + s->maxdata = 1; + s->len_chanlist = this_board->i_NbrDiChannel; +@@ -2831,8 +2828,7 @@ static int i_ADDI_Attach(struct comedi_d + if (this_board->i_NbrDoChannel) { + s->type = COMEDI_SUBD_DO; + s->subdev_flags = +- SDF_READABLE | SDF_WRITEABLE | SDF_RT | +- SDF_GROUND | SDF_COMMON; ++ SDF_READABLE | SDF_WRITEABLE | SDF_GROUND | SDF_COMMON; + s->n_chan = this_board->i_NbrDoChannel; + s->maxdata = this_board->i_DoMaxdata; + s->len_chanlist = this_board->i_NbrDoChannel; +@@ -2854,9 +2850,7 @@ static int i_ADDI_Attach(struct comedi_d + s = dev->subdevices + 4; + if (this_board->i_Timer) { + s->type = COMEDI_SUBD_TIMER; +- s->subdev_flags = +- SDF_WRITEABLE | SDF_RT | SDF_GROUND | +- SDF_COMMON; ++ s->subdev_flags = SDF_WRITEABLE | SDF_GROUND | SDF_COMMON; + s->n_chan = 1; + s->maxdata = 0; + s->len_chanlist = 1; +@@ -2875,8 +2869,7 @@ static int i_ADDI_Attach(struct comedi_d + if (this_board->i_NbrTTLChannel) { + s->type = COMEDI_SUBD_TTLIO; + s->subdev_flags = +- SDF_WRITEABLE | SDF_READABLE | SDF_RT | +- SDF_GROUND | SDF_COMMON; ++ SDF_WRITEABLE | SDF_READABLE | SDF_GROUND | SDF_COMMON; + s->n_chan = this_board->i_NbrTTLChannel; + s->maxdata = 1; + s->io_bits = 0; /* all bits input */ +--- a/drivers/staging/comedi/drivers/addi-data/hwdrv_APCI1710.c ++++ b/drivers/staging/comedi/drivers/addi-data/hwdrv_APCI1710.c +@@ -71,7 +71,7 @@ void i_ADDI_AttachPCI1710(struct comedi_ + s = dev->subdevices + 0; + + s->type = COMEDI_SUBD_TIMER; +- s->subdev_flags = SDF_WRITEABLE | SDF_RT | SDF_GROUND | SDF_COMMON; ++ s->subdev_flags = SDF_WRITEABLE | SDF_GROUND | SDF_COMMON; + s->n_chan = 3; + s->maxdata = 0; + s->len_chanlist = 3; +@@ -86,7 +86,7 @@ void i_ADDI_AttachPCI1710(struct comedi_ + + s->type = COMEDI_SUBD_DIO; + s->subdev_flags = +- SDF_WRITEABLE | SDF_READABLE | SDF_RT | SDF_GROUND | SDF_COMMON; ++ SDF_WRITEABLE | SDF_READABLE | SDF_GROUND | SDF_COMMON; + s->n_chan = 7; + s->maxdata = 1; + s->len_chanlist = 7; +@@ -100,7 +100,7 @@ void i_ADDI_AttachPCI1710(struct comedi_ + s = dev->subdevices + 2; + + s->type = COMEDI_SUBD_CHRONO; +- s->subdev_flags = SDF_WRITEABLE | SDF_RT | SDF_GROUND | SDF_COMMON; ++ s->subdev_flags = SDF_WRITEABLE | SDF_GROUND | SDF_COMMON; + s->n_chan = 4; + s->maxdata = 0; + s->len_chanlist = 4; +@@ -114,7 +114,7 @@ void i_ADDI_AttachPCI1710(struct comedi_ + s = dev->subdevices + 3; + s->type = COMEDI_SUBD_PWM; + s->subdev_flags = +- SDF_WRITEABLE | SDF_READABLE | SDF_RT | SDF_GROUND | SDF_COMMON; ++ SDF_WRITEABLE | SDF_READABLE | SDF_GROUND | SDF_COMMON; + s->n_chan = 3; + s->maxdata = 1; + s->len_chanlist = 3; +@@ -129,7 +129,7 @@ void i_ADDI_AttachPCI1710(struct comedi_ + s = dev->subdevices + 4; + s->type = COMEDI_SUBD_TTLIO; + s->subdev_flags = +- SDF_WRITEABLE | SDF_READABLE | SDF_RT | SDF_GROUND | SDF_COMMON; ++ SDF_WRITEABLE | SDF_READABLE | SDF_GROUND | SDF_COMMON; + s->n_chan = 8; + s->maxdata = 1; + s->len_chanlist = 8; +@@ -143,7 +143,7 @@ void i_ADDI_AttachPCI1710(struct comedi_ + s = dev->subdevices + 5; + s->type = COMEDI_SUBD_TOR; + s->subdev_flags = +- SDF_WRITEABLE | SDF_READABLE | SDF_RT | SDF_GROUND | SDF_COMMON; ++ SDF_WRITEABLE | SDF_READABLE | SDF_GROUND | SDF_COMMON; + s->n_chan = 8; + s->maxdata = 1; + s->len_chanlist = 8; +@@ -158,7 +158,7 @@ void i_ADDI_AttachPCI1710(struct comedi_ + s = dev->subdevices + 6; + s->type = COMEDI_SUBD_SSI; + s->subdev_flags = +- SDF_WRITEABLE | SDF_READABLE | SDF_RT | SDF_GROUND | SDF_COMMON; ++ SDF_WRITEABLE | SDF_READABLE | SDF_GROUND | SDF_COMMON; + s->n_chan = 4; + s->maxdata = 1; + s->len_chanlist = 4; +@@ -171,7 +171,7 @@ void i_ADDI_AttachPCI1710(struct comedi_ + s = dev->subdevices + 7; + s->type = COMEDI_SUBD_PULSEENCODER; + s->subdev_flags = +- SDF_WRITEABLE | SDF_READABLE | SDF_RT | SDF_GROUND | SDF_COMMON; ++ SDF_WRITEABLE | SDF_READABLE | SDF_GROUND | SDF_COMMON; + s->n_chan = 4; + s->maxdata = 1; + s->len_chanlist = 4; +@@ -185,7 +185,7 @@ void i_ADDI_AttachPCI1710(struct comedi_ + s = dev->subdevices + 8; + s->type = COMEDI_SUBD_INCREMENTALCOUNTER; + s->subdev_flags = +- SDF_WRITEABLE | SDF_READABLE | SDF_RT | SDF_GROUND | SDF_COMMON; ++ SDF_WRITEABLE | SDF_READABLE | SDF_GROUND | SDF_COMMON; + s->n_chan = 500; + s->maxdata = 1; + s->len_chanlist = 500; +--- a/drivers/staging/comedi/drivers/amplc_pc263.c ++++ b/drivers/staging/comedi/drivers/amplc_pc263.c +@@ -307,7 +307,7 @@ static int pc263_attach(struct comedi_de + s = dev->subdevices + 0; + /* digital i/o subdevice */ + s->type = COMEDI_SUBD_DIO; +- s->subdev_flags = SDF_READABLE | SDF_WRITABLE | SDF_RT; ++ s->subdev_flags = SDF_READABLE | SDF_WRITABLE; + s->n_chan = 16; + s->maxdata = 1; + s->range_table = &range_digital; diff --git a/usb/usb-ehci-create-sysfs-companion-files-directly-in-the-controller-device.patch b/usb/usb-ehci-create-sysfs-companion-files-directly-in-the-controller-device.patch new file mode 100644 index 00000000000000..e7ec8e811534ba --- /dev/null +++ b/usb/usb-ehci-create-sysfs-companion-files-directly-in-the-controller-device.patch @@ -0,0 +1,37 @@ +From foo@baz Mon Apr 27 13:15:38 PDT 2009 +Date: Mon, 27 Apr 2009 13:15:38 -0700 +To: Greg KH <greg@kroah.com> +From: Greg Kroah-Hartman <gregkh@suse.de> +Subject: USB: EHCI: create sysfs companion files directly in the controller device + +The controller device is where we want this sysfs file, especially as +the dev pointer is about to go away... + +Cc: David Brownell <dbrownell@users.sourceforge.net> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> + +--- +--- + drivers/usb/host/ehci-hub.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/drivers/usb/host/ehci-hub.c ++++ b/drivers/usb/host/ehci-hub.c +@@ -391,7 +391,7 @@ static inline void create_companion_file + + /* with integrated TT there is no companion! */ + if (!ehci_is_TDI(ehci)) +- i = device_create_file(ehci_to_hcd(ehci)->self.dev, ++ i = device_create_file(ehci_to_hcd(ehci)->self.controller, + &dev_attr_companion); + } + +@@ -399,7 +399,7 @@ static inline void remove_companion_file + { + /* with integrated TT there is no companion! */ + if (!ehci_is_TDI(ehci)) +- device_remove_file(ehci_to_hcd(ehci)->self.dev, ++ device_remove_file(ehci_to_hcd(ehci)->self.controller, + &dev_attr_companion); + } + diff --git a/usb/usb-ohci-use-the-ohci-structure-directly-in-debugfs-files.patch b/usb/usb-ohci-use-the-ohci-structure-directly-in-debugfs-files.patch new file mode 100644 index 00000000000000..1363d9b3903392 --- /dev/null +++ b/usb/usb-ohci-use-the-ohci-structure-directly-in-debugfs-files.patch @@ -0,0 +1,135 @@ +From foo@baz Mon Apr 27 13:12:58 PDT 2009 +Date: Mon, 27 Apr 2009 13:12:58 -0700 +To: Greg KH <greg@kroah.com> +From: Greg Kroah-Hartman <gregkh@suse.de> +Subject: USB: OHCI: use the ohci structure directly in debugfs files. + +Right now we jump through some hoops to get to the struct ohci_hcd +struct in the ohci debugfs files. Remove all of the fun casting around +and just use the pointer directly. + +This is needed as the dev pointer in the hcd structure is going away, +and it makes the code simpler and smaller + +Cc: David Brownell <dbrownell@users.sourceforge.net> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> +--- + drivers/usb/host/ohci-dbg.c | 31 ++++++++++--------------------- + 1 file changed, 10 insertions(+), 21 deletions(-) + +--- a/drivers/usb/host/ohci-dbg.c ++++ b/drivers/usb/host/ohci-dbg.c +@@ -431,7 +431,7 @@ static struct dentry *ohci_debug_root; + + struct debug_buffer { + ssize_t (*fill_func)(struct debug_buffer *); /* fill method */ +- struct device *dev; ++ struct ohci_hcd *ohci; + struct mutex mutex; /* protect filling of buffer */ + size_t count; /* number of characters filled into buffer */ + char *page; +@@ -505,15 +505,11 @@ show_list (struct ohci_hcd *ohci, char * + + static ssize_t fill_async_buffer(struct debug_buffer *buf) + { +- struct usb_bus *bus; +- struct usb_hcd *hcd; + struct ohci_hcd *ohci; + size_t temp; + unsigned long flags; + +- bus = dev_get_drvdata(buf->dev); +- hcd = bus_to_hcd(bus); +- ohci = hcd_to_ohci(hcd); ++ ohci = buf->ohci; + + /* display control and bulk lists together, for simplicity */ + spin_lock_irqsave (&ohci->lock, flags); +@@ -529,8 +525,6 @@ static ssize_t fill_async_buffer(struct + + static ssize_t fill_periodic_buffer(struct debug_buffer *buf) + { +- struct usb_bus *bus; +- struct usb_hcd *hcd; + struct ohci_hcd *ohci; + struct ed **seen, *ed; + unsigned long flags; +@@ -542,9 +536,7 @@ static ssize_t fill_periodic_buffer(stru + return 0; + seen_count = 0; + +- bus = (struct usb_bus *)dev_get_drvdata(buf->dev); +- hcd = bus_to_hcd(bus); +- ohci = hcd_to_ohci(hcd); ++ ohci = buf->ohci; + next = buf->page; + size = PAGE_SIZE; + +@@ -626,7 +618,6 @@ static ssize_t fill_periodic_buffer(stru + + static ssize_t fill_registers_buffer(struct debug_buffer *buf) + { +- struct usb_bus *bus; + struct usb_hcd *hcd; + struct ohci_hcd *ohci; + struct ohci_regs __iomem *regs; +@@ -635,9 +626,8 @@ static ssize_t fill_registers_buffer(str + char *next; + u32 rdata; + +- bus = (struct usb_bus *)dev_get_drvdata(buf->dev); +- hcd = bus_to_hcd(bus); +- ohci = hcd_to_ohci(hcd); ++ ohci = buf->ohci; ++ hcd = ohci_to_hcd(ohci); + regs = ohci->regs; + next = buf->page; + size = PAGE_SIZE; +@@ -710,7 +700,7 @@ done: + return PAGE_SIZE - size; + } + +-static struct debug_buffer *alloc_buffer(struct device *dev, ++static struct debug_buffer *alloc_buffer(struct ohci_hcd *ohci, + ssize_t (*fill_func)(struct debug_buffer *)) + { + struct debug_buffer *buf; +@@ -718,7 +708,7 @@ static struct debug_buffer *alloc_buffer + buf = kzalloc(sizeof(struct debug_buffer), GFP_KERNEL); + + if (buf) { +- buf->dev = dev; ++ buf->ohci = ohci; + buf->fill_func = fill_func; + mutex_init(&buf->mutex); + } +@@ -810,26 +800,25 @@ static int debug_registers_open(struct i + static inline void create_debug_files (struct ohci_hcd *ohci) + { + struct usb_bus *bus = &ohci_to_hcd(ohci)->self; +- struct device *dev = bus->dev; + + ohci->debug_dir = debugfs_create_dir(bus->bus_name, ohci_debug_root); + if (!ohci->debug_dir) + goto dir_error; + + ohci->debug_async = debugfs_create_file("async", S_IRUGO, +- ohci->debug_dir, dev, ++ ohci->debug_dir, ohci, + &debug_async_fops); + if (!ohci->debug_async) + goto async_error; + + ohci->debug_periodic = debugfs_create_file("periodic", S_IRUGO, +- ohci->debug_dir, dev, ++ ohci->debug_dir, ohci, + &debug_periodic_fops); + if (!ohci->debug_periodic) + goto periodic_error; + + ohci->debug_registers = debugfs_create_file("registers", S_IRUGO, +- ohci->debug_dir, dev, ++ ohci->debug_dir, ohci, + &debug_registers_fops); + if (!ohci->debug_registers) + goto registers_error; diff --git a/usb/usb-remove-unused-usb_host-class.patch b/usb/usb-remove-unused-usb_host-class.patch new file mode 100644 index 00000000000000..7f5117ed5afb21 --- /dev/null +++ b/usb/usb-remove-unused-usb_host-class.patch @@ -0,0 +1,126 @@ +From foo@baz Mon Apr 27 13:17:21 PDT 2009 +Date: Mon, 27 Apr 2009 13:17:21 -0700 +To: Greg KH <greg@kroah.com> +From: Greg Kroah-Hartman <gregkh@suse.de> +Subject: USB: remove unused usb_host class + +The usb_host class isn't used for anything anymore (it was used for +debug files, but they have moved to debugfs a few kernel releases ago), +so let's delete it before someone accidentally puts a file in it. + +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> + +--- + drivers/usb/core/hcd.c | 27 --------------------------- + drivers/usb/core/usb.c | 6 ------ + drivers/usb/core/usb.h | 2 -- + include/linux/usb.h | 1 - + 4 files changed, 36 deletions(-) + +--- a/drivers/usb/core/hcd.c ++++ b/drivers/usb/core/hcd.c +@@ -755,23 +755,6 @@ static struct attribute_group usb_bus_at + + /*-------------------------------------------------------------------------*/ + +-static struct class *usb_host_class; +- +-int usb_host_init(void) +-{ +- int retval = 0; +- +- usb_host_class = class_create(THIS_MODULE, "usb_host"); +- if (IS_ERR(usb_host_class)) +- retval = PTR_ERR(usb_host_class); +- return retval; +-} +- +-void usb_host_cleanup(void) +-{ +- class_destroy(usb_host_class); +-} +- + /** + * usb_bus_init - shared initialization code + * @bus: the bus structure being initialized +@@ -818,12 +801,6 @@ static int usb_register_bus(struct usb_b + set_bit (busnum, busmap.busmap); + bus->busnum = busnum; + +- bus->dev = device_create(usb_host_class, bus->controller, MKDEV(0, 0), +- bus, "usb_host%d", busnum); +- result = PTR_ERR(bus->dev); +- if (IS_ERR(bus->dev)) +- goto error_create_class_dev; +- + /* Add it to the local list of buses */ + list_add (&bus->bus_list, &usb_bus_list); + mutex_unlock(&usb_bus_list_lock); +@@ -834,8 +811,6 @@ static int usb_register_bus(struct usb_b + "number %d\n", bus->busnum); + return 0; + +-error_create_class_dev: +- clear_bit(busnum, busmap.busmap); + error_find_busnum: + mutex_unlock(&usb_bus_list_lock); + return result; +@@ -865,8 +840,6 @@ static void usb_deregister_bus (struct u + usb_notify_remove_bus(bus); + + clear_bit (bus->busnum, busmap.busmap); +- +- device_unregister(bus->dev); + } + + /** +--- a/drivers/usb/core/usb.c ++++ b/drivers/usb/core/usb.c +@@ -1055,9 +1055,6 @@ static int __init usb_init(void) + retval = bus_register_notifier(&usb_bus_type, &usb_bus_nb); + if (retval) + goto bus_notifier_failed; +- retval = usb_host_init(); +- if (retval) +- goto host_init_failed; + retval = usb_major_init(); + if (retval) + goto major_init_failed; +@@ -1087,8 +1084,6 @@ usb_devio_init_failed: + driver_register_failed: + usb_major_cleanup(); + major_init_failed: +- usb_host_cleanup(); +-host_init_failed: + bus_unregister_notifier(&usb_bus_type, &usb_bus_nb); + bus_notifier_failed: + bus_unregister(&usb_bus_type); +@@ -1113,7 +1108,6 @@ static void __exit usb_exit(void) + usb_deregister(&usbfs_driver); + usb_devio_cleanup(); + usb_hub_cleanup(); +- usb_host_cleanup(); + bus_unregister_notifier(&usb_bus_type, &usb_bus_nb); + bus_unregister(&usb_bus_type); + ksuspend_usb_cleanup(); +--- a/drivers/usb/core/usb.h ++++ b/drivers/usb/core/usb.h +@@ -41,8 +41,6 @@ extern int usb_hub_init(void); + extern void usb_hub_cleanup(void); + extern int usb_major_init(void); + extern void usb_major_cleanup(void); +-extern int usb_host_init(void); +-extern void usb_host_cleanup(void); + + #ifdef CONFIG_PM + +--- a/include/linux/usb.h ++++ b/include/linux/usb.h +@@ -336,7 +336,6 @@ struct usb_bus { + #ifdef CONFIG_USB_DEVICEFS + struct dentry *usbfs_dentry; /* usbfs dentry entry for the bus */ + #endif +- struct device *dev; /* device for this bus */ + + #if defined(CONFIG_USB_MON) || defined(CONFIG_USB_MON_MODULE) + struct mon_bus *mon_bus; /* non-null when associated */ @@ -1 +1 @@ -2.6.30-rc3 +2.6.30-rc3-git2 |
