17 Jun, 2016

2 commits


24 May, 2016

1 commit

  • Pull libata sata_dwc_460ex updates from Tejun Heo:
    "Patches to bring sata_dwc_460ex up to snuff.

    It was a separate pull request because it depends on dmaengine dw
    platform changes which are now in mainline"

    * 'for-4.7-dw' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata: (24 commits)
    ata: dwc: add DMADEVICES dependency
    powerpc/4xx: Device tree update for the 460ex DWC SATA
    ata: sata_dwc_460ex: make debug messages neat
    ata: sata_dwc_460ex: supply physical address of FIFO to DMA
    ata: sata_dwc_460ex: use devm_ioremap
    ata: sata_dwc_460ex: tidy up sata_dwc_clear_dmacr()
    ata: sata_dwc_460ex: use readl/writel_relaxed()
    ata: sata_dwc_460ex: switch to new dmaengine_terminate_* API
    ata: sata_dwc_460ex: add __iomem to register base pointer
    ata: sata_dwc_460ex: get rid of incorrect cast
    ata: sata_dwc_460ex: get rid of some pointless casts
    ata: sata_dwc_460ex: remove empty libata callback
    ata: sata_dwc_460ex: correct HOSTDEV{P}_FROM_*() macros
    ata: sata_dwc_460ex: get rid of global data
    ata: sata_dwc_460ex: add phy support
    ata: sata_dwc_460ex: use "dmas" DT property to find dma channel
    ata: sata_dwc_460ex: don't call ata_sff_qc_issue() on DMA commands
    ata: sata_dwc_460ex: skip dma setup for non-dma commands
    ata: sata_dwc_460ex: select only core part of DMA driver
    ata: sata_dwc_460ex: DMA is always a flow controller
    ...

    Linus Torvalds
     

13 May, 2016

1 commit

  • The dwc_460ex SATA driver has become available on non-powerpc architectures
    and may cause randconfig build errors when CONFIG_DMADEVICES is not set
    and SATA_DWC_OLD_DMA is enabled:

    warning: (SATA_DWC_OLD_DMA) selects DW_DMAC_CORE which has unmet direct dependencies (DMADEVICES)
    ERROR: "dw_dma_probe" [drivers/ata/sata_dwc_460ex.ko] undefined!
    ERROR: "dw_dma_remove" [drivers/ata/sata_dwc_460ex.ko] undefined!

    This adds an explcit Kconfig dependency to CONFIG_SATA_DWC so we
    cannot run into broken configurations. While it would also be
    possible to build the driver with both CONFIG_DMADEVICES
    and SATA_DWC_OLD_DMA disabled, that case is not useful because
    there is no fallback to PIO mode when the DMA engine is not
    usable.

    Signed-off-by: Arnd Bergmann
    Fixes: 50b433753df6 ("ata: sata_dwc_460ex: use "dmas" DT property to find dma channel")
    Reviewed-by: Andy Shevchenko
    Signed-off-by: Tejun Heo

    Arnd Bergmann
     

11 May, 2016

3 commits


14 Apr, 2016

1 commit

  • AMD Seattle SATA controller mostly conforms to AHCI interface with some
    special register to control SGPIO interface. In the case of an AHCI
    controller, the SGPIO feature is ideally implemented using the
    "Enclosure Management" register of the AHCI controller, but those
    registeres are not implemented in the Seattle SoC. Instead SoC
    (Rev B0 onwards) provides a 32-bit SGPIO control register which should
    be programmed to control the activity, locate and fault LEDs.

    The driver is based on ahci_platform driver.

    Signed-off-by: Brijesh Singh
    Acked-by: Hans de Goede
    CC: tj@kernel.org
    CC: linux-ide@vger.kernel.org
    Signed-off-by: Tejun Heo

    Brijesh Singh
     

04 Mar, 2016

1 commit

  • Make use of ARCH_RENESAS in place of ARCH_SHMOBILE.

    This is part of an ongoing process to migrate from ARCH_SHMOBILE to
    ARCH_RENESAS the motivation for which being that RENESAS seems to be a more
    appropriate name than SHMOBILE for the majority of Renesas ARM based SoCs.

    Signed-off-by: Simon Horman
    Signed-off-by: Tejun Heo
    Acked-by: Geert Uytterhoeven

    Simon Horman
     

11 Feb, 2016

