Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

ata: ahci-dwc: Remove not-going-to-be-supported code for Baikal SoC

As noticed in the discussion [1] the Baikal SoC and platforms
are not going to be finalized, hence remove stale code.

Link: https://lore.kernel.org/lkml/22b92ddf-6321-41b5-8073-f9c7064d3432@infradead.org/ [1]
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Niklas Cassel <cassel@kernel.org>

authored by

Andy Shevchenko and committed by
Niklas Cassel
db1d3cfa 99d6b901

-171
-115
Documentation/devicetree/bindings/ata/baikal,bt1-ahci.yaml
··· 1 - # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 - %YAML 1.2 3 - --- 4 - $id: http://devicetree.org/schemas/ata/baikal,bt1-ahci.yaml# 5 - $schema: http://devicetree.org/meta-schemas/core.yaml# 6 - 7 - title: Baikal-T1 SoC AHCI SATA controller 8 - 9 - maintainers: 10 - - Serge Semin <fancer.lancer@gmail.com> 11 - 12 - description: 13 - AHCI SATA controller embedded into the Baikal-T1 SoC is based on the 14 - DWC AHCI SATA v4.10a IP-core. 15 - 16 - allOf: 17 - - $ref: snps,dwc-ahci-common.yaml# 18 - 19 - properties: 20 - compatible: 21 - const: baikal,bt1-ahci 22 - 23 - clocks: 24 - items: 25 - - description: Peripheral APB bus clock 26 - - description: Application AXI BIU clock 27 - - description: SATA Ports reference clock 28 - 29 - clock-names: 30 - items: 31 - - const: pclk 32 - - const: aclk 33 - - const: ref 34 - 35 - resets: 36 - items: 37 - - description: Application AXI BIU domain reset 38 - - description: SATA Ports clock domain reset 39 - 40 - reset-names: 41 - items: 42 - - const: arst 43 - - const: ref 44 - 45 - ports-implemented: 46 - maximum: 0x3 47 - 48 - patternProperties: 49 - "^sata-port@[0-1]$": 50 - $ref: /schemas/ata/snps,dwc-ahci-common.yaml#/$defs/dwc-ahci-port 51 - 52 - properties: 53 - reg: 54 - minimum: 0 55 - maximum: 1 56 - 57 - snps,tx-ts-max: 58 - $ref: /schemas/types.yaml#/definitions/uint32 59 - description: 60 - Due to having AXI3 bus interface utilized the maximum Tx DMA 61 - transaction size can't exceed 16 beats (AxLEN[3:0]). 62 - enum: [ 1, 2, 4, 8, 16 ] 63 - 64 - snps,rx-ts-max: 65 - $ref: /schemas/types.yaml#/definitions/uint32 66 - description: 67 - Due to having AXI3 bus interface utilized the maximum Rx DMA 68 - transaction size can't exceed 16 beats (AxLEN[3:0]). 69 - enum: [ 1, 2, 4, 8, 16 ] 70 - 71 - unevaluatedProperties: false 72 - 73 - required: 74 - - compatible 75 - - reg 76 - - interrupts 77 - - clocks 78 - - clock-names 79 - - resets 80 - 81 - unevaluatedProperties: false 82 - 83 - examples: 84 - - | 85 - sata@1f050000 { 86 - compatible = "baikal,bt1-ahci"; 87 - reg = <0x1f050000 0x2000>; 88 - #address-cells = <1>; 89 - #size-cells = <0>; 90 - 91 - interrupts = <0 64 4>; 92 - 93 - clocks = <&ccu_sys 1>, <&ccu_axi 2>, <&sata_ref_clk>; 94 - clock-names = "pclk", "aclk", "ref"; 95 - 96 - resets = <&ccu_axi 2>, <&ccu_sys 0>; 97 - reset-names = "arst", "ref"; 98 - 99 - ports-implemented = <0x3>; 100 - 101 - sata-port@0 { 102 - reg = <0>; 103 - 104 - snps,tx-ts-max = <4>; 105 - snps,rx-ts-max = <4>; 106 - }; 107 - 108 - sata-port@1 { 109 - reg = <1>; 110 - 111 - snps,tx-ts-max = <4>; 112 - snps,rx-ts-max = <4>; 113 - }; 114 - }; 115 - ...
-1
drivers/ata/Kconfig
··· 194 194 config AHCI_DWC 195 195 tristate "Synopsys DWC AHCI SATA support" 196 196 select SATA_HOST 197 - select MFD_SYSCON if (MIPS_BAIKAL_T1 || COMPILE_TEST) 198 197 help 199 198 This option enables support for the Synopsys DWC AHCI SATA 200 199 controller implementation.
-55
drivers/ata/ahci_dwc.c
··· 13 13 #include <linux/kernel.h> 14 14 #include <linux/libata.h> 15 15 #include <linux/log2.h> 16 - #include <linux/mfd/syscon.h> 17 16 #include <linux/module.h> 18 17 #include <linux/of.h> 19 18 #include <linux/platform_device.h> 20 19 #include <linux/pm.h> 21 - #include <linux/regmap.h> 22 20 23 21 #include "ahci.h" 24 22 ··· 90 92 #define AHCI_DWC_PORT_PHYCR 0x74 91 93 #define AHCI_DWC_PORT_PHYSR 0x78 92 94 93 - /* Baikal-T1 AHCI SATA specific registers */ 94 - #define AHCI_BT1_HOST_PHYCR AHCI_DWC_HOST_GPCR 95 - #define AHCI_BT1_HOST_MPLM_MASK GENMASK(29, 23) 96 - #define AHCI_BT1_HOST_LOSDT_MASK GENMASK(22, 20) 97 - #define AHCI_BT1_HOST_CRR BIT(19) 98 - #define AHCI_BT1_HOST_CRW BIT(18) 99 - #define AHCI_BT1_HOST_CRCD BIT(17) 100 - #define AHCI_BT1_HOST_CRCA BIT(16) 101 - #define AHCI_BT1_HOST_CRDI_MASK GENMASK(15, 0) 102 - 103 - #define AHCI_BT1_HOST_PHYSR AHCI_DWC_HOST_GPSR 104 - #define AHCI_BT1_HOST_CRA BIT(16) 105 - #define AHCI_BT1_HOST_CRDO_MASK GENMASK(15, 0) 106 - 107 95 struct ahci_dwc_plat_data { 108 96 unsigned int pflags; 109 97 unsigned int hflags; ··· 105 121 u32 timv; 106 122 u32 dmacr[AHCI_MAX_PORTS]; 107 123 }; 108 - 109 - static int ahci_bt1_init(struct ahci_host_priv *hpriv) 110 - { 111 - struct ahci_dwc_host_priv *dpriv = hpriv->plat_data; 112 - int ret; 113 - 114 - /* APB, application and reference clocks are required */ 115 - if (!ahci_platform_find_clk(hpriv, "pclk") || 116 - !ahci_platform_find_clk(hpriv, "aclk") || 117 - !ahci_platform_find_clk(hpriv, "ref")) { 118 - dev_err(&dpriv->pdev->dev, "No system clocks specified\n"); 119 - return -EINVAL; 120 - } 121 - 122 - /* 123 - * Fully reset the SATA AXI and ref clocks domain to ensure the state 124 - * machine is working from scratch especially if the reference clocks 125 - * source has been changed. 126 - */ 127 - ret = ahci_platform_assert_rsts(hpriv); 128 - if (ret) { 129 - dev_err(&dpriv->pdev->dev, "Couldn't assert the resets\n"); 130 - return ret; 131 - } 132 - 133 - ret = ahci_platform_deassert_rsts(hpriv); 134 - if (ret) { 135 - dev_err(&dpriv->pdev->dev, "Couldn't de-assert the resets\n"); 136 - return ret; 137 - } 138 - 139 - return 0; 140 - } 141 124 142 125 static struct ahci_host_priv *ahci_dwc_get_resources(struct platform_device *pdev) 143 126 { ··· 408 457 .pflags = AHCI_PLATFORM_GET_RESETS, 409 458 }; 410 459 411 - static struct ahci_dwc_plat_data ahci_bt1_plat = { 412 - .pflags = AHCI_PLATFORM_GET_RESETS | AHCI_PLATFORM_RST_TRIGGER, 413 - .init = ahci_bt1_init, 414 - }; 415 - 416 460 static const struct of_device_id ahci_dwc_of_match[] = { 417 461 { .compatible = "snps,dwc-ahci", &ahci_dwc_plat }, 418 462 { .compatible = "snps,spear-ahci", &ahci_dwc_plat }, 419 - { .compatible = "baikal,bt1-ahci", &ahci_bt1_plat }, 420 463 {}, 421 464 }; 422 465 MODULE_DEVICE_TABLE(of, ahci_dwc_of_match);