Message ID | 20230802033222.4024946-1-huqiang.qin@amlogic.com |
---|---|
Headers | show |
Series | Add watchdog support for Amlogic-T7 SoCs | expand |
On Wed, Aug 02, 2023 at 11:32:20AM +0800, Huqiang Qin wrote: > Add a new structure wdt_params to describe the watchdog difference > of different chips. > > Signed-off-by: Huqiang Qin <huqiang.qin@amlogic.com> Reviewed-by: Dmitry Rokosov <ddrokosov@sberdevices.ru> > --- > > V1 -> V2: Rename rst_shift to rst and use the BIT() macro to build > its initial value. > > drivers/watchdog/meson_gxbb_wdt.c | 16 +++++++++++++--- > 1 file changed, 13 insertions(+), 3 deletions(-) > > diff --git a/drivers/watchdog/meson_gxbb_wdt.c b/drivers/watchdog/meson_gxbb_wdt.c > index 35d80cb39856..18180d91543e 100644 > --- a/drivers/watchdog/meson_gxbb_wdt.c > +++ b/drivers/watchdog/meson_gxbb_wdt.c > @@ -22,7 +22,6 @@ > > #define GXBB_WDT_CTRL_CLKDIV_EN BIT(25) > #define GXBB_WDT_CTRL_CLK_EN BIT(24) > -#define GXBB_WDT_CTRL_EE_RESET BIT(21) > #define GXBB_WDT_CTRL_EN BIT(18) > #define GXBB_WDT_CTRL_DIV_MASK (BIT(18) - 1) > > @@ -45,6 +44,10 @@ struct meson_gxbb_wdt { > struct clk *clk; > }; > > +struct wdt_params { > + u32 rst; > +}; > + > static int meson_gxbb_wdt_start(struct watchdog_device *wdt_dev) > { > struct meson_gxbb_wdt *data = watchdog_get_drvdata(wdt_dev); > @@ -140,8 +143,12 @@ static const struct dev_pm_ops meson_gxbb_wdt_pm_ops = { > SET_SYSTEM_SLEEP_PM_OPS(meson_gxbb_wdt_suspend, meson_gxbb_wdt_resume) > }; > > +static const struct wdt_params gxbb_params = { > + .rst = BIT(21), > +}; > + > static const struct of_device_id meson_gxbb_wdt_dt_ids[] = { > - { .compatible = "amlogic,meson-gxbb-wdt", }, > + { .compatible = "amlogic,meson-gxbb-wdt", .data = &gxbb_params, }, > { /* sentinel */ }, > }; > MODULE_DEVICE_TABLE(of, meson_gxbb_wdt_dt_ids); > @@ -150,6 +157,7 @@ static int meson_gxbb_wdt_probe(struct platform_device *pdev) > { > struct device *dev = &pdev->dev; > struct meson_gxbb_wdt *data; > + struct wdt_params *params; > u32 ctrl_reg; > > data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL); > @@ -164,6 +172,8 @@ static int meson_gxbb_wdt_probe(struct platform_device *pdev) > if (IS_ERR(data->clk)) > return PTR_ERR(data->clk); > > + params = (struct wdt_params *)of_device_get_match_data(dev); > + > platform_set_drvdata(pdev, data); > > data->wdt_dev.parent = dev; > @@ -191,7 +201,7 @@ static int meson_gxbb_wdt_probe(struct platform_device *pdev) > /* Setup with 1ms timebase */ > ctrl_reg |= ((clk_get_rate(data->clk) / 1000) & > GXBB_WDT_CTRL_DIV_MASK) | > - GXBB_WDT_CTRL_EE_RESET | > + params->rst | > GXBB_WDT_CTRL_CLK_EN | > GXBB_WDT_CTRL_CLKDIV_EN; > > -- > 2.37.1 > > > _______________________________________________ > linux-amlogic mailing list > linux-amlogic@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-amlogic
Hi, On Wed, 02 Aug 2023 11:32:18 +0800, Huqiang Qin wrote: > Based on the original Amlogic-GXBB watchdog driver, support > for Amlogic-T7 watchdog is added. > > [PATCH 1/4]: > V1 -> V2: Unchanged. > > [PATCH 2/4]: > V1 -> V2: Rename rst_shift to rst and use the BIT() macro > to build its initial value. > > [...] Thanks, Applied to https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux.git (v6.7/arm64-dt) [4/4] arm64: dts: Add watchdog node for Amlogic-T7 SoCs https://git.kernel.org/amlogic/c/8a63d22183d0d96d742e34730430cc1f286c7092 These changes has been applied on the intermediate git tree [1]. The v6.7/arm64-dt branch will then be sent via a formal Pull Request to the Linux SoC maintainers for inclusion in their intermediate git branches in order to be sent to Linus during the next merge window, or sooner if it's a set of fixes. In the cases of fixes, those will be merged in the current release candidate kernel and as soon they appear on the Linux master branch they will be backported to the previous Stable and Long-Stable kernels [2]. The intermediate git branches are merged daily in the linux-next tree [3], people are encouraged testing these pre-release kernels and report issues on the relevant mailing-lists. If problems are discovered on those changes, please submit a signed-off-by revert patch followed by a corrective changeset. [1] https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux.git [2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git [3] https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git