1 commit

  • The OCTEON SATA controller is currently found on cn71XX devices.

    Acked-by: Arnd Bergmann
    Acked-by: Hans de Goede
    Acked-by: Rob Herring
    Signed-off-by: David Daney
    Signed-off-by: Vinita Gupta
    Signed-off-by: Aleksey Makarov
    Signed-off-by: Zubair Lutfullah Kakakhel
    Signed-off-by: Tejun Heo

    Aleksey Makarov
     

01 Jan, 2016

1 commit

  • The BCM7xxx ARM-based and MIPS-based platforms share a similar hardware
    block for AHCI SATA3.

    This new compatible string, "brcm,bcm7425-ahci", may be used for most
    MIPS-based platforms of 40nm process technology.

    Signed-off-by: Jaedon Shin
    Tested-by: Florian Fainelli
    Acked-by: Brian Norris
    Signed-off-by: Tejun Heo

    Jaedon Shin
     

09 Sep, 2015

1 commit

  • Currently Freescale QorIQ series SATA is supported by ahci_platform
    driver. Some SoC specific settings have been put in uboot. So whether
    SATA works or not heavily depends on uboot.
    This patch will add a new driver to support QorIQ sata which removes
    the dependency on any other boot loader.
    Freescale QorIQ series sata, like ls1021a ls2085a ls1043a, is
    compatible with serial ATA 3.0 and AHCI 1.3 specification.

    Signed-off-by: Yuantian Tang
    Reviewed-by: Hans de Goede
    Signed-off-by: Tejun Heo

    Tang Yuantian
     

07 Jul, 2015

1 commit

  • This patch adds ACPI supports for AHCI platform driver, which uses _CLS
    method to match the device.

    The following is an example of ASL structure in DSDT for a SATA controller,
    which contains _CLS package to be matched by the ahci_platform driver:

    Device (AHC0) // AHCI Controller
    {
    Name(_HID, "AMDI0600")
    Name (_CCA, 1)
    Name (_CLS, Package (3)
    {
    0x01, // Base Class: Mass Storage
    0x06, // Sub-Class: serial ATA
    0x01, // Interface: AHCI
    })
    Name (_CRS, ResourceTemplate ()
    {
    Memory32Fixed (ReadWrite, 0xE0300000, 0x00010000)
    Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive,,,) { 387 }
    })
    }

    Also, since ATA driver should not require PCI support for ATA_ACPI,
    this patch removes dependency in the driver/ata/Kconfig.

    Acked-by: Tejun Heo
    Acked-by: Mika Westerberg
    Reviewed-by: Hanjun Guo
    Signed-off-by: Suravee Suthikulpanit
    Signed-off-by: Rafael J. Wysocki

    Suthikulpanit, Suravee
     

27 Jun, 2015

1 commit

  • Pull ARM SoC cleanups from Kevin Hilman:
    "A relatively small setup of cleanups this time around, and similar to
    last time the bulk of it is removal of legacy board support:

    - OMAP: removal of legacy (non-DT) booting for several platforms

    - i.MX: remove some legacy board files"

    * tag 'armsoc-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (36 commits)
    ARM: fix EFM32 build breakage caused by cpu_resume_arm
    ARM: 8389/1: Add cpu_resume_arm() for firmwares that resume in ARM state
    ARM: v7 setup function should invalidate L1 cache
    mach-omap2: Remove use of deprecated marco, PTR_RET in devices.c
    ARM: OMAP2+: Remove calls to deprecacted marco,PTR_RET in the files,fb.c and pmu.c
    ARM: OMAP2+: Constify irq_domain_ops
    ARM: OMAP2+: use symbolic defines for console loglevels instead of numbers
    ARM: at91: remove useless Makefile.boot
    ARM: at91: remove at91rm9200_sdramc.h
    ARM: at91: remove mach/at91_ramc.h and mach/at91rm9200_mc.h
    ARM: at91/pm: use the atmel-mc syscon defines
    pcmcia: at91_cf: Use syscon to configure the MC/smc
    ARM: at91: declare the at91rm9200 memory controller as a syscon
    mfd: syscon: Add Atmel MC (Memory Controller) registers definition
    ARM: at91: drop sam9_smc.c
    ata: at91: use syscon to configure the smc
    ARM: ux500: delete static resource defines
    ARM: ux500: rename ux500_map_io
    ARM: ux500: look up PRCMU resource from DT
    ARM: ux500: kill off L2CC static map
    ...

    Linus Torvalds
     

26 Jun, 2015

