Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp9473836ybl; Wed, 25 Dec 2019 23:11:59 -0800 (PST) X-Google-Smtp-Source: APXvYqxsvv9+rYIRx4cNWd4kdRra7y6mPq6Oi9qXkKLnCL9EY5lRSsNrNP+UawGdHP7jVC305zXI X-Received: by 2002:a9d:53cb:: with SMTP id i11mr50498010oth.158.1577344318919; Wed, 25 Dec 2019 23:11:58 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1577344318; cv=none; d=google.com; s=arc-20160816; b=PoQKVEFcVBCfT6ooHv2mD8lrEZM61mUWmIZQxGvO6hOqyCiL30rs2EsepBF6+10QLC MAPdKm0fOJh3yEC0MrJl83yi+FZ5k6nayImou5SmXRafeEoTzWEJfO+Fv3GYsr4X0is6 6oTy9g9WanjujQywG/z0aKUnsN+eeEc0LFnAXXNaUvg5XJugp2r6BalxvE5ARz4DqDb9 tw4Ydd0/TzRLyYBfMv6ZtHdR+MQPdCdjLCuR2HnjVyumNQjS9OmuzQ7Idx/6LX8ZntAZ p5pDRN5VJonppi1fW719l8jpFrLnRTrkAMIdjQEH3+I8qlpRqlJSF+xBSGa9wCXMsndX jQUQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from; bh=3zMhb8spuBCHcKiXWyzIk4VDHuuXTxYdNWO9el72b8E=; b=x1UIMpamvqK8dqg3msC/kfnny26U6LMEQnahhMgOeU2eEgNB4RTpHKCZrgGugRLsb5 SuFrxtLxOnwkwesTqAeibYOr+S0/2OZk+Jy9QZNAB/vxUTKDgVjZ/6H7YVmf5dvhUu0c qamtuAY/Am40PxtuGJkr0dUc/JlCcEwc+UAHFNIcViwF8JX25fN9HzzsuFvU103BpQqV XZglONrirC/j75+grr9xouV1cRDlGuLtdAlRwKdfGRK0dPysfKqWy16FVTmjWTYqyjTT 2DU//Bmr2JUQkOOZ+A9GSev2kyyvgMRtytRbfcBWiUe3BT5StTd2s4cRZKT0IQ1GNPQ4 bI/Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 8si14291128ota.266.2019.12.25.23.11.45; Wed, 25 Dec 2019 23:11:58 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726202AbfLZHLD (ORCPT + 99 others); Thu, 26 Dec 2019 02:11:03 -0500 Received: from mga12.intel.com ([192.55.52.136]:42144 "EHLO mga12.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725268AbfLZHLC (ORCPT ); Thu, 26 Dec 2019 02:11:02 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 25 Dec 2019 23:11:02 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.69,358,1571727600"; d="scan'208";a="223533695" Received: from sgsxdev004.isng.intel.com (HELO localhost) ([10.226.88.13]) by fmsmga001.fm.intel.com with ESMTP; 25 Dec 2019 23:11:00 -0800 From: "Ramuthevar,Vadivel MuruganX" To: broonie@kernel.org, vigneshr@ti.com, linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org Cc: robh+dt@kernel.org, cheol.yong.kim@intel.com, qi-ming.wu@intel.com, "Ramuthevar,Vadivel MuruganX" Subject: [PATCH v5 0/2] spi: cadence-quadpsi: Add support for the Cadence QSPI controller Date: Thu, 26 Dec 2019 15:10:56 +0800 Message-Id: <20191226071058.20041-1-vadivel.muruganx.ramuthevar@linux.intel.com> X-Mailer: git-send-email 2.11.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Add support for the Cadence QSPI controller. This controller is present in the Intel Lightning Mountain(LGM) SoCs, Altera and TI SoCs. This driver has been tested on the Intel LGM SoCs. This driver does not support generic SPI and also the implementation only supports spi-mem interface to replace the existing driver in mtd/spi-nor/cadence-quadspi.c, the existing driver only support SPI-NOR flash memory. Thank you Vignesh for the valuable review comments and guidance, sorry for the delay since waitting for the merge window to rebase and send it now by one-shot. changes from v4: -- kbuild test robot warnings fixed -- Add Reborted-by: tag changes from v3: spi-cadence-quadspi.c -- static to all functions wrt to local to the file. -- Prefix cqspi_ and make the function static -- cmd_ops, data_ops and dummy_ops dropped -- addr_ops kept since it is required for address calculation. -- devm_ used for supported functions , removed legacy API's -- removed "indirect" name from functions -- replaced by master->mode_bits = SPI_RX_QUAD | SPI_TX_DUAL | SPI_RX_DUAL | SPI_RX_OCTAL; as per Vignesh susggestion -- removed free functions since devm_ handles automatically. -- dropped all unused Macros YAML file update: -- cadence,qspi.yaml file name replace by cdns,qspi-nor.yaml -- compatible string updated as per Vignesh suggestion -- for single entry, removed descriptions -- removed optional parameters Build Result: linux$ make DT_SCHEMA_FILES=Documentation/devicetree/bindings/spi/cdns,qspi-nor.yaml dt_binding_check CHKDT Documentation/devicetree/bindings/spi/cdns,qspi-nor.yaml SCHEMA Documentation/devicetree/bindings/processed-schema.yaml DTC Documentation/devicetree/bindings/spi/cdns,qspi-nor.example.dt.yaml CHECK Documentation/devicetree/bindings/spi/cdns,qspi-nor.example.dt.yaml Ramuthevar Vadivel Murugan (2): dt-bindings: spi: Add schema for Cadence QSPI Controller driver spi: cadence-quadpsi: Add support for the Cadence QSPI controller .../devicetree/bindings/spi/cdns,qspi-nor.yaml | 147 +++ drivers/spi/Kconfig | 8 + drivers/spi/Makefile | 1 + drivers/spi/spi-cadence-quadspi.c | 1175 ++++++++++++++++++++ drivers/spi/spi-cadence-quadspi.h | 245 ++++ 5 files changed, 1576 insertions(+) create mode 100644 Documentation/devicetree/bindings/spi/cdns,qspi-nor.yaml create mode 100644 drivers/spi/spi-cadence-quadspi.c create mode 100644 drivers/spi/spi-cadence-quadspi.h -- 2.11.0