1. 26 1月, 2008 7 次提交
    • B
      ide: remove unnecessary writes to HOB taskfile registers · a3bbb9d8
      Bartlomiej Zolnierkiewicz 提交于
      * Set taskfile flags for REQ_TYPE_ATA_TASKFILE requests before
        adding the request to the queue.
      
      * Cleanup execute_drive_cmd().
      
      * Remove unnecessary writes to HOB taskfile registers when using
        LBA48 disk for the following cases:
      
        - Power Management requests
          (WIN_FLUSH_CACHE[_EXT], WIN_STANDBYNOW1, WIN_IDLEIMMEDIATE commands)
      
        - special commands (WIN_SPECIFY, WIN_RESTORE, WIN_SETMULT)
      
        - Host Protected Area support (WIN_READ_NATIVE_MAX, WIN_SET_MAX)
      
        - /proc/ide/ SMART support (WIN_SMART with SMART_ENABLE,
          SMART_READ_VALUES and SMART_READ_THRESHOLDS subcommands)
      
        - write cache enabling/disabling in ide-disk
          (WIN_SETFEATURES with SETFEATURES_{EN,DIS}_WCACHE)
      
        - write cache flushing in ide-disk (WIN_FLUSH_CACHE[_EXT])
      
        - acoustic management in ide-disk
          (WIN_SETFEATURES with SETFEATURES_{EN,DIS}_AAM)
      
        - door (un)locking in ide-disk (WIN_DOORLOCK, WIN_DOORUNLOCK)
      
        - /proc/ide/hd?/identify support (WIN_IDENTIFY)
      
        - ACPI _GTF taskfiles
      Signed-off-by: NBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      a3bbb9d8
    • B
      ide: use ide_tf_load() in execute_drive_cmd() · 807e35d6
      Bartlomiej Zolnierkiewicz 提交于
      * Add IDE_TFLAG_OUT_DEVICE taskfile flag to indicate the need of writing
        the Device register and handle it in ide_tf_load().
      
        Update ide_tf_load() and {do_rw,flagged}_taskfile() users accordingly.
      
      * Use struct ide_taskfile and ide_tf_load() in execute_drive_cmd().
      
      * Make the debugging code dump all taskfile registers for both
        REQ_ATA_TYPE_{CMD,TASK} requests and move it to ide_tf_load()
        so it also covers REQ_ATA_TYPE_TASKFILE requests.
      
      There should be no functionality changes caused by this patch
      (unless DEBUG is defined).
      Signed-off-by: NBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      807e35d6
    • B
      ide: use do_rw_taskfile() in flagged_taskfile() · 74095a91
      Bartlomiej Zolnierkiewicz 提交于
      Based on the earlier work by Tejun Heo.
      
      * Move setting IDE_TFLAG_LBA48 taskfile flag from do_rw_taskfile()
        function to the callers.
      
      * Add IDE_TFLAG_FLAGGED taskfile flag for flagged taskfiles coming
        from ide_taskfile_ioctl().  Check it instead of ->tf_out_flags.all.
      
      * Add IDE_TFLAG_OUT_DATA taskfile flag to indicate the need to load
        IDE data register in ide_tf_load().
      
      * Add IDE_TFLAG_OUT_* taskfile flags to indicate the need to load
        particular IDE taskfile registers in ide_tf_load().
      
      * Update do_rw_taskfile() and ide_tf_load() users to set respective
        IDE_TFLAG_OUT_* taksfile flags.
      
      * Add task_dma_ok() helper.
      
      * Use IDE_TFLAG_FLAGGED taskfile flag to select HIHI mask in ide_tf_load().
      
      * Use do_rw_taskfile() in flagged_taskfile().
      
      * Remove no longer needed 'tf_out_flags' field from ide_task_t.
      
      There should be no functionality changes caused by this patch.
      
      Cc: Tejun Heo <htejun@gmail.com>
      Signed-off-by: NBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      74095a91
    • B
      ide: add ide_no_data_taskfile() helper · 9a3c49be
      Bartlomiej Zolnierkiewicz 提交于
      * Add ide_no_data_taskfile() helper and convert ide_raw_taskfile() w/ NO DATA
        protocol users to use it instead.
      
      * Set ->data_phase explicitly in ide_no_data_taskfile()
        (TASKFILE_NO_DATA is defined as 0x0000).
      
      * Unexport task_no_data_intr().
      Acked-by: NSergei Shtylyov <sshtylyov@ru.mvista.com>
      Signed-off-by: NBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      9a3c49be
    • B
      ide: add ide_tf_load() helper · 9e42237f
      Bartlomiej Zolnierkiewicz 提交于
      Based on the earlier work by Tejun Heo.
      
      * Add 'tf_flags' field (for taskfile flags) to ide_task_t.
      
      * Add IDE_TFLAG_LBA48 taskfile flag for LBA48 taskfiles.
      
      * Add IDE_TFLAG_NO_SELECT_MASK taskfile flag for __ide_do_rw_disk()
        which doesn't use SELECT_MASK() (looks like a bug but it requires
        some more investigation).
      
      * Split off ide_tf_load() helper from do_rw_taskfile().
      
      * Convert __ide_do_rw_disk() to use ide_tf_load().
      
      There should be no functionality changes caused by this patch.
      
      Cc: Tejun Heo <htejun@gmail.com>
      Acked-by: NSergei Shtylyov <sshtylyov@ru.mvista.com>
      Signed-off-by: NBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      9e42237f
    • B
      ide: add struct ide_taskfile (take 2) · 650d841d
      Bartlomiej Zolnierkiewicz 提交于
      * Don't set write-only ide_task_t.hobRegister[6] and ide_task_t.hobRegister[7]
        in idedisk_set_max_address_ext().
      
      * Add struct ide_taskfile and use it in ide_task_t instead of tfRegister[]
        and hobRegister[].
      
      * Remove no longer needed IDE_CONTROL_OFFSET_HOB define.
      
      * Add #ifndef/#endif __KERNEL__ around definitions of {task,hob}_struct_t.
      
      While at it:
      
      * Use ATA_LBA define for LBA bit (0x40) as suggested by Tejun Heo.
      
      v2:
      * Add missing newlines. (Noticed by Sergei)
      
      * Use ~ATA_LBA instead of 0xBF. (Noticed by Sergei)
      
      * Use unnamed unions for error/feature and status/command.
        (Suggested by Sergei).
      
      There should be no functionality changes caused by this patch.
      Acked-by: NSergei Shtylyov <sshtylyov@ru.mvista.com>
      Cc: Tejun Heo <htejun@gmail.com>
      Signed-off-by: NBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      650d841d
    • B
      ide: remove task_ioreg_t typedef (take 2) · cd2a2d96
      Bartlomiej Zolnierkiewicz 提交于
      Remove task_ioreg_t typedef from the kernel code (but leave it
      in <linux/hdreg.h> for #ifndef/#endif __KERNEL__ case).
      
      While at it also move sata_ioreg_t typedef under #ifndef/#endif __KERNEL__.
      
      v2:
      Remove name of the second parameter from ide_execute_command() declaration.
      (Noticed by Sergei).
      Acked-by: NSergei Shtylyov <sshtylyov@ru.mvista.com>
      Signed-off-by: NBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      cd2a2d96
  2. 06 11月, 2007 2 次提交
  3. 23 10月, 2007 1 次提交
  4. 20 10月, 2007 3 次提交
  5. 16 10月, 2007 1 次提交
  6. 04 7月, 2007 1 次提交
    • M
      ide: never called printk statement in ide-taskfile.c::wait_drive_not_busy · b42fa133
      Masatake YAMATO 提交于
      Look at wait_drive_not_busy in drivers/ide/ide-taskfile.c:
      
          static u8 wait_drive_not_busy(ide_drive_t *drive)
          {
                  ide_hwif_t *hwif = HWIF(drive);
                  int retries = 100;
                  u8 stat;
      
                  /*
                   * Last sector was transfered, wait until drive is ready.
                   * This can take up to 10 usec, but we will wait max 1 ms
                   * (drive_cmd_intr() waits that long).
                   */
                  while (((stat = hwif->INB(IDE_STATUS_REG)) & BUSY_STAT) && retries--)
                          udelay(10);
      
                  if (!retries)
                          printk(KERN_ERR "%s: drive still BUSY!\n", drive->name);
      
                  return stat;
          }
      
      `printk' is never called because `retries' never holds zero at the
      outside of `while' loop: when `retries' holds zero at the while's loop
      condition, `retries' will hold -1 at the if condition.
      Signed-off-by: NMasatake YAMATO <jet@gyve.org>
      Cc: Chuck Ebbert <cebbert@redhat.com>
      Cc: joe@perches.com
      Signed-off-by: NBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      b42fa133
  7. 16 10月, 2006 1 次提交
  8. 01 10月, 2006 1 次提交
    • J
      [PATCH] Split struct request ->flags into two parts · 4aff5e23
      Jens Axboe 提交于
      Right now ->flags is a bit of a mess: some are request types, and
      others are just modifiers. Clean this up by splitting it into
      ->cmd_type and ->cmd_flags. This allows introduction of generic
      Linux block message types, useful for sending generic Linux commands
      to block devices.
      Signed-off-by: NJens Axboe <axboe@suse.de>
      4aff5e23
  9. 04 7月, 2006 1 次提交
  10. 01 7月, 2006 1 次提交
  11. 23 6月, 2006 1 次提交
  12. 01 4月, 2006 1 次提交
  13. 16 2月, 2006 1 次提交
  14. 15 1月, 2006 1 次提交
  15. 20 11月, 2005 2 次提交
  16. 10 11月, 2005 1 次提交
  17. 07 11月, 2005 2 次提交
  18. 18 9月, 2005 1 次提交
  19. 17 4月, 2005 1 次提交
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      
      Let it rip!
      1da177e4