Skip to contentSkip to conversation

IDE updates part #3

PATCH New Bartlomiej Zolnierkiewicz 1 participant 1 message Feb 1, 2008

Subsystems (5)
Documentation SCSI PowerPC libata +1 more subsystems
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 IDE updates part #3

IDE updates continued...

* ide-cd rewrite (fix few bugs, unify IRQ handlers, re-organize handling of quirky devices, move verbose error logging / cdrom.c IOCTLs support to separate files, remove duplicated/dead code and other improvements)

* switch IDE to use generic DMA-mapping API

* IDE probing code revamp

* trm290 host driver fixes

* amd74xx host driver cleanup

* misc stuff

[ + this update shrinks code under drivers/ide/ by almost 1400 LOC :) ]

Linus, please pull from:

master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6.git/

to receive the following updates:

 Documentation/ide/ChangeLog.ide-cd.1994-2004     |  268 +++
 Documentation/ide/ChangeLog.ide-floppy.1996-2002 |   63 +
 drivers/cdrom/cdrom.c                            |    6 -
 drivers/ide/Kconfig                              |   55 +-
 drivers/ide/Makefile                             |    4 +-
 drivers/ide/arm/bast-ide.c                       |    3 +-
 drivers/ide/arm/icside.c                         |   50 +-
 drivers/ide/arm/rapide.c                         |    6 +-
 drivers/ide/cris/ide-cris.c                      |    3 +-
 drivers/ide/h8300/ide-h8300.c                    |    1 -
 drivers/ide/ide-acpi.c                           |    1 -
 drivers/ide/ide-cd.c                             | 2333 +++++-----------------
 drivers/ide/ide-cd.h                             |  706 +------
 drivers/ide/ide-cd_ioctl.c                       |  475 +++++
 drivers/ide/ide-cd_verbose.c                     |  359 ++++
 drivers/ide/ide-disk.c                           |   11 +-
 drivers/ide/ide-dma.c                            |  110 +-
 drivers/ide/ide-floppy.c                         |  122 +--
 drivers/ide/ide-io.c                             |    2 +-
 drivers/ide/ide-iops.c                           |    4 +-
 drivers/ide/ide-lib.c                            |    6 +-
 drivers/ide/ide-pnp.c                            |    2 -
 drivers/ide/ide-probe.c                          |  190 +-
 drivers/ide/ide-proc.c                           |    2 -
 drivers/ide/ide-scan-pci.c                       |    9 +-
 drivers/ide/ide-tape.c                           |   80 +-
 drivers/ide/ide-taskfile.c                       |   12 +-
 drivers/ide/ide-timing.h                         |    2 -
 drivers/ide/ide.c                                |  116 +-
 drivers/ide/legacy/ali14xx.c                     |    2 -
 drivers/ide/legacy/buddha.c                      |    2 +-
 drivers/ide/legacy/dtc2278.c                     |    2 -
 drivers/ide/legacy/falconide.c                   |    3 +-
 drivers/ide/legacy/gayle.c                       |    2 +-
 drivers/ide/legacy/ht6560b.c                     |    2 -
 drivers/ide/legacy/ide-cs.c                      |    2 -
 drivers/ide/legacy/ide_platform.c                |   34 +-
 drivers/ide/legacy/macide.c                      |    2 +-
 drivers/ide/legacy/q40ide.c                      |    2 +-
 drivers/ide/legacy/qd65xx.c                      |    2 -
 drivers/ide/legacy/qd65xx.h                      |    2 -
 drivers/ide/legacy/umc8672.c                     |    2 -
 drivers/ide/mips/au1xxx-ide.c                    |   43 +-
 drivers/ide/pci/aec62xx.c                        |   11 +-
 drivers/ide/pci/alim15x3.c                       |   20 +-
 drivers/ide/pci/amd74xx.c                        |  281 ++--
 drivers/ide/pci/atiixp.c                         |   11 +-
 drivers/ide/pci/cmd640.c                         |    2 -
 drivers/ide/pci/cmd64x.c                         |   20 +-
 drivers/ide/pci/cs5520.c                         |    2 +-
 drivers/ide/pci/cs5530.c                         |    2 -
 drivers/ide/pci/cs5535.c                         |    6 +-
 drivers/ide/pci/cy82c693.c                       |    7 +-
 drivers/ide/pci/delkin_cb.c                      |    4 +-
 drivers/ide/pci/generic.c                        |    5 +-
 drivers/ide/pci/hpt34x.c                         |    6 +-
 drivers/ide/pci/hpt366.c                         |   33 +-
 drivers/ide/pci/it8213.c                         |    7 +-
 drivers/ide/pci/it821x.c                         |   50 +-
 drivers/ide/pci/jmicron.c                        |    2 +-
 drivers/ide/pci/ns87415.c                        |   20 +-
 drivers/ide/pci/opti621.c                        |    2 -
 drivers/ide/pci/pdc202xx_new.c                   |    6 +-
 drivers/ide/pci/pdc202xx_old.c                   |   17 +-
 drivers/ide/pci/piix.c                           |   55 +-
 drivers/ide/pci/rz1000.c                         |    4 +-
 drivers/ide/pci/sc1200.c                         |   14 +-
 drivers/ide/pci/scc_pata.c                       |   13 +-
 drivers/ide/pci/serverworks.c                    |   24 +-
 drivers/ide/pci/sgiioc4.c                        |   19 +-
 drivers/ide/pci/siimage.c                        |   53 +-
 drivers/ide/pci/sis5513.c                        |   24 +-
 drivers/ide/pci/sl82c105.c                       |   19 +-
 drivers/ide/pci/slc90e66.c                       |    9 +-
 drivers/ide/pci/tc86c001.c                       |    5 +-
 drivers/ide/pci/triflex.c                        |    4 +-
 drivers/ide/pci/trm290.c                         |   65 +-
 drivers/ide/pci/via82cxxx.c                      |   15 +-
 drivers/ide/ppc/mpc8xx.c                         |    2 -
 drivers/ide/ppc/pmac.c                           |   39 +-
 drivers/ide/setup-pci.c                          |   94 +-
 drivers/scsi/ide-scsi.c                          |    5 +-
 include/asm-mips/mach-au1x00/au1xxx_ide.h        |    1 -
 include/linux/cdrom.h                            |   14 +
 include/linux/hdsmart.h                          |    2 +
 include/linux/ide.h                              |   40 +-
 86 files changed, 2549 insertions(+), 3588 deletions(-)
 create mode 100644 Documentation/ide/ChangeLog.ide-cd.1994-2004
 create mode 100644 Documentation/ide/ChangeLog.ide-floppy.1996-2002
 create mode 100644 drivers/ide/ide-cd_ioctl.c
 create mode 100644 drivers/ide/ide-cd_verbose.c

