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(岩松 信洋 ○DITC□DIT○OST) 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