From patchwork Wed Aug 9 09:17:57 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?b?Q2h1bmZlbmcgWXVuICjkupHmmKXls7Ap?= X-Patchwork-Id: 799583 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-tegra-owner@vger.kernel.org; receiver=) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3xS5LC5CVLz9s71 for ; Wed, 9 Aug 2017 19:18:59 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752897AbdHIJS7 (ORCPT ); Wed, 9 Aug 2017 05:18:59 -0400 Received: from mailgw01.mediatek.com ([218.249.47.110]:39391 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1752665AbdHIJSS (ORCPT ); Wed, 9 Aug 2017 05:18:18 -0400 Received: from mtkcas35.mediatek.inc [(172.27.4.250)] by mailgw01.mediatek.com (envelope-from ) (mailgw01.mediatek.com ESMTP with TLS) with ESMTP id 755999661; Wed, 09 Aug 2017 17:18:09 +0800 Received: from mtkcas07.mediatek.inc (172.21.101.84) by MTKMBS31N2.mediatek.inc (172.27.4.87) with Microsoft SMTP Server (TLS) id 15.0.1210.3; Wed, 9 Aug 2017 17:18:07 +0800 Received: from localhost.localdomain (10.17.3.153) by mtkcas07.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1210.3 via Frontend Transport; Wed, 9 Aug 2017 17:18:00 +0800 From: Chunfeng Yun To: Kishon Vijay Abraham I CC: Heiko Stuebner , Kukjin Kim , Krzysztof Kozlowski , Kamil Debski , Sylwester Nawrocki , Thierry Reding , Jonathan Hunter , Matthias Brugger , Bartlomiej Zolnierkiewicz , Lee Jones , Vivek Gautam , Chunfeng Yun , Axel Lin , Baoyou Xie , Arnd Bergmann , Sekhar Nori , Viresh Kumar , Jaehoon Chung , , , , , , Subject: [PATCH 1/4] phy: rockchip: use of_device_get_match_data() Date: Wed, 9 Aug 2017 17:17:57 +0800 Message-ID: <1502270280-13792-1-git-send-email-chunfeng.yun@mediatek.com> X-Mailer: git-send-email 1.7.9.5 MIME-Version: 1.0 X-MTK: N Sender: linux-tegra-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-tegra@vger.kernel.org reduce the boilerplate code to get the specific data Signed-off-by: Chunfeng Yun --- drivers/phy/rockchip/phy-rockchip-inno-usb2.c | 9 +++------ drivers/phy/rockchip/phy-rockchip-pcie.c | 7 +++---- drivers/phy/rockchip/phy-rockchip-usb.c | 10 +++------- 3 files changed, 9 insertions(+), 17 deletions(-) diff --git a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c index 626883d..c2379b2 100644 --- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c +++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c @@ -27,6 +27,7 @@ #include #include #include +#include #include #include #include @@ -1024,7 +1025,6 @@ static int rockchip_usb2phy_probe(struct platform_device *pdev) struct phy_provider *provider; struct rockchip_usb2phy *rphy; const struct rockchip_usb2phy_cfg *phy_cfgs; - const struct of_device_id *match; unsigned int reg; int index, ret; @@ -1032,11 +1032,9 @@ static int rockchip_usb2phy_probe(struct platform_device *pdev) if (!rphy) return -ENOMEM; - match = of_match_device(dev->driver->of_match_table, dev); - if (!match || !match->data) { - dev_err(dev, "phy configs are not assigned!\n"); + phy_cfgs = of_device_get_match_data(dev); + if (!phy_cfgs) return -EINVAL; - } if (!dev->parent || !dev->parent->of_node) return -EINVAL; @@ -1052,7 +1050,6 @@ static int rockchip_usb2phy_probe(struct platform_device *pdev) } rphy->dev = dev; - phy_cfgs = match->data; rphy->chg_state = USB_CHG_STATE_UNDEFINED; rphy->chg_type = POWER_SUPPLY_TYPE_UNKNOWN; platform_set_drvdata(pdev, rphy); diff --git a/drivers/phy/rockchip/phy-rockchip-pcie.c b/drivers/phy/rockchip/phy-rockchip-pcie.c index 6904633..f7dc0d6 100644 --- a/drivers/phy/rockchip/phy-rockchip-pcie.c +++ b/drivers/phy/rockchip/phy-rockchip-pcie.c @@ -21,6 +21,7 @@ #include #include #include +#include #include #include #include @@ -286,7 +287,6 @@ static int rockchip_pcie_phy_probe(struct platform_device *pdev) struct phy *generic_phy; struct phy_provider *phy_provider; struct regmap *grf; - const struct of_device_id *of_id; grf = syscon_node_to_regmap(dev->parent->of_node); if (IS_ERR(grf)) { @@ -298,11 +298,10 @@ static int rockchip_pcie_phy_probe(struct platform_device *pdev) if (!rk_phy) return -ENOMEM; - of_id = of_match_device(rockchip_pcie_phy_dt_ids, &pdev->dev); - if (!of_id) + rk_phy->phy_data = of_device_get_match_data(dev); + if (!rk_phy->phy_data) return -EINVAL; - rk_phy->phy_data = (struct rockchip_pcie_data *)of_id->data; rk_phy->reg_base = grf; rk_phy->phy_rst = devm_reset_control_get(dev, "phy"); diff --git a/drivers/phy/rockchip/phy-rockchip-usb.c b/drivers/phy/rockchip/phy-rockchip-usb.c index 3378eeb..7db1166 100644 --- a/drivers/phy/rockchip/phy-rockchip-usb.c +++ b/drivers/phy/rockchip/phy-rockchip-usb.c @@ -22,6 +22,7 @@ #include #include #include +#include #include #include #include @@ -417,7 +418,6 @@ static int rockchip_usb_phy_probe(struct platform_device *pdev) struct device *dev = &pdev->dev; struct rockchip_usb_phy_base *phy_base; struct phy_provider *phy_provider; - const struct of_device_id *match; struct device_node *child; int err; @@ -425,13 +425,9 @@ static int rockchip_usb_phy_probe(struct platform_device *pdev) if (!phy_base) return -ENOMEM; - match = of_match_device(dev->driver->of_match_table, dev); - if (!match || !match->data) { - dev_err(dev, "missing phy data\n"); + phy_base->pdata = of_device_get_match_data(dev); + if (!phy_base->pdata) return -EINVAL; - } - - phy_base->pdata = match->data; phy_base->dev = dev; phy_base->reg_base = ERR_PTR(-ENODEV);