Adrian Bunk (4):
ide: unexport ide_dma_on
ide: small ide-scan-pci.c cleanup
ide: make wait_drive_not_busy() static again ide/ppc/pmac.c section fixes

Bartlomiej Zolnierkiewicz (90):
ide-cd: use xfer_func_t in cdrom_pc_intr()
ide-cd: add ide_cd_pad_transfer() helper
ide-cd: fix "missing data" handling in cdrom_pc_intr()
ide-cd: fix DMA error handling in cdrom_newpc_intr()
ide-cd: fix trailing whitespaces in changelog
ide-cd: move historical changelog to Documentation/ide/ChangeLog.ide-cd.1994-2004
ide-cd: remove stale cdrom_transfer_packet_command() comment
ide-cd: remove unused defines from ide-cd.h
ide-cd: remove dead code from cdrom_pc_intr()
ide-cd: remove unused struct atapi_cdrom_subchnl
ide-cd: remove needless zeroing of 'info' fields from ide_cdrom_setup()
ide-cd: remove unused and write-only struct ide_cd_config_flags fields
ide-cd: remove struct atapi_{mechstat_header,changer_info,slot}
ide-cd: cleanup ide_cdrom_update_speed()
ide-cd: add IDE_CD_CAPABILITIES define
ide-cd: remove redundant config flags
ide-cd: kill CDROM_CONFIG_FLAGS() macro
ide-cd: kill CDROM_STATE_FLAGS() macro
ide-cd: remove struct atapi_capabilities_page (take 2)
ide-cd: remove struct ide_cd_{config,state}_flags
ide-cd: remove NO_DOOR_LOCKING define
ide-cd: remove STANDARD_ATAPI define
ide-cd: use BCD2BIN()/BIN2BCD() macros from <linux/bcd.h>
ide-cd: re-organize handling of quirky devices
ide-cd: remove duplicate sense keys definitions from ide-cd.h
ide-cd: coding style fixes for VERBOSE_IDE_CD_ERRORS code
ide-cd: move VERBOSE_IDE_CD_ERRORS code to ide-cd_verbose.c
ide-cd: factor out ioctl handlers from ide_cdrom_audio_ioctl()
ide-cd: merge cdrom_play_audio() into ide_cd_fake_play_trkind()
ide-cd: merge cdrom_read_subchannel() into ide_cdrom_get_mcn()
ide-cd: merge cdrom_select_speed() into ide_cdrom_select_speed()
ide-cd: move lba_to_msf() and msf_to_lba() to <linux/cdrom.h>
ide-cd: coding style fixes for cdrom_get_toc_entry()
ide-cd: rename cdrom_* functions to ide_cd_*
ide-cd: move code handling cdrom.c IOCTLs to ide-cd_ioctl.c
ide-cd: remove BUG_ON() from cdrom_newpc_intr()
ide-cd: call blk_dump_rq_flags() on "missing data" in cdrom_newpc_intr()
ide-cd: factor out request sense fixup from cdrom_pc_intr()
ide-cd: unify request end exit path in cdrom_pc_intr()
ide-cd: merge cdrom_pc_intr() and cdrom_newpc_intr()
ide-cd: remove cdrom_do_pc_continuation()
ide-cd: merge cdrom_do_packet_command() and cdrom_do_block_pc()
ide-cd: add ide_cd_drain_data() helper
ide-cd: factor out transfer size checking from cdrom_read_intr()
ide-cd: merge cdrom_read_intr() and cdrom_write_intr()
ide-cd: merge cdrom_start_read_continuation() and cdrom_start_rw_cont()
ide-cd: merge cdrom_start_read() and cdrom_start_write()
ide-cd: unify moving to the next buffer in cdrom_rw_intr()
ide-cd: prepare cdrom_rw_intr() and cdrom_newpc_intr() to be merged
ide-cd: call blk_dump_rq_flags() on "missing data" in cdrom_rw_intr()
ide-cd: merge cdrom_rw_intr() and cdrom_newpc_intr()
ide-cd: merge cdrom_write_check_ireason() and cdrom_read_check_ireason()
ide-cd: unify request end exit path in cdrom_decode_status()
ide-cd: update driver version, comments and copyrights
ide: add ide_dump_identify() debug helper
ide-{floppy,tape}: remove debug code for dumping identify data
amd74xx: remove amd_ide_chips table
ide: add IDE_HFLAG_CLEAR_SIMPLEX host flag
ide: add IDE_HFLAG_NO_DSC host flag
piix: remove stale comments
ide: fix ide_intr() for non-PCI devices and CONFIG_BLK_DEV_IDEPCI=y
ide: remove BUG_ON() from ide_build_sglist()
ide: use ide_destroy_dmatable() instead of pci_unmap_sg() (take 2)
ide: keep pointer to struct device instead of struct pci_dev in ide_hwif_t
au1xxx-ide: use hwif->dev
icside: use hwif->dev
ide: switch to DMA-mapping API
ide: use ide_build_sglist() and ide_destroy_dmatable() in non-PCI host drivers
au1xxx-ide: device tree bugfix
ide-pmac: macio resource freeing bugfix
au1xxx-ide/rapide: use hwif->index for ide_unregister()
ide: delete filenames/versions from comments
ide: update/add my Copyrights
ide: don't include <linux/hdsmart.h>
<linux/hdsmart.h> is not used by kernel code
ide: fix handling of busy I/O resources in probe_hwif()
ide: move wait_hwif_ready() documentation in the right place
ide: remove hwif->present manipulations from hwif_init()
ide_platform: remove struct hwif_prop
ide: remove unused ide_hwgroup_t fields
ide: remove needless zeroing of hwgroup fields from init_irq()
ide: cleanup ide_system_bus_speed()
ide: I/O resources are released too early in ide_unregister()
ide: factor out code removing port from hwgroup from ide_unregister()
ide: prepare init_irq() for using ide_remove_port_from_hwgroup()
ide: use ide_remove_port_from_hwgroup in init_irq()
ide: make probe_hwif() return an error value
ide: move handling of I/O resources out of ide_probe_port()
ide: factor out code for tuning devices from ide_probe_port()
ide: move hwif_register() call out of ide_probe_port()

