RE: [PATCH v2 1/2] pwm: Manage owner assignment implicitly for drivers

nobuhiro1.iwamatsu
2023-08-07T01:23:50Z

Hi Uwe,

> -----Original Message-----
> From: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> Sent: Friday, August 4, 2023 11:27 PM
> To: Thierry Reding <thierry.reding@gmail.com>; Laurent Pinchart
> <Laurent.pinchart@ideasonboard.com>
> Cc: Linus Walleij <linus.walleij@linaro.org>; Bartosz Golaszewski
> <brgl@bgdev.pl>; Andy Shevchenko <andy@kernel.org>; Douglas Anderson
> <dianders@chromium.org>; Andrzej Hajda <andrzej.hajda@intel.com>; Neil
> Armstrong <neil.armstrong@linaro.org>; Robert Foss <rfoss@kernel.org>;
> Jonas Karlman <jonas@kwiboo.se>; Jernej Skrabec
> <jernej.skrabec@gmail.com>; David Airlie <airlied@gmail.com>; Daniel Vetter
> <daniel@ffwll.ch>; Pavel Machek <pavel@ucw.cz>; Lee Jones
> <lee@kernel.org>; Hector Martin <marcan@marcan.st>; Sven Peter
> <sven@svenpeter.dev>; Alyssa Rosenzweig <alyssa@rosenzweig.io>; Nicolas
> Ferre <nicolas.ferre@microchip.com>; Alexandre Belloni
> <alexandre.belloni@bootlin.com>; Claudiu Beznea
> <claudiu.beznea@microchip.com>; Ray Jui <rjui@broadcom.com>; Scott
> Branden <sbranden@broadcom.com>; Broadcom internal kernel review list
> <bcm-kernel-feedback-list@broadcom.com>; Florian Fainelli
> <florian.fainelli@broadcom.com>; Alexander Shiyan <shc_work@mail.ru>;
> Benson Leung <bleung@chromium.org>; Guenter Roeck
> <groeck@chromium.org>; Shawn Guo <shawnguo@kernel.org>; Sascha
> Hauer <s.hauer@pengutronix.de>; Pengutronix Kernel Team
> <kernel@pengutronix.de>; Fabio Estevam <festevam@gmail.com>; NXP
> Linux Team <linux-imx@nxp.com>; Paul Cercueil <paul@crapouillou.net>;
> Vladimir Zapolskiy <vz@mleia.com>; Kevin Hilman <khilman@baylibre.com>;
> Jerome Brunet <jbrunet@baylibre.com>; Martin Blumenstingl
> <martin.blumenstingl@googlemail.com>; Conor Dooley
> <conor.dooley@microchip.com>; Daire McNamara
> <daire.mcnamara@microchip.com>; Matthias Brugger
> <matthias.bgg@gmail.com>; AngeloGioacchino Del Regno
> <angelogioacchino.delregno@collabora.com>; Jonathan Neuschäfer
> <j.neuschaefer@gmx.net>; Heiko Stuebner <heiko@sntech.de>; Krzysztof
> Kozlowski <krzysztof.kozlowski@linaro.org>; Alim Akhtar
> <alim.akhtar@samsung.com>; Palmer Dabbelt <palmer@dabbelt.com>; Paul
> Walmsley <paul.walmsley@sifive.com>; Michael Walle <michael@walle.cc>;
> Orson Zhai <orsonzhai@gmail.com>; Baolin Wang
> <baolin.wang@linux.alibaba.com>; Chunyan Zhang
> <zhang.lyra@gmail.com>; Fabrice Gasnier <fabrice.gasnier@foss.st.com>;
> Maxime Coquelin <mcoquelin.stm32@gmail.com>; Alexandre Torgue
> <alexandre.torgue@foss.st.com>; Chen-Yu Tsai <wens@csie.org>; Samuel
> Holland <samuel@sholland.org>; Hammer Hsieh
> <hammerh0314@gmail.com>; Jonathan Hunter <jonathanh@nvidia.com>;
> iwamatsu nobuhiro(岩松 信洋 ○ＤＩＴＣ□ＤＩＴ○ＯＳＴ)
> <nobuhiro1.iwamatsu@toshiba.co.jp>; Sean Anderson
> <sean.anderson@seco.com>; Michal Simek <michal.simek@amd.com>;
> Johan Hovold <johan@kernel.org>; Alex Elder <elder@kernel.org>; Greg
> Kroah-Hartman <gregkh@linuxfoundation.org>; Anjelique Melendez
> <quic_amelende@quicinc.com>; Dmitry Baryshkov
> <dmitry.baryshkov@linaro.org>; Luca Weiss <luca@z3ntu.xyz>; Bjorn
> Andersson <quic_bjorande@quicinc.com>; linux-pwm@vger.kernel.org;
> linux-gpio@vger.kernel.org; dri-devel@lists.freedesktop.org;
> linux-leds@vger.kernel.org; asahi@lists.linux.dev;
> linux-arm-kernel@lists.infradead.org; linux-rpi-kernel@lists.infradead.org;
> chrome-platform@lists.linux.dev; linux-mips@vger.kernel.org;
> linux-amlogic@lists.infradead.org; linux-riscv@lists.infradead.org;
> linux-mediatek@lists.infradead.org; linux-rockchip@lists.infradead.org;
> linux-samsung-soc@vger.kernel.org;
> linux-stm32@st-md-mailman.stormreply.com; linux-sunxi@lists.linux.dev;
> linux-tegra@vger.kernel.org; greybus-dev@lists.linaro.org;
> linux-staging@lists.linux.dev
> Subject: [PATCH v2 1/2] pwm: Manage owner assignment implicitly for drivers
>
> Instead of requiring each driver to care for assigning the owner member of
> struct pwm_ops, handle that implicitly using a macro. Note that the owner
> member has to be moved to struct pwm_chip, as the ops structure usually lives
> in read-only memory and so cannot be modified.
>
> The upside is that new lowlevel drivers cannot forget the assignment and save
> one line each. The pwm-crc driver didn't assign .owner, that's not a problem in
> practise though as the driver cannot be compiled as a module.
>
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
> ---
> drivers/gpio/gpio-mvebu.c | 1 -
> drivers/gpu/drm/bridge/ti-sn65dsi86.c | 1 -
> drivers/leds/rgb/leds-qcom-lpg.c | 1 -
> drivers/pwm/core.c | 24
> ++++++++++++++----------
> drivers/pwm/pwm-ab8500.c | 1 -
> drivers/pwm/pwm-apple.c | 1 -
> drivers/pwm/pwm-atmel-hlcdc.c | 1 -
> drivers/pwm/pwm-atmel-tcb.c | 1 -
> drivers/pwm/pwm-atmel.c | 1 -
> drivers/pwm/pwm-bcm-iproc.c | 1 -
> drivers/pwm/pwm-bcm-kona.c | 1 -
> drivers/pwm/pwm-bcm2835.c | 1 -
> drivers/pwm/pwm-berlin.c | 1 -
> drivers/pwm/pwm-brcmstb.c | 1 -
> drivers/pwm/pwm-clk.c | 1 -
> drivers/pwm/pwm-clps711x.c | 1 -
> drivers/pwm/pwm-cros-ec.c | 1 -
> drivers/pwm/pwm-dwc.c | 1 -
> drivers/pwm/pwm-ep93xx.c | 1 -
> drivers/pwm/pwm-fsl-ftm.c | 1 -
> drivers/pwm/pwm-hibvt.c | 1 -
> drivers/pwm/pwm-img.c | 1 -
> drivers/pwm/pwm-imx-tpm.c | 1 -
> drivers/pwm/pwm-imx1.c | 1 -
> drivers/pwm/pwm-imx27.c | 1 -
> drivers/pwm/pwm-intel-lgm.c | 1 -
> drivers/pwm/pwm-iqs620a.c | 1 -
> drivers/pwm/pwm-jz4740.c | 1 -
> drivers/pwm/pwm-keembay.c | 1 -
> drivers/pwm/pwm-lp3943.c | 1 -
> drivers/pwm/pwm-lpc18xx-sct.c | 1 -
> drivers/pwm/pwm-lpc32xx.c | 1 -
> drivers/pwm/pwm-lpss.c | 1 -
> drivers/pwm/pwm-mediatek.c | 1 -
> drivers/pwm/pwm-meson.c | 1 -
> drivers/pwm/pwm-microchip-core.c | 1 -
> drivers/pwm/pwm-mtk-disp.c | 1 -
> drivers/pwm/pwm-mxs.c | 1 -
> drivers/pwm/pwm-ntxec.c | 1 -
> drivers/pwm/pwm-omap-dmtimer.c | 1 -
> drivers/pwm/pwm-pca9685.c | 1 -
> drivers/pwm/pwm-pxa.c | 1 -
> drivers/pwm/pwm-raspberrypi-poe.c | 1 -
> drivers/pwm/pwm-rcar.c | 1 -
> drivers/pwm/pwm-renesas-tpu.c | 1 -
> drivers/pwm/pwm-rockchip.c | 1 -
> drivers/pwm/pwm-rz-mtu3.c | 1 -
> drivers/pwm/pwm-samsung.c | 1 -
> drivers/pwm/pwm-sifive.c | 1 -
> drivers/pwm/pwm-sl28cpld.c | 1 -
> drivers/pwm/pwm-spear.c | 1 -
> drivers/pwm/pwm-sprd.c | 1 -
> drivers/pwm/pwm-sti.c | 1 -
> drivers/pwm/pwm-stm32-lp.c | 1 -
> drivers/pwm/pwm-stm32.c | 1 -
> drivers/pwm/pwm-stmpe.c | 1 -
> drivers/pwm/pwm-sun4i.c | 1 -
> drivers/pwm/pwm-sunplus.c | 1 -
> drivers/pwm/pwm-tegra.c | 1 -
> drivers/pwm/pwm-tiecap.c | 1 -
> drivers/pwm/pwm-tiehrpwm.c | 1 -
> drivers/pwm/pwm-twl-led.c | 2 --
> drivers/pwm/pwm-twl.c | 2 --
> drivers/pwm/pwm-visconti.c | 1 -

For Visconti:
Acked-by: Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp >

Best regards,
Nobuhiro