Skip to content

Commit 57aaf91

Browse files
committed
Merge tag 'ata-6.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/libata/linux
Pull ata updates from Niklas Cassel: - Do not enable LPM for external ports (hotplug-capable ports or eSATA ports), as the HBA will not be able to detect hot plug removal events when LPM is enabled (me) - Drop the board type board_ahci_low_power. Now when we make sure that we won't enable LPM for external ports, we can always set the LPM policy to CONFIG_SATA_MOBILE_LPM_POLICY for internal ports. There is thus no longer any need for the board type board_ahci_low_power, so it can be removed. (As before, LPM features not supported by the HBA and/or the device will not be enabled, regardless of the LPM policy Kconfig) (Mario Limonciello) Note that the default CONFIG_SATA_MOBILE_LPM_POLICY value is still 0 (which will not try to enable any LPM features), however, most Linux distributions override this and set it to 3 (Medium power with DIPM). We intend to change the default to 3 in the coming cycles, but we will wait a cycle or two. - Add board type board_ahci_pcs_quirk and make all legacy Intel platforms use it. The Intel PCS quirk was being applied to basically all Intel platforms, which caused some issues (the device failing to come back after a reset), when being applied to newer Intel platforms where it shouldn't have been applied. New platforms can be added using board type board_ahci, which will not have the quirk applied (me) - Rename board_ahci_nosntf to board_ahci_pcs_quirk_no_sntf to more clearly highlight that it applies two different quirks (me) - Modify the ahci_broken_devslp() quirk to be implemented like all the other quirks (i.e. define a board type for the quirk) (me) - Drop unused board_ahci_noncq board type (me) - Rename board_ahci_nomsi to board_ahci_no_msi to match the other board types (me) - Make pata_parport_bus_type const (Ricardo B. Marliere) - Remove at91 compact flash device tree binding. (The binding is not used by any driver.) (from Hari Prasath Gujulan Elango) - Convert MediaTek device tree binding to json-schema (Rafał Miłecki) - At boot, print the number of implemented ports, instead of printing the maximum number of ports supported by the HBA silicon (me) * tag 'ata-6.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/libata/linux: ahci: print the number of implemented ports dt-bindings: ata: convert MediaTek controller to the json-schema ahci: rename board_ahci_nomsi ahci: drop unused board_ahci_noncq ahci: clean up ahci_broken_devslp quirk ahci: rename board_ahci_nosntf ahci: clean up intel_pcs_quirk ata: ahci: Drop low power policy board type ata: ahci: do not enable LPM on external ports ata: ahci: drop hpriv param from ahci_update_initial_lpm_policy() ata: ahci: a hotplug capable port is an external port ata: ahci: move marking of external port earlier dt-bindings: ata: atmel: remove at91 compact flash documentation ata: pata_parport: make pata_parport_bus_type const
2 parents 7d62cb2 + 13ec409 commit 57aaf91

File tree

8 files changed

+329
-311
lines changed

8 files changed

+329
-311
lines changed

Documentation/devicetree/bindings/ata/ahci-mtk.txt

Lines changed: 0 additions & 51 deletions
This file was deleted.

Documentation/devicetree/bindings/ata/atmel-at91_cf.txt

Lines changed: 0 additions & 19 deletions
This file was deleted.
Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/ata/mediatek,mtk-ahci.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: MediaTek Serial ATA controller
8+
9+
maintainers:
10+
- Ryder Lee <[email protected]>
11+
12+
allOf:
13+
- $ref: ahci-common.yaml#
14+
15+
properties:
16+
compatible:
17+
items:
18+
- enum:
19+
- mediatek,mt7622-ahci
20+
- const: mediatek,mtk-ahci
21+
22+
reg:
23+
maxItems: 1
24+
25+
interrupts:
26+
maxItems: 1
27+
28+
interrupt-names:
29+
const: hostc
30+
31+
clocks:
32+
maxItems: 5
33+
34+
clock-names:
35+
items:
36+
- const: ahb
37+
- const: axi
38+
- const: asic
39+
- const: rbc
40+
- const: pm
41+
42+
power-domains:
43+
maxItems: 1
44+
45+
resets:
46+
maxItems: 3
47+
48+
reset-names:
49+
items:
50+
- const: axi
51+
- const: sw
52+
- const: reg
53+
54+
mediatek,phy-mode:
55+
description: System controller phandle, used to enable SATA function
56+
$ref: /schemas/types.yaml#/definitions/phandle
57+
58+
required:
59+
- reg
60+
- interrupts
61+
- interrupt-names
62+
- clocks
63+
- clock-names
64+
- phys
65+
- phy-names
66+
- ports-implemented
67+
68+
unevaluatedProperties: false
69+
70+
examples:
71+
- |
72+
#include <dt-bindings/clock/mt7622-clk.h>
73+
#include <dt-bindings/interrupt-controller/arm-gic.h>
74+
#include <dt-bindings/phy/phy.h>
75+
#include <dt-bindings/power/mt7622-power.h>
76+
#include <dt-bindings/reset/mt7622-reset.h>
77+
78+
sata@1a200000 {
79+
compatible = "mediatek,mt7622-ahci", "mediatek,mtk-ahci";
80+
reg = <0x1a200000 0x1100>;
81+
interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>;
82+
interrupt-names = "hostc";
83+
clocks = <&pciesys CLK_SATA_AHB_EN>,
84+
<&pciesys CLK_SATA_AXI_EN>,
85+
<&pciesys CLK_SATA_ASIC_EN>,
86+
<&pciesys CLK_SATA_RBC_EN>,
87+
<&pciesys CLK_SATA_PM_EN>;
88+
clock-names = "ahb", "axi", "asic", "rbc", "pm";
89+
phys = <&u3port1 PHY_TYPE_SATA>;
90+
phy-names = "sata-phy";
91+
ports-implemented = <0x1>;
92+
power-domains = <&scpsys MT7622_POWER_DOMAIN_HIF0>;
93+
resets = <&pciesys MT7622_SATA_AXI_BUS_RST>,
94+
<&pciesys MT7622_SATA_PHY_SW_RST>,
95+
<&pciesys MT7622_SATA_PHY_REG_RST>;
96+
reset-names = "axi", "sw", "reg";
97+
mediatek,phy-mode = <&pciesys>;
98+
};

drivers/ata/Kconfig

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -116,15 +116,14 @@ config SATA_AHCI
116116
If unsure, say N.
117117

118118
config SATA_MOBILE_LPM_POLICY
119-
int "Default SATA Link Power Management policy for low power chipsets"
119+
int "Default SATA Link Power Management policy"
120120
range 0 4
121121
default 0
122122
depends on SATA_AHCI
123123
help
124124
Select the Default SATA Link Power Management (LPM) policy to use
125125
for chipsets / "South Bridges" supporting low-power modes. Such
126-
chipsets are typically found on most laptops but desktops and
127-
servers now also widely use chipsets supporting low power modes.
126+
chipsets are ubiquitous across laptops, desktops and servers.
128127

129128
The value set has the following meanings:
130129
0 => Keep firmware settings

0 commit comments

Comments
 (0)