25 Jul, 2008

1 commit


24 Jul, 2008

4 commits

  • Add ide_host_add() helper which does ide_host_alloc()+ide_host_register(),
    then convert ide_setup_pci_device[s](), ide_legacy_device_add() and some
    host drivers to use it.

    While at it:

    * Fix ide_setup_pci_device[s](), ide_arm.c, gayle.c, ide-4drives.c,
    macide.c, q40ide.c, cmd640.c and cs5520.c to return correct error value.

    * -ENOENT -> -ENOMEM in rapide.c, ide-h8300.c, ide-generic.c, au1xxx-ide.c
    and pmac.c

    * -ENODEV -> -ENOMEM in palm_bk3710.c, ide_platform.c and delkin_cb.c

    * -1 -> -ENOMEM in ide-pnp.c

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Add struct ide_host which keeps pointers to host's ports.

    * Add ide_host_alloc[_all]() and ide_host_remove() helpers.

    * Pass 'struct ide_host *host' instead of 'u8 *idx' to
    ide_device_add[_all]() and rename it to ide_host_register[_all]().

    * Convert host drivers and core code to use struct ide_host.

    * Remove no longer needed ide_find_port().

    * Make ide_find_port_slot() static.

    * Unexport ide_unregister().

    v2:
    * Add missing 'struct ide_host *host' to macide.c.

    v3:
    * Fix build problem in pmac.c (s/ide_alloc_host/ide_host_alloc/)
    (Noticed by Stephen Rothwell).

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Reserve memory resources for all IDE ports at once by moving
    request_mem_region() out of 'for ()' loop and always defining
    GAYLE_IDEREG_SIZE to 0x2000.

    * Keep memory resources even if no free IDE slots can be found
    (this driver is unloadable currently).

    Cc: Geert Uytterhoeven
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Add 'hw_regs_t **hws' argument to ide_device_add[_all]() and convert
    host drivers + ide_legacy_init_one() + ide_setup_pci_device[s]() to use
    it instead of calling ide_init_port_hw() directly.

    [ However if host has > 1 port we must still set hwif->chipset to hint
    consecutive ide_find_port() call that the previous slot is occupied. ]

    * Unexport ide_init_port_hw().

    v2:
    * Use defines instead of hard-coded values in buddha.c, gayle.c and q40ide.c.
    (Suggested by Geert Uytterhoeven)

    * Better patch description.

    v3:
    * Fix build problem in ide-cs.c. (Noticed by Stephen Rothwell)

    There should be no functional changes caused by this patch.

    Cc: Geert Uytterhoeven
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     

17 Jul, 2008

1 commit


16 Jul, 2008

1 commit


11 Jun, 2008

2 commits

  • This patch fixes the following build error:

    ...
    Building modules, stage 2.
    MODPOST 1204 modules
    ERROR: "ide_doubler" [drivers/ide/ide-core.ko] undefined!
    ...
    make[2]: *** [__modpost] Error 1

    Reported-by: Adrian Bunk
    Signed-off-by: Adrian Bunk
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Adrian Bunk
     
  • ide_find_port() now depends on ->chipset being set for occupied ide_hwifs[]
    slots so all host drivers have to initialize hwif->chipset properly.

    This patch fixes a regression on hosts with > 1 port or with a single port
    but no devices attached to it for an affected host drivers.

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     

27 Apr, 2008

3 commits

  • * Add struct ide_io_ports and use it instead of `unsigned long io_ports[]`
    in ide_hwif_t.

    * Rename io_ports[] in hw_regs_t to io_ports_array[].

    * Use un-named union for 'unsigned long io_ports_array[]' and 'struct
    ide_io_ports io_ports' in hw_regs_t.

    * Remove IDE_*_OFFSET defines.

    v2:
    * scc_pata.c build fix from Stephen Rothwell.

    v3:
    * Fix ctl_adrr typo in Sparc-specific part of ns87415.c.
    (Noticed by Andrew Morton)

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Add "doubler" parameter to enable support for IDE doublers.

    * Obsolete "ide=doubler" kernel parameter.

    Cc: Geert Uytterhoeven
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • It is no longer needed to set hwif->mmio flag to tell IDE layer to not
    manage resources so cleanup host drivers that used hwif->mmio flag only
    for this purpose.

    Ditto for ide_legacy_init_one().

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     

26 Apr, 2008

1 commit


03 Apr, 2008

1 commit


11 Feb, 2008

1 commit


06 Feb, 2008

1 commit

  • ide-cris.c:
    * Add cris_setup_ports() helper and use it instead of ide_setup_ports()
    (fixes random value being set in ->io_ports[IDE_IRQ_OFFSET]).

    buddha.c:
    * Add buddha_setup_ports() helper and use it instead of ide_setup_ports().

    falconide.c:
    * Add falconide_setup_ports() helper and use it instead of ide_setup_ports(),
    also fix return value of falconide_init() while at it.

    gayle.c:
    * Add gayle_setup_ports() helper and use it instead of ide_setup_ports().

    macide.c:
    * Add macide_setup_ports() helper and use it instead of ide_setup_ports()
    (fixes incorrect value being set in ->io_ports[IDE_IRQ_OFFSET]).

    q40ide.c:
    * Fix q40_ide_setup_ports() comments.

    ide.c:
    * Remove no longer needed ide_setup_ports().

    Cc: Mikael Starvik
    Cc: Geert Uytterhoeven
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     

03 Feb, 2008

