14 Oct, 2008

40 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (66 commits)
    ata: Add documentation for hard disk shock protection interface (v3)
    ide: Implement disk shock protection support (v4)
    ide-cd: fix printk format warning
    piix: add Hercules EC-900 mini-notebook to ich_laptop short cable list
    ide-atapi: assign taskfile flags per device type
    ide-cd: move cdrom_info.dma to ide_drive_t.dma
    ide: add ide_drive_t.dma flag
    ide-cd: add a debug_mask module parameter
    ide-cd: convert driver to new ide debugging macro (v3)
    ide: move SFF DMA code to ide-dma-sff.c
    ide: cleanup ide-dma.c
    ide: cleanup ide_build_dmatable()
    ide: remove needless includes from ide-dma.c
    ide: switch to DMA-mapping API part #2
    ide: make ide_dma_timeout() available also for CONFIG_BLK_DEV_IDEDMA_SFF=n
    ide: make ide_dma_lost_irq() available also for CONFIG_BLK_DEV_IDEDMA_SFF=n
    ide: __ide_dma_end() -> ide_dma_end()
    pmac: remove needless pmac_ide_destroy_dmatable() wrapper
    pmac: remove superfluous pmif == NULL checks
    ide: Two fixes regarding memory allocation
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6: (49 commits)
    pcmcia: ioctl-internal definitions
    pcmcia: cistpl header cleanup
    pcmcia: remove unused argument to pcmcia_parse_tuple()
    pcmcia: card services header cleanup
    pcmcia: device_id header cleanup
    pcmcia: encapsulate ioaddr_t
    pcmcia: cleanup device driver header file
    pcmcia: cleanup socket services header file
    pcmcia: merge ds_internal.h into cs_internal.h
    pcmcia: cleanup cs_internal.h
    pcmcia: cs_internal.h is internal
    pcmcia: use dev_printk for cs_error()
    pcmcia: remove CS_ error codes alltogether
    pcmcia: deprecate CS_BAD_TUPLE
    pcmcia: deprecate CS_BAD_ARGS
    pcmcia: deprecate CS_BAD_BASE, CS_BAD_IRQ, CS_BAD_OFFSET and CS_BAD_SIZE
    pcmcia: deprecate CS_BAD_ATTRIBUTE, CS_BAD_TYPE and CS_BAD_PAGE
    pcmcia: deprecate CS_NO_MORE_ITEMS
    pcmcia: deprecate CS_IN_USE
    pcmcia: deprecate CS_CONFIGURATION_LOCKED
    ...

    Fix trivial conflict in drivers/pcmcia/ds.c manually

    Linus Torvalds
     
  • * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (313 commits)
    V4L/DVB (9186): Added support for Prof 7300 DVB-S/S2 cards
    V4L/DVB (9185): S2API: Ensure we have a reasonable ROLLOFF default
    V4L/DVB (9184): cx24116: Change the default SNR units back to percentage by default.
    V4L/DVB (9183): S2API: Return error of the caller provides 0 commands.
    V4L/DVB (9182): S2API: Added support for DTV_HIERARCHY
    V4L/DVB (9181): S2API: Add support fot DTV_GUARD_INTERVAL and DTV_TRANSMISSION_MODE
    V4L/DVB (9180): S2API: Added support for DTV_CODE_RATE_HP/LP
    V4L/DVB (9179): S2API: frontend.h cleanup
    V4L/DVB (9178): cx24116: Add module parameter to return SNR as ESNO.
    V4L/DVB (9177): S2API: Change _8PSK / _16APSK to PSK_8 and APSK_16
    V4L/DVB (9176): Add support for DvbWorld USB cards with STV0288 demodulator.
    V4L/DVB (9175): Remove NULL pointer in stb6000 driver.
    V4L/DVB (9174): Allow custom inittab for ST STV0288 demodulator.
    V4L/DVB (9173): S2API: Remove the hardcoded command limit during validation
    V4L/DVB (9172): S2API: Bugfix related to DVB-S / DVB-S2 tuning for the legacy API.
    V4L/DVB (9171): S2API: Stop an OOPS if illegal commands are dumped in S2API.
    V4L/DVB (9170): cx24116: Sanity checking to data input via S2API to the cx24116 demod.
    V4L/DVB (9169): uvcvideo: Support two new Bison Electronics webcams.
    V4L/DVB (9168): Add support for MSI TV@nywhere Plus remote
    V4L/DVB: v4l2-dev: remove duplicated #include
    ...

    Linus Torvalds
     
  • On user request (through sysfs), the IDLE IMMEDIATE command with UNLOAD
    FEATURE as specified in ATA-7 is issued to the device and processing of
    the request queue is stopped thereafter until the specified timeout
    expires or user space asks to resume normal operation. This is supposed
    to prevent the heads of a hard drive from accidentally crashing onto the
    platter when a heavy shock is anticipated (like a falling laptop expected
    to hit the floor). Port resets are deferred whenever a device on that
    port is in the parked state.

    v3:
    Elias Oltmanns wrote:
    [...]
    > >> 1. Make sure that no negative value is being passed to
    > >> jiffies_to_msecs() in ide_park_show().
    > >> 2. Drop the superfluous variable hwif in ide_special_rq().
    > >> 3. Skip initialisation of task and tf in ide_special_rq() if we are not
    > >> handling a (un)park request.
    > >
    > > Well, #3 should have been done differently because we donn't want to
    > > check for REQ_(UN)?PARK_HEADS more often than is necessary.
    >
    > While preparing the backport to 2.6.27, it has just occurred to me that
    > we need to clear the IDE_DFLAG_PARKED flag in ide_disk_pre_reset()
    > because this flag must not be set after *any* sort of access to the
    > device.

    v4:
    Fix a memory leak due to a missing blk_put_request() in
    issue_park_cmd(). Additionally, we should plug the queue when enqueueing
    the unpark request because there is no guarantee that the park timeout
    has not expired by then. Even though the chance for that to happen is
    very slim, the request might end up hanging in the queue until the next
    I/O operation is queued up. While at it, clean up the code a little:
    - make issue_park_cmd() a function of type void since nobody cares for
    the return value anyway;
    - use blk_start_queueing() instead of __blk_run_queue() since we don't
    have to worry about recursion;
    - remove a superfluous pointer deference in task_no_data_intr().

    Signed-off-by: Elias Oltmanns
    Cc: Jeff Garzik ,
    Cc: Randy Dunlap
    Cc: Tejun Heo
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Elias Oltmanns
     
  • This flag is to accomodate ide-cd functionality into ide atapi.

    There should be no functionality change resulting from this patch.

    Signed-off-by: Borislav Petkov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Borislav Petkov
     
  • Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Follow-up to commit 5c05ff68b9a9b40a9be949497e0aa980185565cf
    ("ide: switch to DMA-mapping API"):

    * pci_{alloc,free}_consistent() -> dma_{alloc,free}_coherent()
    in ide_{allocate,release}_dma_engine().

    * Add ->prd_max_nents and ->prd_ent_size fields to ide_hwif_t
    (+ set default values in ide_allocate_dma_engine()).

    * Make ide_{allocate,release}_dma_engine() available also
    for CONFIG_BLK_DEV_IDEDMA_SFF=n. Then convert au1xxx-ide.c,
    scc_pata.c and sgiioc4.c to use them.

    * Add missing ->init_dma method to scc_pata.

    This patch also fixes:
    - ->dmatable_cpu leak for au1xxx-ide
    - too early realease of ->dmatable_cpu for scc_pata
    - wrong amount of ->dmatable_cpu memory being freed for sgiioc4

    While at it:
    - remove superfluous ->dma_base check from ide_unregister()
    - return -ENOMEM on error in ide_release_dma_engine()
    - beautify error message in ide_release_dma_engine()

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Make ide_dma_timeout() available also for CONFIG_BLK_DEV_IDEDMA_SFF=n
    and convert {ics,au1xxx-}ide.c to use it.

    While at it:
    - dump ATA Status register content on error
    - use EXPORT_SYMBOL_GPL() to match the rest of SFF DMA functions

    Acked-by: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Make ide_dma_lost_irq() available also for CONFIG_BLK_DEV_IDEDMA_SFF=n
    and convert {ics,au1xxx-}ide.c to use it.

    While at it:
    - use EXPORT_SYMBOL_GPL() to match the rest of SFF DMA functions

    Acked-by: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • While at it:
    - use EXPORT_SYMBOL_GPL() to match the rest of SFF DMA functions

    Acked-by: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • While at it:
    - idedisk_ioctl() -> ide_disk_ioctl()

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Remove no longer used ide_host_alloc_all().

    * Add MAX_HOST_PORTS define and use it instead of MAX_HWIFS
    as the maximum number of host ports possible.

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Rename ->ide_dma_clear_irq method to ->clear_irq
    and move it from ide_hwif_t to struct ide_port_ops.

    * Move ->waiting_for_dma check inside ->clear_irq method.

    * Move ->dma_base check inside ->clear_irq method.

    piix.c:
    * Add ich_port_ops and remove init_hwif_ich() wrapper.

    There should be no functional changes caused by this patch.

    Acked-by: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Add 'struct task_s' to ide_hwif_t and init it to the current command
    in do_rw_taskfile().

    * Merge all TASKFILE_NO_DATA data phase handlers into taskfile_no_intr().

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Convert 'pio_mode' device setting to use DS_SYNC flag.

    * Remove unused special_t.b.{set_tune,serviced} and ide_drive_t.tune_req.

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Use 'drive->dn & 1' in ide_init_disk().

    * remove [ata_]select_t.

    While at it:

    * Use ATA_DEVICE_OBS define in ide_port_init_devices_data().

    Acked-by: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Move ide*_pm_* enums from ide-io.c to .

    * idedisk_pm_* -> ide_pm_*

    * ide_pm_state_* -> ide_pm_*

    * No need to set ide_pm_* enums to the fixed values.

    * Uppercase ide_pm_* enums.

    * Fix/update comments.

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Add IDE_DFLAG_LBA device flag and use it instead of ->select.b.lba.

    Since ->tf_load uses ->select.all for ATA Device/Head register this
    fixes HDIO_DRIVE_TASK[FILE] ioctls for CHS commands on LBA devices.

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Acked-by: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Acked-by: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Add IDE_DFLAG_DMA_PIO_RETRY and use it instead of
    ide_drive_t.state + DMA_PIO_RETRY.

    There should be no functional changes cause by this patch.

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Add 'unsigned long dev_flags' to ide_drive_t and convert bitfields
    to IDE_DFLAG_* flags.

    While at it:
    - IDE_DFLAG_ADDRESSING -> IDE_DFLAG_LBA48
    - fixup some comments
    - remove needless g->flags zeroing from ide*_probe()

    There should be no functional changes caused by this patch.

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Return -EIO if arg > 0 and LBA48 is unsupported.

    * No need to reset ->addressing.

    * Make ->addressing a single bit flag.

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Add __ide_debug_log() debugging macro which is controlled by drive->debug_mask.
    The macro has to have the macro DRV_NAME defined in each driver before use.
    Also, add different debugging levels depending on the functionality debugged.

    Signed-off-by: Borislav Petkov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Borislav Petkov
     
  • Add a debugging on/off switch for controlling driver debugging
    messages dynamically.

    Signed-off-by: Borislav Petkov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Borislav Petkov
     
  • Introduce to_ide_drv() and ide_drv_g() macros and replace the respective
    definitions of similar ones in each driver.

    There should be no functionality change resulting from this patch.

    Signed-off-by: Borislav Petkov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Borislav Petkov
     
  • * Move ->ticks field from struct ide_floppy_obj to ide_drive_t.

    * Move idefloppy_transfer_pc() to ide-atapi.c and make
    ide_transfer_pc() use it.

    * Always use ide_transfer_pc as a handler in ide_issue_pc().

    * Remove no longer used idefloppy_start_pc_transfer(),
    ide*_transfer_pc() and 'handler' argument from ide_issue_pc().

    * Make ide_transfer_pc() static.

    While at it:

    * idefloppy_transfer_pc() -> ide_delayed_transfer_pc()

    * IDEFLOPPY_TICKS_DELAY -> IDEFLOPPY_PC_DELAY

    * ->ticks -> ->pc_delay

    There should be no functional changes caused by this patch.

    Cc: Borislav Petkov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Always use ide_pc_intr as a handler in ide_pc_intr().

    * Remove no longer used ide*_pc_intr() and 'handler'
    argument from ide_{transfer_pc,pc_intr}().

    * Make ide_pc_intr() static.

    There should be no functional changes caused by this patch.

    Cc: Borislav Petkov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Add ->pc_{update,io}_buffers methods to ide_drive_t and use
    them instead of {update,io}_buffers ide_pc_intr() arguments.

    There should be no functional changes caused by this patch.

    Cc: Borislav Petkov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Add ide_create_request_sense_cmd() and ide_retry_pc() helpers
    and convert ide-{atapi,floppy,tape}.c to use them.

    * Remove no longer used ide*_create_request_sense_cmd(),
    ide*_retry_pc() and 'retry_pc' argument from ide_pc_intr().

    * Make ide_queue_pc_head() static.

    There should be no functional changes caused by this patch.

    Cc: Borislav Petkov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Add 'struct ide_atapi_pc request_sense_pc' and 'request request_sense_rq' to
    ide_drive_t and use them instead of fields in struct ide_{floppy,tape}_obj.

    There should be no functional changes caused by this patch.

    Cc: Borislav Petkov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Move idescsi_expiry() to ide-atapi.c.

    * Move get_timeout() to .

    * Drop 'timeout' and 'expiry' arguments from ide_pc_intr().

    While at it:

    * idescsi_expiry() -> ide_scsi_expiry()

    * get_timeout() -> ide_scsi_get_timeout()

    There should be no functional changes caused by this patch.

    Cc: Borislav Petkov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Add pointer to the current packet command (struct ide_atapi_pc *pc)
    to ide_drive_t and use it instead of the pointer in struct ide_*_obj.

    * Use drive->pc in ide_{issue,transfer}_pc() and ide_pc_intr()
    instead of 'pc' argument.

    There should be no functional changes caused by this patch.

    Cc: Borislav Petkov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Add 'int dsc' argument to ->pc_callback method.

    * Call ide_tape_handle_dsc() internally in ide_tape_callback()
    if dsc argument is set and update ide_pc_intr() accordingly.

    There should be no functional changes caused by this patch.

    Cc: Borislav Petkov
    Acked-by: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • This is a much better version of a previous patch to make the parser
    tables constant. Rather than changing the typedef, we put the "const" in
    all the various places where its required, allowing the __initconst
    exception for nfsroot which was the cause of the previous trouble.

    This was posted for review some time ago and I believe its been in -mm
    since then.

    Signed-off-by: Steven Whitehouse
    Cc: Alexander Viro
    Signed-off-by: Linus Torvalds

    Steven Whitehouse
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (33 commits)
    ALSA: ASoC codec: remove unused #include
    ALSA: ASoC: update email address for Liam Girdwood
    ALSA: hda: corrected invalid mixer values
    ALSA: hda: add mixers for analog mixer on 92hd75xx codecs
    ALSA: ASoC: Add destination and source port for DMA on OMAP1
    ALSA: ASoC: Drop device registration from GTA01 lm4857 driver
    ALSA: ASoC: Fix build of GTA01 audio driver
    ALSA: ASoC: Add widgets before setting endpoints on GTA01
    ALSA: ASoC: Fix inverted input PGA mute bits in WM8903
    ALSA: ASoC: OMAP: Set DMA stream name at runtime in McBSP DAI driver
    ALSA: ASoC: OMAP: Add support for OMAP2430 and OMAP34xx in McBSP DAI driver
    ALSA: ASoC: OMAP: Add multilink support to McBSP DAI driver
    ALSA: ASoC: Make TLV320AIC26 user-visible
    ALSA: ASoC - clean up Kconfig for TLV320AIC2
    ALSA: ASoC: Make WM8510 microphone input a DAPM mixer
    ALSA: ASoC: Implement WM8510 bias level control
    ALSA: ASoC: Remove unused AUDIO_NAME define from codec drivers
    ALSA: ASoC: tlv320aic3x: Use uniform tlv320aic naming
    ALSA: ASoC: Add WM8510 SPI support
    ALSA: ASoC: Add WM8753 SPI support
    ...

    Linus Torvalds
     
  • …s/security-testing-2.6

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6: (24 commits)
    integrity: special fs magic
    As pointed out by Jonathan Corbet, the timer must be deleted before
    ERROR: code indent should use tabs where possible
    The tpm_dev_release function is only called for platform devices, not pnp
    Protect tpm_chip_list when transversing it.
    Renames num_open to is_open, as only one process can open the file at a time.
    Remove the BKL calls from the TPM driver, which were added in the overall
    netlabel: Add configuration support for local labeling
    cipso: Add support for native local labeling and fixup mapping names
    netlabel: Changes to the NetLabel security attributes to allow LSMs to pass full contexts
    selinux: Cache NetLabel secattrs in the socket's security struct
    selinux: Set socket NetLabel based on connection endpoint
    netlabel: Add functionality to set the security attributes of a packet
    netlabel: Add network address selectors to the NetLabel/LSM domain mapping
    netlabel: Add a generic way to create ordered linked lists of network addrs
    netlabel: Replace protocol/NetLabel linking with refrerence counts
    smack: Fix missing calls to netlbl_skbuff_err()
    selinux: Fix missing calls to netlbl_skbuff_err()
    selinux: Fix a problem in security_netlbl_sid_to_secattr()
    selinux: Better local/forward check in selinux_ip_postroute()
    ...

    Linus Torvalds
     
  • * git://git.infradead.org/users/dwmw2/random-2.6:
    Fix autoloading of MacBook Pro backlight driver.
    Automatic MODULE_ALIAS() for DMI match tables.
    Remove asm/a.out.h files for all architectures without a.out support.
    Introduce HAVE_AOUT symbol to remove hard-coded arch list for BINFMT_AOUT
    Remove redundant CONFIG_ARCH_SUPPORTS_AOUT
    S390: Update comments about why we don't use
    SPARC: Use
    PowerPC: Use
    PARISC: Use
    x86_64: Use
    IA64: Use
    ARM: Use
    Make suitable for 64-bit platforms.
    Define and use PCI_DEVICE_ID_MARVELL_88ALP01_CCIC for CAFÉ camera driver
    [MTD] [NAND] Define and use PCI_DEVICE_ID_MARVELL_88ALP01_NAND for CAFÉ
    Use PCI_DEVICE_ID_88ALP01 for CAFÉ chip, rather than PCI_DEVICE_ID_CAFE.
    EFS: Don't set f_fsid in statfs().

    Linus Torvalds
     
  • Merges oprofile, timers/hpet, x86/traps, x86/time, and x86/core misc items.

    * 'x86-core-v4-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (132 commits)
    x86: change early_ioremap to use slots instead of nesting
    x86: adjust dependencies for CONFIG_X86_CMOV
    dumpstack: x86: various small unification steps, fix
    x86: remove additional_cpus
    x86: remove additional_cpus configurability
    x86: improve UP kernel when CPU-hotplug and SMP is enabled
    dumpstack: x86: various small unification steps
    dumpstack: i386: make kstack= an early boot-param and add oops=panic
    dumpstack: x86: use log_lvl and unify trace formatting
    dumptrace: x86: consistently include loglevel, print stack switch
    dumpstack: x86: add "end" parameter to valid_stack_ptr and print_context_stack
    dumpstack: x86: make printk_address equal
    dumpstack: x86: move die_nmi to dumpstack_32.c
    traps: x86: finalize unification of traps.c
    traps: x86: make traps_32.c and traps_64.c equal
    traps: x86: various noop-changes preparing for unification of traps_xx.c
    traps: x86_64: use task_pid_nr(tsk) instead of tsk->pid in do_general_protection
    traps: i386: expand clear_mem_error and remove from mach_traps.h
    traps: x86_64: make io_check_error equal to the one on i386
    traps: i386: use preempt_conditional_sti/cli in do_int3
    ...

    Linus Torvalds
     
  • Move the set up on ldisc change into the ldisc
    Move the INQ/OUTQ cases into the driver not in shared ioctl code where it
    gives bogus answers for other ldisc values

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox