Commit 2c75a8d9 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull ATA updates from Damien Le Moal:

 - Cleanup IRQ masking in the handling of completed report zones
   commands (Niklas)

 - Improve the handling of Thunderbolt attached devices to speed up
   device removal (Henry)

 - Several patches to generalize the existing max_sec quirks to
   facilitates quirking the maximum command size of buggy drives, many
   of which have recently showed up with the recent increase of the
   default max_sectors block limit (Niklas)

 - Cleanup the ahci-platform and sata dt-bindings schema (Rob,
   Manivannan)

 - Improve device node scan in the ahci-dwc driver (Krzysztof)

 - Remove clang W=1 warnings with the ahci-imx and ahci-xgene drivers
   (Krzysztof)

 - Fix a long standing potential command starvation situation with
   non-NCQ commands issued when NCQ commands are on-going (me)

 - Limit max_sectors to 8191 on the INTEL SSDSC2KG480G8 SSD (Niklas)

 - Remove Vesa Local Bus (VLB) support in the pata_legacy driver (Ethan)

 - Simple fixes in the pata_cypress (typo) and pata_ftide010 (timing)
   drivers (Ethan, Linus W)

* tag 'ata-6.20-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/libata/linux:
  ata: pata_ftide010: Fix some DMA timings
  ata: pata_cypress: fix typo in error message
  ata: pata_legacy: remove VLB support
  ata: libata-core: Quirk INTEL SSDSC2KG480G8 max_sectors
  dt-bindings: ata: sata: Document the graph port
  ata: libata-scsi: avoid Non-NCQ command starvation
  ata: libata-scsi: refactor ata_scsi_translate()
  ata: ahci-xgene: Fix Wvoid-pointer-to-enum-cast warning
  ata: ahci-imx: Fix Wvoid-pointer-to-enum-cast warning
  ata: ahci-dwc: Simplify with scoped for each OF child loop
  dt-bindings: ata: ahci-platform: Drop unnecessary select schema
  ata: libata: Allow more quirks
  ata: libata: Add libata.force parameter max_sec
  ata: libata: Add support to parse equal sign in libata.force
  ata: libata: Change libata.force to use the generic ATA_QUIRK_MAX_SEC quirk
  ata: libata: Add ata_force_get_fe_for_dev() helper
  ata: libata: Add ATA_QUIRK_MAX_SEC and convert all device quirks
  ata: libata: avoid long timeouts on hot-unplugged SATA DAS
  ata: libata-scsi: Remove superfluous local_irq_save()
parents 311aa683 ff4a46c2
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -3468,6 +3468,11 @@ Kernel parameters
			* [no]logdir: Enable or disable access to the general
			  purpose log directory.

			* max_sec=<sectors>: Set the transfer size limit, in
			  number of 512-byte sectors, to the value specified in
			  <sectors>. The value specified in <sectors> has to be
			  a non-zero positive integer.

			* max_sec_128: Set transfer size limit to 128 sectors.

			* max_sec_1024: Set or clear transfer size limit to
+0 −20
Original line number Diff line number Diff line
@@ -18,26 +18,6 @@ maintainers:
  - Hans de Goede <hdegoede@redhat.com>
  - Jens Axboe <axboe@kernel.dk>

select:
  properties:
    compatible:
      contains:
        enum:
          - brcm,iproc-ahci
          - cavium,octeon-7130-ahci
          - hisilicon,hisi-ahci
          - ibm,476gtr-ahci
          - marvell,armada-3700-ahci
          - marvell,armada-8k-ahci
          - marvell,berlin2q-ahci
          - qcom,apq8064-ahci
          - qcom,ipq806x-ahci
          - socionext,uniphier-pro4-ahci
          - socionext,uniphier-pxs2-ahci
          - socionext,uniphier-pxs3-ahci
  required:
    - compatible

properties:
  compatible:
    oneOf:
+3 −0
Original line number Diff line number Diff line
@@ -54,4 +54,7 @@ $defs:
          each port can have a Port Multiplier attached thus allowing to
          access more than one drive by means of a single SATA port.

      port:
        $ref: /schemas/graph.yaml#/properties/port

...
+1 −16
Original line number Diff line number Diff line
@@ -1127,13 +1127,6 @@ config PATA_OF_PLATFORM

	  If unsure, say N.

config PATA_QDI
	tristate "QDI VLB PATA support"
	depends on ISA
	select PATA_LEGACY
	help
	  Support for QDI 6500 and 6580 PATA controllers on VESA local bus.

config PATA_RB532
	tristate "RouterBoard 532 PATA CompactFlash support"
	depends on MIKROTIK_RB532
@@ -1152,14 +1145,6 @@ config PATA_RZ1000

	  If unsure, say N.

config PATA_WINBOND_VLB
	tristate "Winbond W83759A VLB PATA support (Experimental)"
	depends on ISA
	select PATA_LEGACY
	help
	  Support for the Winbond W83759A controller on Vesa Local Bus
	  systems.

config PATA_PARPORT
	tristate "Parallel port IDE device support"
	depends on PARPORT_PC
@@ -1201,7 +1186,7 @@ config PATA_LEGACY
	depends on (ISA || PCI) && HAS_IOPORT
	select PATA_TIMINGS
	help
	  This option enables support for ISA/VLB/PCI bus legacy PATA
	  This option enables support for ISA/PCI bus legacy PATA
	  ports and allows them to be accessed via the new ATA layer.

	  If unsure, say N.
+2 −8
Original line number Diff line number Diff line
@@ -260,7 +260,6 @@ static void ahci_dwc_init_timer(struct ahci_host_priv *hpriv)
static int ahci_dwc_init_dmacr(struct ahci_host_priv *hpriv)
{
	struct ahci_dwc_host_priv *dpriv = hpriv->plat_data;
	struct device_node *child;
	void __iomem *port_mmio;
	u32 port, dmacr, ts;

@@ -271,14 +270,9 @@ static int ahci_dwc_init_dmacr(struct ahci_host_priv *hpriv)
	 * the HBA global reset so we can freely initialize it once until the
	 * next system reset.
	 */
	for_each_child_of_node(dpriv->pdev->dev.of_node, child) {
		if (!of_device_is_available(child))
			continue;

		if (of_property_read_u32(child, "reg", &port)) {
			of_node_put(child);
	for_each_available_child_of_node_scoped(dpriv->pdev->dev.of_node, child) {
		if (of_property_read_u32(child, "reg", &port))
			return -EINVAL;
		}

		port_mmio = __ahci_port_base(hpriv, port);
		dmacr = readl(port_mmio + AHCI_DWC_PORT_DMACR);
Loading