1 commit

  • * Remove 'struct pci_dev *dev' argument from ide_hwif_setup_dma().

    * Un-static ide_hwif_setup_dma() and add CONFIG_BLK_DEV_IDEDMA_PCI=n version.

    * Add 'const struct ide_port_info *d' argument to ide_device_add[_all]().

    * Factor out generic ports init from ide_pci_setup_ports() to ide_init_port(),
    move it to ide-probe.c and call it in in ide_device_add_all() instead of
    ide_pci_setup_ports().

    * Move ->mate setup to ide_device_add_all() from ide_port_init().

    * Add IDE_HFLAG_NO_AUTOTUNE host flag for host drivers that don't enable
    ->autotune currently.

    * Setup hwif->chipset in ide_init_port() but iff pi->chipset is set
    (to not override setup done by ide_hwif_configure()).

    * Add ETRAX host handling to ide_device_add_all().

    * cmd640.c: set IDE_HFLAG_ABUSE_* also for CONFIG_BLK_DEV_CMD640_ENHANCED=n.

    * pmac.c: make pmac_ide_setup_dma() return an error value and move DMA masks
    setup to pmac_ide_setup_device().

    * Add 'struct ide_port_info' instances to legacy host drivers, pass them to
    ide_device_add() calls and then remove open-coded ports initialization.

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

    Bartlomiej Zolnierkiewicz
     

02 Feb, 2008

1 commit

  • Delete filenames/versions from comments.

    I'm leaving decisions about adding DRV_VERSION defines and MODULE_VERSION()-s
    to maintainers of the respective drivers.

    While at it:

    * Remove unused VERSION define from ide.c.

    * Remove unused/stale DRV_VERSION define from au1xxx-ide.c.

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     

27 Jan, 2008

4 commits

  • * Print banner message once per controller in m68k host drivers.

    * Change printk() level to KERN_INFO in buddha, falconide and gayle.

    * Add banner message to q40ide.

    This is basically a preparation for the future IDE layer changes.

    Cc: Geert Uytterhoeven
    Cc: Roman Zippel
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Make remaining built-in only IDE host drivers modular, add ide-scan-pci.c
    file for probing PCI host drivers registered with IDE core (special case
    for built-in IDE and CONFIG_IDEPCI_PCIBUS_ORDER=y) and then take care of
    the ordering in which all IDE host drivers are probed when IDE is built-in
    during link time.

    * Move probing of gayle, falconide, macide, q40ide and buddha (m68k arch
    specific) host drivers, before PCI ones (no PCI on m68k), ide-cris (cris
    arch specific), cmd640 (x86 arch specific) and pmac (ppc arch specific).

    * Move probing of ide-cris (cris arch specific) host driver before cmd640
    (x86 arch specific).

    * Move probing of mpc8xx (ppc specific) host driver before ide-pnp (depends
    on ISA and none of ppc platform that use mpc8xx supports ISA) and ide-h8300
    (h8300 arch specific).

    * Add "probe_vlb" kernel parameter to cmd640 host driver and update
    Documentation/ide.txt accordingly.

    * Make IDE_ARM config option visible so it can also be disabled if needed.

    * Remove bogus comment from ide.c while at it.

    v2:
    * Fix two issues spotted by Sergei:
    - replace ENOMEM error value by ENOENT in ide-h8300 host driver
    - fix MODULE_PARM_DESC() in cmd640 host driver

    Cc: Sergei Shtylyov
    Cc: Mikael Starvik
    Cc: Geert Uytterhoeven
    Cc: Roman Zippel
    Cc: Benjamin Herrenschmidt
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Add mpc8xx_ide_probe() to mpc8xx.c and call it from probe_for_hwifs().

    * Convert ide_arm, ide-cris, ide-h8300, ide-pnp, buddha, falconide, gayle,
    macide, q40ide, cmd640 and mpc8xx host drivers to use ide_device_add().

    This removes dependency on ide_generic for these drivers so update
    ide/Kconfig accordingly.

    v2:
    * ide_arm build fix (s/ide_device_idx/ide_device_add/)
    (Thanks to Christoph Lameter for reporting the problem).

    Cc: Mikael Starvik
    Cc: Geert Uytterhoeven
    Cc: Roman Zippel
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Rename init_hwif_data() to ide_init_port_data() and export it.

    * For all users of ide_register_hw() with 'initializing' argument set
    hwif->present and hwif->hold are always zero so convert these host
    drivers to use ide_find_port()+ide_init_port_data()+ide_init_port_hw()
    instead (also no need for init_hwif_default() call since the setup
    done by it gets over-ridden by ide_init_port_hw() call).

    * Drop 'initializing' argument from ide_register_hw().

    Cc: Geert Uytterhoeven
    Cc: Roman Zippel
    Acked-by: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     

20 Oct, 2007

1 commit

  • * Add ->fixup method to ide_hwif_t.

    * Set hwif->fixup in ide_pci_setup_ports() to d->fixup.

    * Use hwif->fixup in probe_hwif().

    * Use probe_hwif_init() instead of probe_hwif_init_with_fixup() in
    ide_setup_pci_device().

    * Add 'fixup' argument to ide_register_hw() and use it to set hwif->fixup,
    update all ide_register_hw() users accordingly.

    * Convert ide-cs/delkin_cb host drivers to use ide_register_hw().

    * Restore hwif->fixup in ide_hwif_restore().

    * Remove ide_register_hw_with_fixup(), probe_hwif_init_with_fixup()
    and 'fixup' argument from probe_hwif().

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     

10 May, 2007

1 commit


17 Feb, 2007

1 commit


01 Jul, 2006

1 commit


17 Apr, 2005

1 commit

  • 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!

    Linus Torvalds