Borislav Petkov (2):
ide-cd: move the remaining cdrom.c ioctl handling code to ide-cd_ioctl.c
ide-floppy: cleanup header

Frans Pop (1):
ide/Kconfig: use 'on-board' instead of 'built-in' in config options

Geert Uytterhoeven (1):
Atari Falcon IDE: Add missing hwif variable

Sergei Shtylyov (2):
trm290: cannot call ide_setup_dma()
ide: ide_setup_dma() assumes 8 ports

Documentation/ide/ChangeLog.ide-cd.1994-2004 new file +268 -0
new file mode 100644
index 0000000..190d17b
@@ -0,0 +1,268 @@
+/*
+ * 1.00  Oct 31, 1994 -- Initial version.
+ * 1.01  Nov  2, 1994 -- Fixed problem with starting request in
+ *                       cdrom_check_status.
+ * 1.03  Nov 25, 1994 -- leaving unmask_intr[] as a user-setting (as for disks)
+ * (from mlord)       -- minor changes to cdrom_setup()
+ *                    -- renamed ide_dev_s to ide_drive_t, enable irq on command
+ * 2.00  Nov 27, 1994 -- Generalize packet command interface;
+ *                       add audio ioctls.
+ * 2.01  Dec  3, 1994 -- Rework packet command interface to handle devices
+ *                       which send an interrupt when ready for a command.
+ * 2.02  Dec 11, 1994 -- Cache the TOC in the driver.
+ *                       Don't use SCMD_PLAYAUDIO_TI; it's not included
+ *                       in the current version of ATAPI.
+ *                       Try to use LBA instead of track or MSF addressing
+ *                       when possible.
+ *                       Don't wait for READY_STAT.
+ * 2.03  Jan 10, 1995 -- Rewrite block read routines to handle block sizes
+ *                       other than 2k and to move multiple sectors in a
+ *                       single transaction.
+ * 2.04  Apr 21, 1995 -- Add work-around for Creative Labs CD220E drives.
+ *                       Thanks to Nick Saw <[email protected]> for
+ *                       help in figuring this out.  Ditto for Acer and
+ *                       Aztech drives, which seem to have the same problem.
+ * 2.04b May 30, 1995 -- Fix to match changes in ide.c version 3.16 -ml
+ * 2.05  Jun  8, 1995 -- Don't attempt to retry after an illegal request
+ *                        or data protect error.
+ *                       Use HWIF and DEV_HWIF macros as in ide.c.
+ *                       Always try to do a request_sense after
+ *                        a failed command.
+ *                       Include an option to give textual descriptions
+ *                        of ATAPI errors.
+ *                       Fix a bug in handling the sector cache which
+ *                        showed up if the drive returned data in 512 byte
+ *                        blocks (like Pioneer drives).  Thanks to
+ *                        Richard Hirst <[email protected]> for diagnosing this.
+ *                       Properly supply the page number field in the
+ *                        MODE_SELECT command.
+ *                       PLAYAUDIO12 is broken on the Aztech; work around it.
+ * 2.05x Aug 11, 1995 -- lots of data structure renaming/restructuring in ide.c
+ *                       (my apologies to Scott, but now ide-cd.c is independent)
+ * 3.00  Aug 22, 1995 -- Implement CDROMMULTISESSION ioctl.
+ *                       Implement CDROMREADAUDIO ioctl (UNTESTED).
+ *                       Use input_ide_data() and output_ide_data().
+ *                       Add door locking.
+ *                       Fix usage count leak in cdrom_open, which happened
+ *                        when a read-write mount was attempted.
+ *                       Try to load the disk on open.
+ *                       Implement CDROMEJECT_SW ioctl (off by default).
+ *                       Read total cdrom capacity during open.
+ *                       Rearrange logic in cdrom_decode_status.  Issue
+ *                        request sense commands for failed packet commands
+ *                        from here instead of from cdrom_queue_packet_command.
+ *                        Fix a race condition in retrieving error information.
+ *                       Suppress printing normal unit attention errors and
+ *                        some drive not ready errors.
+ *                       Implement CDROMVOLREAD ioctl.
+ *                       Implement CDROMREADMODE1/2 ioctls.
+ *                       Fix race condition in setting up interrupt handlers
+ *                        when the `serialize' option is used.
+ * 3.01  Sep  2, 1995 -- Fix ordering of reenabling interrupts in
+ *                        cdrom_queue_request.
+ *                       Another try at using ide_[input,output]_data.
+ * 3.02  Sep 16, 1995 -- Stick total disk capacity in partition table as well.
+ *                       Make VERBOSE_IDE_CD_ERRORS dump failed command again.
+ *                       Dump out more information for ILLEGAL REQUEST errs.
+ *                       Fix handling of errors occurring before the
+ *                        packet command is transferred.
+ *                       Fix transfers with odd bytelengths.
+ * 3.03  Oct 27, 1995 -- Some Creative drives have an id of just `CD'.
+ *                       `DCI-2S10' drives are broken too.
+ * 3.04  Nov 20, 1995 -- So are Vertos drives.
+ * 3.05  Dec  1, 1995 -- Changes to go with overhaul of ide.c and ide-tape.c
+ * 3.06  Dec 16, 1995 -- Add support needed for partitions.
+ *                       More workarounds for Vertos bugs (based on patches
+ *                        from Holger Dietze <[email protected]>).
+ *                       Try to eliminate byteorder assumptions.
+ *                       Use atapi_cdrom_subchnl struct definition.
+ *                       Add STANDARD_ATAPI compilation option.
+ * 3.07  Jan 29, 1996 -- More twiddling for broken drives: Sony 55D,
+ *                        Vertos 300.
+ *                       Add NO_DOOR_LOCKING configuration option.
+ *                       Handle drive_cmd requests w/NULL args (for hdparm -t).
+ *                       Work around sporadic Sony55e audio play problem.
+ * 3.07a Feb 11, 1996 -- check drive->id for NULL before dereferencing, to fix
+ *                        problem with "hde=cdrom" with no drive present.  -ml
+ * 3.08  Mar  6, 1996 -- More Vertos workarounds.
+ * 3.09  Apr  5, 1996 -- Add CDROMCLOSETRAY ioctl.
+ *                       Switch to using MSF addressing for audio commands.
+ *                       Reformat to match kernel tabbing style.
+ *                       Add CDROM_GET_UPC ioctl.
+ * 3.10  Apr 10, 1996 -- Fix compilation error with STANDARD_ATAPI.
+ * 3.11  Apr 29, 1996 -- Patch from Heiko Eißfeldt <[email protected]>
+ *                       to remove redundant verify_area calls.
+ * 3.12  May  7, 1996 -- Rudimentary changer support.  Based on patches
+ *                        from Gerhard Zuber <[email protected]>.
+ *                       Let open succeed even if there's no loaded disc.
+ * 3.13  May 19, 1996 -- Fixes for changer code.
+ * 3.14  May 29, 1996 -- Add work-around for Vertos 600.
+ *                        (From Hennus Bergman <[email protected]>.)
+ * 3.15  July 2, 1996 -- Added support for Sanyo 3 CD changers
+ *                        from Ben Galliart <[email protected]> with
+ *                        special help from Jeff Lightfoot
+ *                        <[email protected]>
+ * 3.15a July 9, 1996 -- Improved Sanyo 3 CD changer identification
+ * 3.16  Jul 28, 1996 -- Fix from Gadi to reduce kernel stack usage for ioctl.
+ * 3.17  Sep 17, 1996 -- Tweak audio reads for some drives.
+ *                       Start changing CDROMLOADFROMSLOT to CDROM_SELECT_DISC.
+ * 3.18  Oct 31, 1996 -- Added module and DMA support.
+ *
+ * 4.00  Nov 5, 1996   -- New ide-cd maintainer,
+ *                                 Erik B. Andersen <[email protected]>
+ *                     -- Newer Creative drives don't always set the error
+ *                          register correctly.  Make sure we see media changes
+ *                          regardless.
+ *                     -- Integrate with generic cdrom driver.
+ *                     -- CDROMGETSPINDOWN and CDROMSETSPINDOWN ioctls, based on
+ *                          a patch from Ciro Cattuto <>.
+ *                     -- Call set_device_ro.
+ *                     -- Implement CDROMMECHANISMSTATUS and CDROMSLOTTABLE
+ *                          ioctls, based on patch by Erik Andersen
+ *                     -- Add some probes of drive capability during setup.
+ *
+ * 4.01  Nov 11, 1996  -- Split into ide-cd.c and ide-cd.h
+ *                     -- Removed CDROMMECHANISMSTATUS and CDROMSLOTTABLE
+ *                          ioctls in favor of a generalized approach
+ *                          using the generic cdrom driver.
+ *                     -- Fully integrated with the 2.1.X kernel.
+ *                     -- Other stuff that I forgot (lots of changes)
+ *
+ * 4.02  Dec 01, 1996  -- Applied patch from Gadi Oxman <[email protected]>
+ *                          to fix the drive door locking problems.
+ *
+ * 4.03  Dec 04, 1996  -- Added DSC overlap support.
+ * 4.04  Dec 29, 1996  -- Added CDROMREADRAW ioclt based on patch
+ *                          by Ales Makarov ([email protected])
+ *
+ * 4.05  Nov 20, 1997  -- Modified to print more drive info on init
+ *                        Minor other changes
+ *                        Fix errors on CDROMSTOP (If you have a "Dolphin",
+ *                          you must define IHAVEADOLPHIN)
+ *                        Added identifier so new Sanyo CD-changer works
+ *                        Better detection if door locking isn't supported
+ *
+ * 4.06  Dec 17, 1997  -- fixed endless "tray open" messages  -ml
+ * 4.07  Dec 17, 1997  -- fallback to set pc->stat on "tray open"
+ * 4.08  Dec 18, 1997  -- spew less noise when tray is empty
+ *                     -- fix speed display for ACER 24X, 18X
+ * 4.09  Jan 04, 1998  -- fix handling of the last block so we return
+ *                         an end of file instead of an I/O error (Gadi)
+ * 4.10  Jan 24, 1998  -- fixed a bug so now changers can change to a new
+ *                         slot when there is no disc in the current slot.
+ *                     -- Fixed a memory leak where info->changer_info was
+ *                         malloc'ed but never free'd when closing the device.
+ *                     -- Cleaned up the global namespace a bit by making more
+ *                         functions static that should already have been.
+ * 4.11  Mar 12, 1998  -- Added support for the CDROM_SELECT_SPEED ioctl
+ *                         based on a patch for 2.0.33 by Jelle Foks
+ *                         <[email protected]>, a patch for 2.0.33
+ *                         by Toni Giorgino <[email protected]>, the SCSI
+ *                         version, and my own efforts.  -erik
+ *                     -- Fixed a stupid bug which egcs was kind enough to
+ *                         inform me of where "Illegal mode for this track"
+ *                         was never returned due to a comparison on data
+ *                         types of limited range.
+ * 4.12  Mar 29, 1998  -- Fixed bug in CDROM_SELECT_SPEED so write speed is
+ *                         now set ionly for CD-R and CD-RW drives.  I had
+ *                         removed this support because it produced errors.
+ *                         It produced errors _only_ for non-writers. duh.
+ * 4.13  May 05, 1998  -- Suppress useless "in progress of becoming ready"
+ *                         messages, since this is not an error.
+ *                     -- Change error messages to be const
+ *                     -- Remove a "\t" which looks ugly in the syslogs
+ * 4.14  July 17, 1998 -- Change to pointing to .ps version of ATAPI spec
+ *                         since the .pdf version doesn't seem to work...
+ *                     -- Updated the TODO list to something more current.
+ *
+ * 4.15  Aug 25, 1998  -- Updated ide-cd.h to respect mechine endianess,
+ *                         patch thanks to "Eddie C. Dost" <[email protected]>
+ *
+ * 4.50  Oct 19, 1998  -- New maintainers!
+ *                         Jens Axboe <[email protected]>
+ *                         Chris Zwilling <[email protected]>
+ *
+ * 4.51  Dec 23, 1998  -- Jens Axboe <[email protected]>
+ *                      - ide_cdrom_reset enabled since the ide subsystem
+ *                         handles resets fine now. <[email protected]>
+ *                      - Transfer size fix for Samsung CD-ROMs, thanks to
+ *                        "Ville Hallik" <[email protected]>.
+ *                      - other minor stuff.
+ *
+ * 4.52  Jan 19, 1999  -- Jens Axboe <[email protected]>
+ *                      - Detect DVD-ROM/RAM drives
+ *
+ * 4.53  Feb 22, 1999   - Include other model Samsung and one Goldstar
+ *                         drive in transfer size limit.
+ *                      - Fix the I/O error when doing eject without a medium
+ *                         loaded on some drives.
+ *                      - CDROMREADMODE2 is now implemented through
+ *                         CDROMREADRAW, since many drives don't support
+ *                         MODE2 (even though ATAPI 2.6 says they must).
+ *                      - Added ignore parameter to ide-cd (as a module), eg
+ *                         	insmod ide-cd ignore='hda hdb'
+ *                         Useful when using ide-cd in conjunction with
+ *                         ide-scsi. TODO: non-modular way of doing the
+ *                         same.
+ *
+ * 4.54  Aug 5, 1999	- Support for MMC2 class commands through the generic
+ *			  packet interface to cdrom.c.
+ *			- Unified audio ioctl support, most of it.
+ *			- cleaned up various deprecated verify_area().
+ *			- Added ide_cdrom_packet() as the interface for
+ *			  the Uniform generic_packet().
+ *			- bunch of other stuff, will fill in logs later.
+ *			- report 1 slot for non-changers, like the other
+ *			  cd-rom drivers. don't report select disc for
+ *			  non-changers as well.
+ *			- mask out audio playing, if the device can't do it.
+ *
+ * 4.55  Sep 1, 1999	- Eliminated the rest of the audio ioctls, except
+ *			  for CDROMREADTOC[ENTRY|HEADER]. Some of the drivers
+ *			  use this independently of the actual audio handling.
+ *			  They will disappear later when I get the time to
+ *			  do it cleanly.
+ *			- Minimize the TOC reading - only do it when we
+ *			  know a media change has occurred.
+ *			- Moved all the CDROMREADx ioctls to the Uniform layer.
+ *			- Heiko Eißfeldt <[email protected]> supplied
+ *			  some fixes for CDI.
+ *			- CD-ROM leaving door locked fix from Andries
+ *			  Brouwer <[email protected]>
+ *			- Erik Andersen <[email protected]> unified
+ *			  commands across the various drivers and how
+ *			  sense errors are handled.
+ *
+ * 4.56  Sep 12, 1999	- Removed changer support - it is now in the
+ *			  Uniform layer.
+ *			- Added partition based multisession handling.
+ *			- Mode sense and mode select moved to the
+ *			  Uniform layer.
+ *			- Fixed a problem with WPI CDS-32X drive - it
+ *			  failed the capabilities
+ *
+ * 4.57  Apr 7, 2000	- Fixed sense reporting.
+ *			- Fixed possible oops in ide_cdrom_get_last_session()
+ *			- Fix locking mania and make ide_cdrom_reset relock
+ *			- Stop spewing errors to log when magicdev polls with
+ *			  TEST_UNIT_READY on some drives.
+ *			- Various fixes from Tobias Ringstrom:
+ *			  tray if it was locked prior to the reset.
+ *			  - cdrom_read_capacity returns one frame too little.
+ *			  - Fix real capacity reporting.
+ *
+ * 4.58  May 1, 2000	- Clean up ACER50 stuff.
+ *			- Fix small problem with ide_cdrom_capacity
+ *
+ * 4.59  Aug 11, 2000	- Fix changer problem in cdrom_read_toc, we weren't
+ *			  correctly sensing a disc change.
+ *			- Rearranged some code
+ *			- Use extended sense on drives that support it for
+ *			  correctly reporting tray status -- from
+ *			  Michael D Johnson <[email protected]>
+ * 4.60  Dec 17, 2003	- Add mt rainier support
+ *			- Bump timeout for packet commands, matches sr
+ *			- Odd stuff
+ * 4.61  Jan 22, 2004	- support hardware sector sizes other than 2kB,
+ *			  Pascal Schmidt <[email protected]>
+ */
Documentation/ide/ChangeLog.ide-floppy.1996-2002 new file +63 -0

