Return-Path: Received: by yocto-www.yoctoproject.org (Postfix, from userid 118) id 59448E00CC1; Fri, 15 Sep 2017 14:56:06 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on yocto-www.yoctoproject.org X-Spam-Level: X-Spam-Status: No, score=-1.5 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM, RCVD_IN_DNSWL_NONE, RCVD_IN_SORBS_SPAM autolearn=no version=3.3.1 X-Spam-HAM-Report: * 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider * (yungching0725[at]gmail.com) * -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at http://www.dnswl.org/, no * trust * [74.125.83.67 listed in list.dnswl.org] * 0.5 RCVD_IN_SORBS_SPAM RBL: SORBS: sender is a spam source * [74.125.83.67 listed in dnsbl.sorbs.net] * -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's * domain * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature Received: from mail-pg0-f67.google.com (mail-pg0-f67.google.com [74.125.83.67]) by yocto-www.yoctoproject.org (Postfix) with ESMTP id BB77AE0091D for ; Fri, 15 Sep 2017 14:56:05 -0700 (PDT) Received: by mail-pg0-f67.google.com with SMTP id i130so1936775pgc.0 for ; Fri, 15 Sep 2017 14:56:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id; bh=qY0wpSAHlsC4GqE8FAlSUfEv0K298UW4yNh03I4GWo4=; b=R2xPeljFSel3tMcAVL6AEMApfo6GOxJoMVHIbRCbuEC7MEYncrjh6rCZc6T7dSQWVe 28qqRgSLkoewyxlgMGoeV2YQRxOfOm4AsA9LzYQwJ30TTrwbMzLjqSHRoyj2zgc7WqEU xWzfScIZ6khxta20DIHGt+eXMklmnYot6IsJgAg45UCZr1KdH/Fxi20Vsy1LzUkqwmLM WyePcmIOyuXxYt6W3JqDk5MNcOiY6R3Ymb6oaOpPmNLEvoOkPQFr9q/bQsivyY37Iu2a ujVJjUbp3tDekQyRpWvv3N54WdqpB1uqA0/862q+DXF4FC+r6k5lXWCckKD+CZub+dcJ /YBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id; bh=qY0wpSAHlsC4GqE8FAlSUfEv0K298UW4yNh03I4GWo4=; b=E1iEMNQeLhdLrRNGAdtqMg5gaJgOZtvImgyIFcpltOynwam0wvniOyCp8ZfUCGKLra 07awL2HoNWUN3+EaM9rtSP1O4Ycn1NYdFNPbshK7TNqXHD8a9RVnvg94uvjZG6f0JZUA VSI/alrbaMP7otrR80G5bQFZcwXPGwmoHEQFnp+stVC9FwFf7YtdAUcurC8WCj7fOEFp KFoVn5vvT0AK8ZoaYXVKS8PqlEVs1viTj+QY3+yhr/No5T7C2Im0Aoc24edcjwxI70mR Oubn1ywTysm64sC6gkpc3ZP7vvuz2PZmvqKg8RCmi6WgOGX2g7biQdN/fF+6SXXoutHF hk2w== X-Gm-Message-State: AHPjjUjl2TDkAWRtNbEZ+Ki6ydhTHOu9oNvFDCC1/hMeLH10F1KBV1iU 4zyAQDclXPSuJnpT X-Google-Smtp-Source: ADKCNb6ufTiRLyXe7vzK23bOPbmMWJ+jXR5BdkWKnkm7wzqqbWSu9wPKa8ypkcoenpqyoltV+6xR0A== X-Received: by 10.99.167.68 with SMTP id w4mr14884770pgo.390.1505512564746; Fri, 15 Sep 2017 14:56:04 -0700 (PDT) Received: from ken-notebook.advantech.com (wsip-64-147-2-101.oc.oc.cox.net. [64.147.2.101]) by smtp.googlemail.com with ESMTPSA id g76sm3759189pfa.134.2017.09.15.14.56.04 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 15 Sep 2017 14:56:04 -0700 (PDT) From: Ken Lin To: meta-freescale@yoctoproject.org Date: Sat, 16 Sep 2017 05:55:54 +0800 Message-Id: <20170915215554.21953-1-yungching0725@gmail.com> X-Mailer: git-send-email 2.11.0 Subject: [3rdparty][PATCH] linux-advantech: Add linux kernel patch for external WDOG_B support X-BeenThere: meta-freescale@yoctoproject.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: Usage and development list for the meta-fsl-* layers List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Sep 2017 21:56:06 -0000 Update linux kernel patch and recipe to support external WDOG_B on imx6q-dms-ba16 platform. Signed-off-by: Ken Lin --- ...16-watchdog-enable-external-wdog_b-signal.patch | 89 ++++++++++++++++++++++ recipes-kernel/linux/linux-advantech_4.1.bb | 1 + 2 files changed, 90 insertions(+) create mode 100644 recipes-kernel/linux/linux-advantech-4.1/0011-dms-ba16-watchdog-enable-external-wdog_b-signal.patch diff --git a/recipes-kernel/linux/linux-advantech-4.1/0011-dms-ba16-watchdog-enable-external-wdog_b-signal.patch b/recipes-kernel/linux/linux-advantech-4.1/0011-dms-ba16-watchdog-enable-external-wdog_b-signal.patch new file mode 100644 index 0000000..dcb4bad --- /dev/null +++ b/recipes-kernel/linux/linux-advantech-4.1/0011-dms-ba16-watchdog-enable-external-wdog_b-signal.patch @@ -0,0 +1,89 @@ +From d9ff4244846537ccff192c8d10cc5a389193143a Mon Sep 17 00:00:00 2001 +From: Ken Lin +Date: Thu, 14 Sep 2017 07:51:52 +0800 +Subject: [PATCH] dms-ba16: watchdog: enable external wdog_b signal + +Enable the external wdog_b singal in Q7 to support the platform system reset + +Signed-off-by: Ken Lin +--- + arch/arm/boot/dts/imx6q-dms-ba16.dts | 14 +++++++++++++- + drivers/watchdog/imx2_wdt.c | 12 ++++++++++-- + 2 files changed, 23 insertions(+), 3 deletions(-) + +diff --git a/arch/arm/boot/dts/imx6q-dms-ba16.dts b/arch/arm/boot/dts/imx6q-dms-ba16.dts +index 570e4ab5c531..154aa77e4c91 100644 +--- a/arch/arm/boot/dts/imx6q-dms-ba16.dts ++++ b/arch/arm/boot/dts/imx6q-dms-ba16.dts +@@ -466,7 +466,6 @@ + MX6QDL_PAD_NANDF_D7__GPIO2_IO07 0x80000000 /* GPIO7 */ + MX6QDL_PAD_NANDF_CLE__GPIO6_IO07 0x80000000 /* CAM_PWDN */ + MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x80000000 /* CAM_RST */ +- MX6QDL_PAD_GPIO_9__WDOG1_B 0x80000000 /* Watchdog out */ + MX6QDL_PAD_GPIO_16__GPIO7_IO11 0x80000000 /* HUB_RESET */ + MX6QDL_PAD_GPIO_18__GPIO7_IO13 0x80000000 /* PMIC Interrupt */ + MX6QDL_PAD_GPIO_19__GPIO4_IO05 0x80000000 /* AR8033 Interrupt */ +@@ -666,6 +665,13 @@ + >; + }; + }; ++ wdog { ++ pinctrl_wdog: wdoggrp { ++ fsl,pins = < ++ MX6QDL_PAD_GPIO_9__WDOG1_B 0x1b0b0 /* Watchdog out */ ++ >; ++ }; ++ }; + }; + + &ldb { +@@ -797,3 +803,9 @@ + fsl,receive-dpll-mode = <1>; + status = "okay"; + }; ++ ++&wdog1 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pinctrl_wdog>; ++ fsl,wdog_b; ++}; +diff --git a/drivers/watchdog/imx2_wdt.c b/drivers/watchdog/imx2_wdt.c +index 805df6b33625..decfef3ecd41 100644 +--- a/drivers/watchdog/imx2_wdt.c ++++ b/drivers/watchdog/imx2_wdt.c +@@ -43,6 +43,8 @@ + + #define IMX2_WDT_WCR 0x00 /* Control Register */ + #define IMX2_WDT_WCR_WT (0xFF << 8) /* -> Watchdog Timeout Field */ ++#define IMX2_WDT_WCR_WDA (1 << 5) /* -> WDOG_B assertion */ ++#define IMX2_WDT_WCR_SRS (1 << 4) /* -> Software Reset Signal */ + #define IMX2_WDT_WCR_WRE (1 << 3) /* -> WDOG Reset Enable */ + #define IMX2_WDT_WCR_WDE (1 << 2) /* -> Watchdog Enable */ + #define IMX2_WDT_WCR_WDZST (1 << 0) /* -> Watchdog timer Suspend */ +@@ -102,7 +104,9 @@ static int imx2_restart_handler(struct notifier_block *this, unsigned long mode, + restart_handler); + /* Assert WDOG_B signal */ + if (wdev->wdog_b) +- wcr_enable = 0x14; ++ wcr_enable |= IMX2_WDT_WCR_SRS; ++ else ++ wcr_enable |= IMX2_WDT_WCR_WDA; + + regmap_write(wdev->regmap, 0, wcr_enable); + /* +@@ -133,7 +137,11 @@ static inline void imx2_wdt_setup(struct watchdog_device *wdog) + /* Strip the old watchdog Time-Out value */ + val &= ~IMX2_WDT_WCR_WT; + /* Generate reset if WDOG times out */ +- val &= ~IMX2_WDT_WCR_WRE; ++ if (!wdev->wdog_b) ++ val &= ~IMX2_WDT_WCR_WRE; ++ /* Or if external-reset assert WDOG_B reset only on time-out */ ++ else ++ val |= IMX2_WDT_WCR_WRE; + /* Keep Watchdog Disabled */ + val &= ~IMX2_WDT_WCR_WDE; + /* Set the watchdog's Time-Out value */ +-- +2.11.0 + diff --git a/recipes-kernel/linux/linux-advantech_4.1.bb b/recipes-kernel/linux/linux-advantech_4.1.bb index 635d29b..c46dd99 100644 --- a/recipes-kernel/linux/linux-advantech_4.1.bb +++ b/recipes-kernel/linux/linux-advantech_4.1.bb @@ -22,6 +22,7 @@ SRC_URI = "git://github.com/Freescale/linux-fslc.git;branch=${SRCBRANCH} \ file://0008-da9063-Add-a-PMIC-qurk-to-support-system-suspend-res.patch \ file://0009-mfd-da9063-Add-wakeup-source-support.patch \ file://0010-ARM-dts-imx-Add-Q7-SUS_S3_OUT-control-support-during.patch \ + file://0011-dms-ba16-watchdog-enable-external-wdog_b-signal.patch \ file://defconfig" COMPATIBLE_MACHINE = "(imx6q-dms-ba16)" -- 2.11.0