1 commit

  • Pull libata updates from Tejun Heo:

    - a number of libata core changes to better support NCQ TRIM.

    - ahci now supports MSI-X in single IRQ mode to support a new
    controller which doesn't implement MSI or INTX.

    - ahci now supports edge-triggered IRQ mode to support a new controller
    which for some odd reason did edge-triggered IRQ.

    - the usual controller support additions and changes.

    * 'for-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata: (27 commits)
    libata: Do not blacklist Micron M500DC
    ata: ahci_mvebu: add suspend/resume support
    ahci, msix: Fix build error for !PCI_MSI
    ahci: Add support for Cavium's ThunderX host controller
    ahci: Add generic MSI-X support for single interrupts to SATA PCI driver
    libata: finally use __initconst in ata_parse_force_one()
    drivers: ata: add support for Ceva sata host controller
    devicetree:bindings: add devicetree bindings for ceva ahci
    ahci: added support for Freescale AHCI sata
    ahci: Store irq number in struct ahci_host_priv
    ahci: Move interrupt enablement code to a separate function
    Doc: libata: Fix spelling typo found in libata.xml
    ata:sata_nv - Change 1 to true for bool type variable.
    ata: add Broadcom AHCI SATA3 driver for STB chips
    Documentation: devicetree: add Broadcom SATA binding
    libata: Fix regression when the NCQ Send and Receive log page is absent
    ata: hpt366: fix constant cast warning
    ata: ahci_xgene: potential NULL dereference in probe
    ata: ahci_xgene: Add AHCI Support for 2nd HW version of APM X-Gene SoC AHCI SATA Host controller.
    libahci: Add support to handle HOST_IRQ_STAT as edge trigger latch.
    ...

    Linus Torvalds
     

10 Jun, 2015

1 commit


25 May, 2015

1 commit


20 May, 2015

1 commit

  • Use syscon/regmap to configure the smc. This allows to avoid using
    at91sam9_smc.h and to compile the driver in a multiplatform configuration.

    The driver will still not probe until the proper DT bindings are added. That
    binding will include an atmel,smc property that is a phandle to the SMC the CF
    controller is connected to.

    Signed-off-by: Alexandre Belloni
    Acked-by: Nicolas Ferre

    Alexandre Belloni
     

05 May, 2015

1 commit


15 Apr, 2015

1 commit

  • The SCC PATA interface is only used by celleb.
    celleb has been dropped [1], so drop the drivers.

    [1] http://patchwork.ozlabs.org/patch/451730/

    CC: "David S. Miller"
    CC: linux-ide@vger.kernel.org
    CC: Valentin Rothberg
    CC: mpe@ellerman.id.au
    CC: linuxppc-dev@lists.ozlab.org
    Acked-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Daniel Axtens
    Signed-off-by: Tejun Heo

    Daniel Axtens
     

11 Feb, 2015

