Received: by 2002:a05:6a10:2785:0:0:0:0 with SMTP id ia5csp3006265pxb; Tue, 12 Jan 2021 04:10:26 -0800 (PST) X-Google-Smtp-Source: ABdhPJwu7p8DvLC3r+PkCLHElMXU/X5eHB5hBreVmle/shN/DBgs+5tFArjWR5hR17g/2VCPmrnH X-Received: by 2002:a17:906:a29a:: with SMTP id i26mr2985084ejz.45.1610453425787; Tue, 12 Jan 2021 04:10:25 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1610453425; cv=none; d=google.com; s=arc-20160816; b=zbbdaxFj5WtQGWIriHKtANX5ddvkiSjLXHjaoRbemEPeuZYyNDjasT6QY11Zde0Ke4 7N+W6eM/z+vMXwh1lzyFkvY8VcSlE5OrlOcMEec0pMbTj40izSTztpzsxvNI0WlrDSK4 9nDAsJPhmz7eYe5KgsEZ6e+bkG9PIWSTmlULHE9ow316jD3hHeH/l7wi8OsPJFA9jswY WolE2FQPAeQfM54eJ5/BXBiAwqnWxLoS5jXsyCVuES9nib5M2wi8+hifV2CWobgqLMLG 3ZkWP1HoTPir9vRHZiAriCB59TVKZ7hVEN6DJIDe28UQ+BbVMNvpwDpgrXWkCqdiigXI oehw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:in-reply-to:message-id:date:subject :cc:to:from; bh=lrj42HHdpBehI5PSZXa7tbQt59JzjTfeVxB9yMOMujE=; b=L6TCmFMF3Uu0n6Bk+V2QvS+8uL6bLDIH2jXmb8hGQYJVD5/q/nIQntXSE1qKLlfE6x sRjoGv6tSMiA6v359ojhNKmVPhmmLd6wBSOqPwS9BMUSzj6vBFMCKcwupUIxZj+NXZcO lQZLrdmfSjrm4/rEfl3AEfN4y/C75LUK1BmQWkSeLkkRReJYz5Ia/RcboDewel2/lOjh uV9/qwudivM/Q469NLvmfvSciqfjRasQoN6Vuqc206KTynlKz1d482PN0H+4eygzb6AE tjwr1BXiMyL0fBt0YZ4fWHBysT5cQ9Yk3r7eNKteHtyOPa8Kruur+2aI6FEBt/5hRRam EZ2A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id u30si1213631edb.89.2021.01.12.04.10.02; Tue, 12 Jan 2021 04:10:25 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2405749AbhALJBx (ORCPT + 99 others); Tue, 12 Jan 2021 04:01:53 -0500 Received: from relmlor2.renesas.com ([210.160.252.172]:18782 "EHLO relmlie6.idc.renesas.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S2405659AbhALJBw (ORCPT ); Tue, 12 Jan 2021 04:01:52 -0500 X-IronPort-AV: E=Sophos;i="5.79,340,1602514800"; d="scan'208";a="68514074" Received: from unknown (HELO relmlir5.idc.renesas.com) ([10.200.68.151]) by relmlie6.idc.renesas.com with ESMTP; 12 Jan 2021 18:01:19 +0900 Received: from localhost.localdomain (unknown [10.166.252.89]) by relmlir5.idc.renesas.com (Postfix) with ESMTP id 18DD64007554; Tue, 12 Jan 2021 18:01:19 +0900 (JST) From: Yoshihiro Shimoda To: marek.vasut+renesas@gmail.com, lee.jones@linaro.org, matti.vaittinen@fi.rohmeurope.com, lgirdwood@gmail.com, broonie@kernel.org, linus.walleij@linaro.org, bgolaszewski@baylibre.com Cc: khiem.nguyen.xt@renesas.com, linux-power@fi.rohmeurope.com, linux-gpio@vger.kernel.org, linux-renesas-soc@vger.kernel.org, linux-kernel@vger.kernel.org, Yoshihiro Shimoda Subject: [PATCH v9 07/12] gpio: bd9571mwv: rid of using struct bd9571mwv Date: Tue, 12 Jan 2021 18:01:02 +0900 Message-Id: <1610442067-7446-8-git-send-email-yoshihiro.shimoda.uh@renesas.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1610442067-7446-1-git-send-email-yoshihiro.shimoda.uh@renesas.com> References: <1610442067-7446-1-git-send-email-yoshihiro.shimoda.uh@renesas.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org To simplify this driver, use dev_get_regmap() and rid of using struct bd9571mwv. Signed-off-by: Yoshihiro Shimoda Reviewed-by: Matti Vaittinen Acked-by: Linus Walleij Acked-by: Bartosz Golaszewski --- drivers/gpio/gpio-bd9571mwv.c | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/drivers/gpio/gpio-bd9571mwv.c b/drivers/gpio/gpio-bd9571mwv.c index abb622c..0e5395f 100644 --- a/drivers/gpio/gpio-bd9571mwv.c +++ b/drivers/gpio/gpio-bd9571mwv.c @@ -16,8 +16,8 @@ #include struct bd9571mwv_gpio { + struct regmap *regmap; struct gpio_chip chip; - struct bd9571mwv *bd; }; static int bd9571mwv_gpio_get_direction(struct gpio_chip *chip, @@ -26,7 +26,7 @@ static int bd9571mwv_gpio_get_direction(struct gpio_chip *chip, struct bd9571mwv_gpio *gpio = gpiochip_get_data(chip); int ret, val; - ret = regmap_read(gpio->bd->regmap, BD9571MWV_GPIO_DIR, &val); + ret = regmap_read(gpio->regmap, BD9571MWV_GPIO_DIR, &val); if (ret < 0) return ret; if (val & BIT(offset)) @@ -40,8 +40,7 @@ static int bd9571mwv_gpio_direction_input(struct gpio_chip *chip, { struct bd9571mwv_gpio *gpio = gpiochip_get_data(chip); - regmap_update_bits(gpio->bd->regmap, BD9571MWV_GPIO_DIR, - BIT(offset), 0); + regmap_update_bits(gpio->regmap, BD9571MWV_GPIO_DIR, BIT(offset), 0); return 0; } @@ -52,9 +51,9 @@ static int bd9571mwv_gpio_direction_output(struct gpio_chip *chip, struct bd9571mwv_gpio *gpio = gpiochip_get_data(chip); /* Set the initial value */ - regmap_update_bits(gpio->bd->regmap, BD9571MWV_GPIO_OUT, + regmap_update_bits(gpio->regmap, BD9571MWV_GPIO_OUT, BIT(offset), value ? BIT(offset) : 0); - regmap_update_bits(gpio->bd->regmap, BD9571MWV_GPIO_DIR, + regmap_update_bits(gpio->regmap, BD9571MWV_GPIO_DIR, BIT(offset), BIT(offset)); return 0; @@ -65,7 +64,7 @@ static int bd9571mwv_gpio_get(struct gpio_chip *chip, unsigned int offset) struct bd9571mwv_gpio *gpio = gpiochip_get_data(chip); int ret, val; - ret = regmap_read(gpio->bd->regmap, BD9571MWV_GPIO_IN, &val); + ret = regmap_read(gpio->regmap, BD9571MWV_GPIO_IN, &val); if (ret < 0) return ret; @@ -77,7 +76,7 @@ static void bd9571mwv_gpio_set(struct gpio_chip *chip, unsigned int offset, { struct bd9571mwv_gpio *gpio = gpiochip_get_data(chip); - regmap_update_bits(gpio->bd->regmap, BD9571MWV_GPIO_OUT, + regmap_update_bits(gpio->regmap, BD9571MWV_GPIO_OUT, BIT(offset), value ? BIT(offset) : 0); } @@ -105,9 +104,9 @@ static int bd9571mwv_gpio_probe(struct platform_device *pdev) platform_set_drvdata(pdev, gpio); - gpio->bd = dev_get_drvdata(pdev->dev.parent); + gpio->regmap = dev_get_regmap(pdev->dev.parent, NULL); gpio->chip = template_chip; - gpio->chip.parent = gpio->bd->dev; + gpio->chip.parent = pdev->dev.parent; ret = devm_gpiochip_add_data(&pdev->dev, &gpio->chip, gpio); if (ret < 0) { -- 2.7.4