1. 19 Jul, 2007 2 commits
    • Bartlomiej Zolnierkiewicz's avatar
      ide: add ide_pci_device_t.host_flags (take 2) · a5d8c5c8
      Bartlomiej Zolnierkiewicz authored
      * Rename ide_pci_device_t.flags to ide_pci_device_t.host_flags
        and IDEPCI_FLAG_ISA_PORTS flag to IDE_HFLAG_ISA_PORTS.
      
      * Add IDE_HFLAG_SINGLE flag for single channel devices.
      
      * Convert core code and all IDE PCI drivers to use IDE_HFLAG_SINGLE
        and remove no longer needed ide_pci_device_t.channels field.
      
      v2:
      * Fix issues noticed by Sergei:
        - correct code alignment in scc_pata.c
        - s/IDE_HFLAG_SINGLE/~IDE_HFLAG_SINGLE/ in serverworks.c
      Acked-by: default avatarSergei Shtylyov <sshtylyov@ru.mvista.com>
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      a5d8c5c8
    • Bartlomiej Zolnierkiewicz's avatar
      atiixp: PIO mode setup fixes · 485efc6c
      Bartlomiej Zolnierkiewicz authored
      * Split off exisiting atiixp_tuneproc() into atiixp_tune_pio()
        and then add setting device PIO mode to atiixp_tuneproc().
      
      * Add missing ide_get_best_pio_mode() call to atiixp_tuneproc() so
        "pio" == 255 (autotune) is handled correctly and "pio" values > 4 && < 255
        are filtered to PIO4 (previously "pio" == 5 could result in wrong timings
        being used and "pio" values > 4 && < 255 in an OOPS).
      
      * Handle PIO modes early in atiixp_speedproc() so save_mdma_mode[]
        doesn't get cleared.
      
      * In atiixp_dma_check():
        - fix max_mode argument for ide_get_best_pio_mode()
        - don't call atiixp_dma_2_pio() so PIO1 doesn't get remapped to PIO0
        - use atiixp_tuneproc() instead of atiixp_speedproc()
      
      * Bump driver version.
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      485efc6c
  2. 09 Jul, 2007 1 commit
    • Bartlomiej Zolnierkiewicz's avatar
      ide: add short cables support · 49521f97
      Bartlomiej Zolnierkiewicz authored
      This patch allows users to override both host and device side cable detection
      with "ideX=ata66" kernel parameter.  Thanks to this it should be now possible
      to use UDMA > 2 modes on systems (laptops mainly) which use short 40-pin cable
      instead of 80-pin one.
      
      Next patches add automatic detection of some systems using short cables.
      
      Changes:
      
      * Rename hwif->udma_four to hwif->cbl and make it u8.
      
      * Convert all existing users accordingly (use ATA_CBL_* defines while at it).  
      
      * Add ATA_CBL_PATA40_SHORT support to ide-iops.c:eighty_ninty_three().
      
      * Use ATA_CBL_PATA40_SHORT for "ideX=ata66" kernel parameter.
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      Reviewed-by: default avatarSergei Shtylyov <sshtylyov@ru.mvista.com>
      49521f97
  3. 23 May, 2007 1 commit
  4. 09 May, 2007 2 commits
    • Bartlomiej Zolnierkiewicz's avatar
      ide: add ide_tune_dma() helper · 29e744d0
      Bartlomiej Zolnierkiewicz authored
      After reworking the code responsible for selecting the best DMA
      transfer mode it is now possible to add generic ide_tune_dma() helper.
      
      Convert some IDE PCI host drivers to use it (the ones left need more work).
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      29e744d0
    • Bartlomiej Zolnierkiewicz's avatar
      ide: rework the code for selecting the best DMA transfer mode (v3) · 2d5eaa6d
      Bartlomiej Zolnierkiewicz authored
      Depends on the "ide: fix UDMA/MWDMA/SWDMA masks" patch.
      
      * add ide_hwif_t.udma_filter hook for filtering UDMA mask
        (use it in alim15x3, hpt366, siimage and serverworks drivers)
      * add ide_max_dma_mode() for finding best DMA mode for the device
        (loosely based on some older libata-core.c code)
      * convert ide_dma_speed() users to use ide_max_dma_mode()
      * make ide_rate_filter() take "ide_drive_t *drive" as an argument instead
        of "u8 mode" and teach it to how to use UDMA mask to do filtering
      * use ide_rate_filter() in hpt366 driver
      * remove no longer needed ide_dma_speed() and *_ratemask()
      * unexport eighty_ninty_three()
      
      v2:
      * rename ->filter_udma_mask to ->udma_filter
        [ Suggested by Sergei Shtylyov <sshtylyov@ru.mvista.com>. ]
      
      v3:
      * updated for scc_pata driver (fixes XFER_UDMA_6 filtering for user-space
        originated transfer mode change requests when 100MHz clock is used)
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      2d5eaa6d
  5. 16 Feb, 2007 6 commits
    • Bartlomiej Zolnierkiewicz's avatar
      ide: make ide_hwif_t.ide_dma_host_on void (v2) · ccf35289
      Bartlomiej Zolnierkiewicz authored
      * since ide_hwif_t.ide_dma_host_on is called either when drive->using_dma == 1
        or when return value is discarded make it void, also drop "ide_" prefix
      * make __ide_dma_host_on() void and drop "__" prefix
      
      v2:
      * while at it rename atiixp_ide_dma_host_on() to atiixp_dma_host_on()
        and sgiioc4_ide_dma_host_on() to sgiioc4_dma_host_on().
        [ Noticed by Sergei Shtylyov <sshtylyov@ru.mvista.com>. ]
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      ccf35289
    • Bartlomiej Zolnierkiewicz's avatar
      ide: make ide_hwif_t.ide_dma_{host_off,off_quietly} void (v2) · 7469aaf6
      Bartlomiej Zolnierkiewicz authored
      * since ide_hwif_t.ide_dma_{host_off,off_quietly} always return '0'
        make these functions void and while at it drop "ide_" prefix
      * fix comment for __ide_dma_off_quietly()
      * make __ide_dma_{host_off,off_quietly,off}() void and drop "__" prefix
      
      v2:
      * while at it rename atiixp_ide_dma_host_off() to atiixp_dma_host_off(),
        sgiioc4_ide_dma_{host_off,off_quietly}() to sgiioc4_dma_{host_off,off_quietly}()
        and sl82c105_ide_dma_off_quietly() to sl82c105_dma_off_quietly()
        [ Noticed by Sergei Shtylyov <sshtylyov@ru.mvista.com>. ]
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      7469aaf6
    • Bartlomiej Zolnierkiewicz's avatar
      ide: add ide_set_dma() helper (v2) · 3608b5d7
      Bartlomiej Zolnierkiewicz authored
      * add ide_set_dma() helper and make ide_hwif_t.ide_dma_check return
        -1 when DMA needs to be disabled (== need to call ->ide_dma_off_quietly)
         0 when DMA needs to be enabled  (== need to call ->ide_dma_on)
         1 when DMA setting shouldn't be changed
      * fix IDE code to use ide_set_dma() instead if using ->ide_dma_check directly
      
      v2:
      * updated for scc_pata
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      3608b5d7
    • Bartlomiej Zolnierkiewicz's avatar
      ide: disable DMA in ->ide_dma_check for "no IORDY" case (v2) · d8f4469d
      Bartlomiej Zolnierkiewicz authored
      If DMA is unsupported ->ide_dma_check should disable DMA.
      
      v2:
      * updated for scc_pata
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      d8f4469d
    • Bartlomiej Zolnierkiewicz's avatar
      ide: add ide_use_fast_pio() helper (v3) · 7569e8dc
      Bartlomiej Zolnierkiewicz authored
      * add ide_use_fast_pio() helper for use by host drivers
      
      * add DMA capability and hwif->autodma checks to ide_use_dma()
      
        - au1xxx-ide/it8213/it821x drivers didn't check for (id->capability & 1)
      
          [ for the IT8211/2 in SMART mode this check shouldn't be made but since
            in it821x_fixups() we set DMA bit explicitly:
      
                     if(strstr(id->model, "Integrated Technology Express")) {
                             /* In raid mode the ident block is slightly buggy
                                We need to set the bits so that the IDE layer knows
                                LBA28. LBA48 and DMA ar valid */
                             id->capability |= 3;            /* LBA28, DMA */
      
             we are better off using generic helper if we can ]
      
        - ide-cris driver didn't set ->autodma
      
          [ before the patch hwif->autodma was only checked in the chipset specific
            hwif->ide_dma_check implementations, for ide-cris it is cris_dma_check()
            function so there no behavior change here ]
      
      v2:
      * updated patch description (thanks to Alan Cox for the feedback)
      
      v3:
      * updated for scc_pata driver
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      7569e8dc
    • Bartlomiej Zolnierkiewicz's avatar
      atiixp/jmicron/triflex: fix PIO fallback · 39baf8a7
      Bartlomiej Zolnierkiewicz authored
      * atiixp: if DMA can't be used atiixp_config_drive_for_dma() should return 0,
        atiixp_dma_check() will tune the correct PIO mode anyway
      
      * jmicron: if DMA can't be used config_chipset_for_dma() should return 0,
        micron_config_drive_for_dma() will tune the correct PIO mode anyway
      
        config_jmicron_chipset_for_pio(drive, !speed) doesn't program
        device transfer mode for speed != 0 (only wastes some CPU cycles
        on ide_get_best_pio_mode() call) so remove it
      
      * triflex: if DMA can't be used triflex_config_drive_for_dma() should return 0,
        triflex_config_drive_xfer_rate() will tune correct PIO mode anyway
      
      Above changes also fix (theoretical) issue when ->speedproc fails to set
      device transfer mode (i.e. when ide_config_drive_speed() fails to program it)
      but one of DMA transfer modes is already enabled on the device by the BIOS.
      In such scenario ide_dma_enable() will incorrectly return true statement
      and ->ide_dma_check will try to enable DMA on the device.
      Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
      39baf8a7
  6. 27 Jan, 2007 4 commits
  7. 06 Jan, 2007 1 commit
  8. 20 Dec, 2006 1 commit
  9. 29 Sep, 2006 1 commit
  10. 30 Jun, 2006 1 commit
  11. 19 Apr, 2006 1 commit
  12. 16 Apr, 2005 1 commit
    • Linus Torvalds's avatar
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds authored
      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