All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chanho Park <chanho61.park@samsung.com>
To: Alim Akhtar <alim.akhtar@samsung.com>,
	Avri Altman <avri.altman@wdc.com>,
	"James E . J . Bottomley" <jejb@linux.ibm.com>,
	"Martin K . Petersen" <martin.petersen@oracle.com>,
	Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Cc: Bean Huo <beanhuo@micron.com>,
	Bart Van Assche <bvanassche@acm.org>,
	Adrian Hunter <adrian.hunter@intel.com>,
	Christoph Hellwig <hch@infradead.org>,
	Can Guo <cang@codeaurora.org>, Jaegeuk Kim <jaegeuk@kernel.org>,
	Gyunghoon Kwon <goodjob.kwon@samsung.com>,
	linux-samsung-soc@vger.kernel.org, linux-scsi@vger.kernel.org,
	Chanho Park <chanho61.park@samsung.com>,
	Kiwoong Kim <kwmad.kim@samsung.com>
Subject: [PATCH v3 10/17] scsi: ufs: ufs-exynos: support custom version of ufs_hba_variant_ops
Date: Fri, 17 Sep 2021 15:54:29 +0900	[thread overview]
Message-ID: <20210917065436.145629-11-chanho61.park@samsung.com> (raw)
In-Reply-To: <20210917065436.145629-1-chanho61.park@samsung.com>

By default, ufs_hba_exynos_ops will be used but this patch supports to
use custom version of ufs_hba_variant_ops because some variants of
exynos-ufs will use only few callbacks.