1 commit

  • Commit 84683a7e081f ("sata_dwc_460ex: enable COMPILE_TEST for the
    driver") enabled this driver for non-ppc460-ex platforms, but it was
    then disabled for ARM and ARM64 by commit 2de5a9c004e9 ("sata_dwc_460ex:
    disable compilation on ARM and ARM64") because it's too noisy and
    broken.

    This disabled is entirely, because it's too noisy on x86-64 too, and
    there's no point in disabling architectures one by one. At a minimum,
    the code isn't 64-bit clean, and even on 32-bit it is questionable
    whether it makes sense.

    Cc: Andy Shevchenko
    Cc: Tejun Heo
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

09 Feb, 2015

1 commit


14 Jan, 2015

1 commit


12 Jan, 2015

1 commit


08 Jan, 2015

1 commit

  • To test how the driver could be compiled in the non-native environment let's
    enable COMPILE_TEST for it. It would be useful for further work.

    This patch enables COMPILE_TEST for the driver and fixes compilation errors on
    at least x86 platforms.

    Signed-off-by: Andy Shevchenko
    Signed-off-by: Tejun Heo

    Andy Shevchenko
     

13 Dec, 2014

1 commit

  • After commit b2b49ccbdd54 (PM: Kconfig: Set PM_RUNTIME if PM_SLEEP is
    selected) PM_RUNTIME is always set if PM is set, so Kconfig options
    depending on CONFIG_PM_RUNTIME may now be changed to depend on
    CONFIG_PM.

    Replace PM_RUNTIME with PM in Kconfig dependencies throughout the
    tree.

    Signed-off-by: Rafael J. Wysocki
    Acked-by: Felipe Balbi
    Acked-by: Greg Kroah-Hartman
    Acked-by: Tejun Heo

    Rafael J. Wysocki
     

09 Sep, 2014

1 commit

  • mach-kirkwood has been removed, now that kirkwood lives in mach-mvebu.
    ARCH_MVEBU is sufficient.

    Signed-off-by: Andrew Lunn
    Cc: Tejun Heo
    Cc: linux-ide@vger.kernel.org
    Acked-by: Tejun Heo
    Link: https://lkml.kernel.org/r/1409417172-6846-3-git-send-email-andrew@lunn.ch
    Signed-off-by: Jason Cooper

    Andrew Lunn
     

07 Aug, 2014

1 commit

  • The function may be useful for other drivers, so export it. (Suggested
    by Tejun Heo.)

    Note that I inverted the return value of glob_match; returning true on
    match seemed to make more sense.

    Signed-off-by: George Spelvin
    Cc: Randy Dunlap
    Cc: Tejun Heo
    Cc: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    George Spelvin
     

19 Jul, 2014

1 commit


10 Jun, 2014

1 commit

  • Pull libata updates from Tejun Heo:
    "Nothing too interesting - another ahci platform driver variant,
    additional controller support, minor fixes and cleanups"

    * 'for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
    ahci: Add Device ID for HighPoint RocketRaid 642L
    ata: ep93xx: use dmaengine_prep_slave_sg api instead of internal callback
    ahci: add PCI ID for Marvell 88SE91A0 SATA Controller
    sata_fsl: remove check for CONFIG_MPC8315_DS
    ahci: add support for Hisilicon sata
    libahci_platform: add host_flags parameter in ahci_platform_init_host()
    ata: ahci: append new hflag AHCI_HFLAG_NO_FBS
    ata: use CONFIG_PM_SLEEP instead of CONFIG_PM where applicable in host drivers
    ata: ahci_mvebu: new driver for Marvell Armada 380 AHCI interfaces
    Documentation: dt-bindings: reformat and order list of ahci-platform compatibles
    libata-sff: remove dead code
    ata: SATL compliance for Inquiry Product Revision
    pata_octeon_cf: use devm_kzalloc() to allocate cf_port

    Linus Torvalds
     

08 May, 2014

1 commit

  • The smc driver used by pata_at91 is at91sam9 specific, so building
    this driver on another at91 platform results in this error:

    ERROR: "sam9_smc_configure" [drivers/ata/pata_at91.ko] undefined!
    ERROR: "sam9_smc_write_mode" [drivers/ata/pata_at91.ko] undefined!
    ERROR: "sam9_smc_read_mode" [drivers/ata/pata_at91.ko] undefined!

    This patch changes the Kconfig dependency to ensure it always works.

    Signed-off-by: Arnd Bergmann
    Signed-off-by: Tejun Heo
    Cc: linux-ide@vger.kernel.org
    Cc: Jean-Christophe Plagniol-Villard
    Cc: Nicolas Ferre

    Arnd Bergmann
     

05 May, 2014

1 commit

  • The Marvell Armada 380 SoC includes two AHCI compatible
    interfaces. However, like all DMA-capable Marvell interface, they
    require special handling to configure MBus windows. Therefore, this
    commit adds a new ahci_mvebu driver, which relies on the
    libahci_platform.c code recently introduced.

    Signed-off-by: Thomas Petazzoni
    Acked-by: Jason Cooper
    Signed-off-by: Tejun Heo

    Thomas Petazzoni
     

08 Apr, 2014

1 commit


03 Apr, 2014

1 commit

  • AHCI_XGENE is only applicable on ARM64 but it can also be enabled for
    compile testing; however, AHCI_XGENE selects PHY_XGENE which has other
    arch specific dependencies. This leads to the following warning when
    enabling it on other archs for compile testing.

    warning: (AHCI_XGENE) selects PHY_XGENE which has unmet direct
    dependencies (HAS_IOMEM && OF && (ARM64 || COMPILE_TEST))

    Selecting a config option which itself has dependencies can easily
    lead to broken configurations. For now, let's just make AHCI_XGENE
    depend on PHY_XGENE which has all the necessary dependencies already.

    Signed-off-by: Tejun Heo
    Reported-by: Linus Torvalds
    Cc: Loc Ho
    Cc: Bartlomiej Zolnierkiewicz
    Cc: Kishon Vijay Abraham I

    Tejun Heo
     

01 Apr, 2014

1 commit

  • Pull libata updates from Tejun Heo:
    "A lot of activities on libata side this time.

    - A lot of changes around ahci. Various embedded platforms are
    implementing ahci controllers. Some were built atop ahci_platform,
    others were doing their own things. Hans made some structural
    changes to libahci and librarized ahci_platform so that ahci
    platform drivers can share more common code. A couple platform
    drivers are added on top of that and several are added to replace
    older drivers which were doing their own things (older ones are
    scheduled to be removed).

    - Dan finishes the patchset to make libata PM operations
    asynchronous. Combined with one patch being routed through scsi,
    this should speed resume measurably.

    - Various fixes and cleanups from Bartlomiej and others"

    * 'for-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata: (61 commits)
    ata: fix Marvell SATA driver dependencies
    ata: fix ARASAN CompactFlash PATA driver dependencies
    ata: remove superfluous casts
    ata: sata_highbank: remove superfluous cast
    ata: fix Calxeda Highbank SATA driver dependencies
    ata: fix R-Car SATA driver dependencies
    ARM: davinci: da850: update SATA AHCI support
    ata: add new-style AHCI platform driver for DaVinci DA850 AHCI controller
    ata: move library code from ahci_platform.c to libahci_platform.c
    ata: ahci_platform: fix ahci_platform_data->suspend method handling
    libata: remove unused ata_sas_port_async_resume() stub
    libata.h: add stub for ata_sas_port_resume
    libata: async resume
    libata, libsas: kill pm_result and related cleanup
    ata: Fix compiler warning with APM X-Gene host controller driver
    arm64: Add APM X-Gene SoC AHCI SATA host controller DTS entries
    ata: Add APM X-Gene SoC AHCI SATA host controller driver
    Documentation: Add documentation for the APM X-Gene SoC SATA host controller DTS binding
    arm64: Add APM X-Gene SoC 15Gbps Multi-purpose PHY DTS entries
    ata: ahci_sunxi: fix code formatting
    ...

    Linus Torvalds
     

27 Mar, 2014

2 commits

  • Make sata_mv host driver depend on PCI || ARCH_DOVE || ARCH_KIRKWOOD ||
    ARCH_MV78XX0 || ARCH_MVEBU || ARCH_ORION5X config options as Marvell
    SATA support covers both Marvell PCI devices and Marvell Dove, Kirkwood,
    MV78xx0, Armada 370/XP and Orion5x SoCs (for non-PCI devices the driver
    to work requires suitable device tree node or platform device to be
    defined). Additionally allow the driver build if COMPILE_TEST config
    option is set.

    Cc: Jason Cooper
    Cc: Andrew Lunn
    Cc: Gregory Clement
    Cc: Sebastian Hesselbarth
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Tejun Heo

    Bartlomiej Zolnierkiewicz
     
  • Make pata_arasan_cf host driver depend on ARCH_SPEAR13XX config
    option as ARASAN CompactFlash PATA support is specific to ST
    SPEAr13xx SoCs and the driver to work requires suitable device
    tree node (or platform device) to be defined. Additionally
    allow the driver build if COMPILE_TEST config option is set.

    Cc: Viresh Kumar
    Cc: Shiraz Hashim
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Tejun Heo

    Bartlomiej Zolnierkiewicz
     

26 Mar, 2014

3 commits

  • Make sata_highbank host driver depend on ARCH_HIGHBANK config option
    as Calxeda Highbank SATA support is specific to Calxeda Highbank
    SoCs and the driver to work requires suitable device tree node to
    be defined. Additionally allow the driver build if COMPILE_TEST
    config option is set.

    Cc: Mark Langsdorf
    Cc: Rob Herring
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Tejun Heo

    Bartlomiej Zolnierkiewicz
     
  • Make sata_rcar host driver depend on ARCH_SHMOBILE config option as
    Renesas R-Car SATA support is specific to Renesas SoCs and the driver
    to work requires suitable device tree node (or platform device) to be
    defined. Additionally allow the driver build if COMPILE_TEST config
    option is set.

    Cc: Simon Horman
    Cc: Magnus Damm
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Tejun Heo

    Bartlomiej Zolnierkiewicz
     
  • Add the new ahci_da850 host driver.

    Platform changes needed to make DaVinci DA850 SATA AHCI support
    fully functional are in the separate "ARM: davinci: da850: update
    SATA AHCI support" commit.

    Please note that this driver doesn't have the superfluous clock
    control code as clock is already handled by the generic AHCI
    platform library code.

    Cc: Sekhar Nori
    Cc: Kevin Hilman
    Cc: Hans de Goede
    Signed-off-by: Bartlomiej Zolnierkiewicz
    Signed-off-by: Tejun Heo

    Bartlomiej Zolnierkiewicz