63 lines not on this page · raw message

drivers/cdrom/cdrom.c +0 -6
index af05610..47e5b40 100644
@@ -2787,12 +2787,6 @@ int cdrom_ioctl(struct file * file, struct cdrom_device_info *cdi,
 	return -ENOSYS;
 }
 
-static inline
-int msf_to_lba(char m, char s, char f)
-{
-	return (((m * CD_SECS) + s) * CD_FRAMES + f) - CD_MSF_OFFSET;
-}
-
 /*
  * Required when we need to use READ_10 to issue other than 2048 block
  * reads
drivers/ide/Kconfig +32 -23

140 lines not on this page · raw message

drivers/ide/Makefile +3 -1
index 0d2da89..a4a4323 100644
@@ -40,8 +40,10 @@ obj-$(CONFIG_BLK_DEV_IDEPNP)		+= ide-pnp.o
 obj-$(CONFIG_IDE_H8300)			+= h8300/
 obj-$(CONFIG_IDE_GENERIC)		+= ide-generic.o
 
+ide-cd_mod-y += ide-cd.o ide-cd_ioctl.o ide-cd_verbose.o
+
 obj-$(CONFIG_BLK_DEV_IDEDISK)		+= ide-disk.o
-obj-$(CONFIG_BLK_DEV_IDECD)		+= ide-cd.o
+obj-$(CONFIG_BLK_DEV_IDECD)		+= ide-cd_mod.o
 obj-$(CONFIG_BLK_DEV_IDETAPE)		+= ide-tape.o
 obj-$(CONFIG_BLK_DEV_IDEFLOPPY)		+= ide-floppy.o
 
drivers/ide/arm/bast-ide.c +1 -2
index 45bf9c8..037300f 100644
@@ -1,5 +1,4 @@
-/* linux/drivers/ide/arm/bast-ide.c
- *
+/*
  * Copyright (c) 2003-2004 Simtec Electronics
  *  Ben Dooks <[email protected]>
  *
drivers/ide/arm/icside.c +14 -36

120 lines not on this page · raw message

drivers/ide/arm/rapide.c +2 -4
index e6b56d1..c8b6581 100644
@@ -1,6 +1,4 @@
 /*
- * linux/drivers/ide/arm/rapide.c
- *
  * Copyright (c) 1996-2002 Russell King.
  */
 