Cc: Alim Akhtar <alim.akhtar@samsung.com>
Cc: Kiwoong Kim <kwmad.kim@samsung.com>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: Chanho Park <chanho61.park@samsung.com>
---
 drivers/scsi/ufs/ufs-exynos.c | 8 +++++++-
 drivers/scsi/ufs/ufs-exynos.h | 1 +
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/drivers/scsi/ufs/ufs-exynos.c b/drivers/scsi/ufs/ufs-exynos.c
index e32f7d09db1a..a3160d9bd234 100644
--- a/drivers/scsi/ufs/ufs-exynos.c
+++ b/drivers/scsi/ufs/ufs-exynos.c
@@ -1238,8 +1238,14 @@ static int exynos_ufs_probe(struct platform_device *pdev)
 {
 	int err;
 	struct device *dev = &pdev->dev;
+	const struct ufs_hba_variant_ops *vops = &ufs_hba_exynos_ops;
+	const struct exynos_ufs_drv_data *drv_data =
+		device_get_match_data(dev);
 
-	err = ufshcd_pltfrm_init(pdev, &ufs_hba_exynos_ops);
+	if (drv_data && drv_data->vops)
+		vops = drv_data->vops;
+
+	err = ufshcd_pltfrm_init(pdev, vops);
 	if (err)
 		dev_err(dev, "ufshcd_pltfrm_init() failed %d\n", err);
 
diff --git a/drivers/scsi/ufs/ufs-exynos.h b/drivers/scsi/ufs/ufs-exynos.h
index 4f93db893ce8..bc4b8b0324bd 100644
--- a/drivers/scsi/ufs/ufs-exynos.h
+++ b/drivers/scsi/ufs/ufs-exynos.h
@@ -142,6 +142,7 @@ struct exynos_ufs_uic_attr {
 };
 
 struct exynos_ufs_drv_data {
+	const struct ufs_hba_variant_ops *vops;
 	struct exynos_ufs_uic_attr *uic_attr;
 	unsigned int quirks;
 	unsigned int opts;
-- 
2.33.0


  parent reply	other threads:[~2021-09-17  6:55 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20210917065522epcas2p2c9c7baccfc82b3798804c351dbf676eb@epcas2p2.samsung.com>
2021-09-17  6:54 ` [PATCH v3 00/17] introduce exynosauto v9 ufs driver Chanho Park
     [not found]   ` <CGME20210917065522epcas2p49ce06e9686c9b6f5cb1dd16ca9d82052@epcas2p4.samsung.com>
2021-09-17  6:54     ` [PATCH v3 01/17] scsi: ufs: add quirk to handle broken UIC command Chanho Park
2021-09-23  3:44       ` Alim Akhtar
     [not found]   ` <CGME20210917065522epcas2p4ed13768faa6aa6d33116606e2601321e@epcas2p4.samsung.com>
2021-09-17  6:54     ` [PATCH v3 02/17] scsi: ufs: add quirk to enable host controller without ph configuration Chanho Park
2021-09-23  3:48       ` Alim Akhtar
     [not found]   ` <CGME20210917065522epcas2p26f56b37c3f7505b9d0e34bc2162fdbbd@epcas2p2.samsung.com>
2021-09-17  6:54     ` [PATCH v3 03/17] scsi: ufs: ufs-exynos: change pclk available max value Chanho Park
2021-09-27  5:25       ` Inki Dae
2021-09-27  6:46         ` Chanho Park
2021-09-27  7:11           ` Inki Dae
2021-09-27 11:08             ` Chanho Park
2021-09-28  2:18               ` Inki Dae
     [not found]   ` <CGME20210917065522epcas2p23066a1bd5e39ac1931d7e38064fe23dd@epcas2p2.samsung.com>
2021-09-17  6:54     ` [PATCH v3 04/17] scsi: ufs: ufs-exynos: simplify drv_data retrieval Chanho Park
     [not found]   ` <CGME20210917065523epcas2p3ff66daa15c8c782f839422756c388d93@epcas2p3.samsung.com>
2021-09-17  6:54     ` [PATCH v3 05/17] dt-bindings: ufs: exynos-ufs: add sysreg regmap property Chanho Park
2021-09-22 19:57       ` Rob Herring
2021-09-23  0:47         ` Chanho Park
2021-09-23 12:39           ` Rob Herring
2021-09-24  1:10             ` Chanho Park
     [not found]   ` <CGME20210917065523epcas2p477a63b06cbb9f5588aa2c149c9d1db10@epcas2p4.samsung.com>
2021-09-17  6:54     ` [PATCH v3 06/17] scsi: ufs: ufs-exynos: get sysreg regmap for io-coherency Chanho Park
2021-09-22 19:55       ` Rob Herring
2021-09-23  0:39         ` Chanho Park
2021-09-23 12:26           ` Rob Herring
2021-09-24  0:59             ` Chanho Park
     [not found]   ` <CGME20210917065523epcas2p44a9f121c18e0f3a5614f980c9eeffa16@epcas2p4.samsung.com>
2021-09-17  6:54     ` [PATCH v3 07/17] scsi: ufs: ufs-exynos: add refclkout_stop control Chanho Park
     [not found]   ` <CGME20210917065523epcas2p1215e9f56482339ca8a9346a0ac2bfe23@epcas2p1.samsung.com>
2021-09-17  6:54     ` [PATCH v3 08/17] scsi: ufs: ufs-exynos: add setup_clocks callback Chanho Park
2021-09-23  3:51       ` Alim Akhtar
     [not found]   ` <CGME20210917065523epcas2p15b648b88af85252fe12ff8026307526a@epcas2p1.samsung.com>
2021-09-17  6:54     ` [PATCH v3 09/17] scsi: ufs: ufs-exynos: correct timeout value setting registers Chanho Park
2021-09-23  4:14       ` Alim Akhtar
2021-09-23  5:47         ` Chanho Park
     [not found]   ` <CGME20210917065523epcas2p39e18203beafe9377e9dac819f01b804f@epcas2p3.samsung.com>
2021-09-17  6:54     ` Chanho Park [this message]
2021-09-23  4:28       ` [PATCH v3 10/17] scsi: ufs: ufs-exynos: support custom version of ufs_hba_variant_ops Alim Akhtar
     [not found]   ` <CGME20210917065523epcas2p3b178e3d9d2d4db628f597732be9c6856@epcas2p3.samsung.com>
2021-09-17  6:54     ` [PATCH v3 11/17] scsi: ufs: ufs-exynos: add EXYNOS_UFS_OPT_SKIP_CONFIG_PHY_ATTR option Chanho Park
2021-09-23  4:32       ` Alim Akhtar
     [not found]   ` <CGME20210917065523epcas2p2cb63cd8924be44e6eaa42c7213bd15d4@epcas2p2.samsung.com>
2021-09-17  6:54     ` [PATCH v3 12/17] scsi: ufs: ufs-exynos: factor out priv data init Chanho Park
     [not found]   ` <CGME20210917065523epcas2p4fc1be41c739361dd6ae9d167cfc631dc@epcas2p4.samsung.com>
2021-09-17  6:54     ` [PATCH v3 13/17] scsi: ufs: ufs-exynos: add pre/post_hce_enable drv callbacks Chanho Park
2021-09-23  4:51       ` Alim Akhtar
     [not found]   ` <CGME20210917065523epcas2p47156d9fba5b8d8a5e5908ccdc0ae1655@epcas2p4.samsung.com>
2021-09-17  6:54     ` [PATCH v3 14/17] scsi: ufs: ufs-exynos: support exynosauto v9 ufs driver Chanho Park
     [not found]   ` <CGME20210917065524epcas2p18a720757ef3c4fc08d4bc8d16f9fe7fe@epcas2p1.samsung.com>
2021-09-17  6:54     ` [PATCH v3 15/17] scsi: ufs: ufs-exynos: multi-host configuration for exynosauto Chanho Park
2021-09-27  5:31       ` Inki Dae
2021-09-27  6:56         ` Chanho Park
     [not found]   ` <CGME20210917065524epcas2p3929f70cb0b62e6ca85a6f4814b61fae1@epcas2p3.samsung.com>
2021-09-17  6:54     ` [PATCH v3 16/17] scsi: ufs: ufs-exynos: introduce exynosauto v9 virtual host Chanho Park
     [not found]   ` <CGME20210917065524epcas2p455b2900227b6a20994bec4816248f2bf@epcas2p4.samsung.com>
2021-09-17  6:54     ` [PATCH v3 17/17] dt-bindings: ufs: exynos-ufs: add exynosautov9 compatible Chanho Park
2021-09-22 19:58       ` Rob Herring

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210917065436.145629-11-chanho61.park@samsung.com \
    --to=chanho61.park@samsung.com \
    --cc=adrian.hunter@intel.com \
    --cc=alim.akhtar@samsung.com \
    --cc=avri.altman@wdc.com \
    --cc=beanhuo@micron.com \
    --cc=bvanassche@acm.org \
    --cc=cang@codeaurora.org \
    --cc=goodjob.kwon@samsung.com \
    --cc=hch@infradead.org \
    --cc=jaegeuk@kernel.org \
    --cc=jejb@linux.ibm.com \
    --cc=krzysztof.kozlowski@canonical.com \
    --cc=kwmad.kim@samsung.com \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.