@@ -78,8 +76,8 @@ static void __devexit rapide_remove(struct expansion_card *ec)
 
 	ecard_set_drvdata(ec, NULL);
 
-	/* there must be a better way */
-	ide_unregister(hwif - ide_hwifs);
+	ide_unregister(hwif->index);
+
 	ecard_release_resources(ec);
 }
 
drivers/ide/cris/ide-cris.c +1 -2
index 8c3294c..0640a38 100644
@@ -1,5 +1,4 @@
-/* $Id: cris-ide-driver.patch,v 1.1 2005/06/29 21:39:07 akpm Exp $
- *
+/*
  * Etrax specific IDE functions, like init and PIO-mode setting etc.
  * Almost the entire ide.c is used for the rest of the Etrax ATA driver.
  * Copyright (c) 2000-2005 Axis Communications AB
drivers/ide/h8300/ide-h8300.c +0 -1
index 4f6d019..0243295 100644
@@ -1,5 +1,4 @@
 /*
- * drivers/ide/h8300/ide-h8300.c
  * H8/300 generic IDE interface
  */
 
drivers/ide/ide-acpi.c +0 -1
index e888fc3..68bc618 100644
@@ -1,5 +1,4 @@
 /*
- * ide-acpi.c
  * Provides ACPI support for IDE drives.
  *
  * Copyright (C) 2005 Intel Corp.
drivers/ide/ide-cd.c +532 -1801

2,348 lines not on this page · raw message

drivers/ide/ide-cd.h +67 -639

706 lines not on this page · raw message

drivers/ide/ide-cd_ioctl.c new file +475 -0

475 lines not on this page · raw message

drivers/ide/ide-cd_verbose.c new file +359 -0

359 lines not on this page · raw message

drivers/ide/ide-disk.c +5 -6
index 717e114..3c69822 100644

Lines of this file are not shown. View the raw message.

drivers/ide/ide-dma.c +54 -56

110 lines not on this page · raw message

drivers/ide/ide-floppy.c +6 -116

122 lines not on this page · raw message

drivers/ide/ide-io.c +1 -1
index e6bb9cf..4bddef0 100644

Lines of this file are not shown. View the raw message.

drivers/ide/ide-iops.c +1 -3
index e2a7e95..16b1f6e 100644

Lines of this file are not shown. View the raw message.

drivers/ide/ide-lib.c +4 -2
index 9b44fbd..b42940d 100644

Lines of this file are not shown. View the raw message.

drivers/ide/ide-pnp.c +0 -2
index cbbb0f7..4bda5cf 100644

Lines of this file are not shown. View the raw message.

drivers/ide/ide-probe.c +84 -106

190 lines not on this page · raw message

drivers/ide/ide-proc.c +0 -2
index aa663e7..00c249c 100644

Lines of this file are not shown. View the raw message.

drivers/ide/ide-scan-pci.c +2 -7
index 7ffa332..93d2e41 100644

Lines of this file are not shown. View the raw message.

drivers/ide/ide-tape.c +6 -74

80 lines not on this page · raw message

drivers/ide/ide-taskfile.c +5 -7
index 5eb6fa1..16a9a58 100644

Lines of this file are not shown. View the raw message.

drivers/ide/ide-timing.h +0 -2
index daffbb9..adeda76 100644

Lines of this file are not shown. View the raw message.

drivers/ide/ide.c +58 -58

116 lines not on this page · raw message

drivers/ide/legacy/ali14xx.c +0 -2
index 5ec0be4..e3ea209 100644

Lines of this file are not shown. View the raw message.

drivers/ide/legacy/buddha.c +1 -1
index 74d28e0..dd3d198 100644

Lines of this file are not shown. View the raw message.

drivers/ide/legacy/dtc2278.c +0 -2
index 13eee6d..611c970 100644

Lines of this file are not shown. View the raw message.

drivers/ide/legacy/falconide.c +2 -1
index 2860956..c9bd6bf 100644

Lines of this file are not shown. View the raw message.

drivers/ide/legacy/gayle.c +1 -1
index 492fa04..f67c51a 100644

Lines of this file are not shown. View the raw message.

drivers/ide/legacy/ht6560b.c +0 -2
index 8da5031..57bc15c 100644

Lines of this file are not shown. View the raw message.

drivers/ide/legacy/ide-cs.c +0 -2
index f4ea15b..3bd2967 100644

Lines of this file are not shown. View the raw message.

drivers/ide/legacy/ide_platform.c +8 -26
index 69a0fb0..7c3231a 100644

Lines of this file are not shown. View the raw message.

drivers/ide/legacy/macide.c +1 -1
index 782d4c7..c54d07f 100644

Lines of this file are not shown. View the raw message.

drivers/ide/legacy/q40ide.c +1 -1
index f532973..a9c6b06 100644

Lines of this file are not shown. View the raw message.

drivers/ide/legacy/qd65xx.c +0 -2
index 2bac4c1..37534bb 100644

Lines of this file are not shown. View the raw message.

drivers/ide/legacy/qd65xx.h +0 -2
index 633a424..28dd50a 100644

Lines of this file are not shown. View the raw message.

drivers/ide/legacy/umc8672.c +0 -2
index a1ae1ae..26f38ce 100644

Lines of this file are not shown. View the raw message.

drivers/ide/mips/au1xxx-ide.c +8 -35

43 lines not on this page · raw message

drivers/ide/pci/aec62xx.c +5 -6
index 7f4d185..824df78 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/alim15x3.c +11 -9
index 49aa82e..130cc6e 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/amd74xx.c +128 -153

281 lines not on this page · raw message

drivers/ide/pci/atiixp.c +4 -7
index 4918719..b56274a 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/cmd640.c +0 -2
index da3565e..7240c20 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/cmd64x.c +10 -10
index cd4eb9d..04aa9e5 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/cs5520.c +1 -1
index 6ec00b8..9e01c6d 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/cs5530.c +0 -2
index df5966b..765aac3 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/cs5535.c +3 -3
index 50b3d77..66433aa 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/cy82c693.c +3 -4
index 3ec4c65..50100ac 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/delkin_cb.c +1 -3
index 26aa492..27e47fc 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/generic.c +2 -3
index 0688569..59ebe84 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/hpt34x.c +3 -3
index dfba0d1..25dbb81 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/hpt366.c +18 -15
index 1268593..5623cad 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/it8213.c +4 -3
index 2a0f45c..df74e58 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/it821x.c +28 -22

50 lines not on this page · raw message

drivers/ide/pci/jmicron.c +1 -1
index 0083eaf..8b40f64 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/ns87415.c +9 -11
index d4df464..fc9eee9 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/opti621.c +0 -2
index 8953d9c..0ce92d3 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/pdc202xx_new.c +4 -2
index 89d2363..bb29db0 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/pdc202xx_old.c +9 -8
index 3a1e081..31a1308 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/piix.c +4 -51

55 lines not on this page · raw message

drivers/ide/pci/rz1000.c +1 -3
index 6b10ae2..7ed6625 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/sc1200.c +6 -8
index 32fdf53..af499a6 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/scc_pata.c +6 -7
index 24a85bb..7694969 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/serverworks.c +14 -10
index 877c09b..f495253 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/sgiioc4.c +9 -10
index 9e0be7d..8590207 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/siimage.c +30 -23

53 lines not on this page · raw message

drivers/ide/pci/sis5513.c +11 -13
index 85d3699..2a461de 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/sl82c105.c +10 -9
index c7a125b..da13a12 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/slc90e66.c +4 -5
index dbbb468..a6cf810 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/tc86c001.c +2 -3
index e1faf6c..9fbbb4f 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/triflex.c +1 -3
index ae52a96..852b726 100644

Lines of this file are not shown. View the raw message.

drivers/ide/pci/trm290.c +38 -27

65 lines not on this page · raw message

drivers/ide/pci/via82cxxx.c +7 -8
index 4b32c90..24cb904 100644

Lines of this file are not shown. View the raw message.

drivers/ide/ppc/mpc8xx.c +0 -2
index 3fd5d45..45c1d55 100644

Lines of this file are not shown. View the raw message.

drivers/ide/ppc/pmac.c +18 -21
index 736d12c..23112ef 100644

Lines of this file are not shown. View the raw message.

drivers/ide/setup-pci.c +41 -53

94 lines not on this page · raw message

drivers/scsi/ide-scsi.c +2 -3
index db8bc20..5ed0006 100644

Lines of this file are not shown. View the raw message.

include/asm-mips/mach-au1x00/au1xxx_ide.h +0 -1
index aef0edb..e4fe26c 100644

Lines of this file are not shown. View the raw message.

include/linux/cdrom.h +14 -0
index fcdc11b..a5cd204 100644

Lines of this file are not shown. View the raw message.

include/linux/hdsmart.h +2 -0
index 7974a47..e691921 100644

Lines of this file are not shown. View the raw message.

include/linux/ide.h +20 -20
index 27cb39d..ec10b2a 100644

Lines of this file are not shown. View the raw message.

The rest of this diff is not shown. View the raw message.

Part of the diff is not shown here. View the raw message.