From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751409AbbEXQXh (ORCPT ); Sun, 24 May 2015 12:23:37 -0400 Received: from bh-25.webhostbox.net ([208.91.199.152]:43062 "EHLO bh-25.webhostbox.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751072AbbEXQXf (ORCPT ); Sun, 24 May 2015 12:23:35 -0400 Message-ID: <5561FAFF.1050602@roeck-us.net> Date: Sun, 24 May 2015 09:23:27 -0700 From: Guenter Roeck User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 MIME-Version: 1.0 To: Fu Wei CC: Timur Tabi , Suravee Suthikulpanit , Linaro ACPI Mailman List , linux-watchdog@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, Wei Fu , G Gregory , Al Stone , Hanjun Guo , Ashwin Chaugule , Arnd Bergmann , vgandhi@codeaurora.org, wim@iguana.be, Jon Masters , Leo Duran , Jon Corbet , Mark Rutland Subject: Re: [PATCH v2 6/7] Watchdog: introduce ARM SBSA watchdog driver References: <=fu.wei@linaro.org> <1432197156-16947-1-git-send-email-fu.wei@linaro.org> <1432197156-16947-7-git-send-email-fu.wei@linaro.org> <555DFCD4.3040701@codeaurora.org> <5560D7AC.50009@codeaurora.org> <5560DCB6.3090008@roeck-us.net> <5561DD0B.1040008@roeck-us.net> In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Authenticated_sender: linux@roeck-us.net X-OutGoing-Spam-Status: No, score=-1.0 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - bh-25.webhostbox.net X-AntiAbuse: Original Domain - vger.kernel.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - roeck-us.net X-Get-Message-Sender-Via: bh-25.webhostbox.net: authenticated_id: linux@roeck-us.net X-Source: X-Source-Args: X-Source-Dir: Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 05/24/2015 08:50 AM, Fu Wei wrote: [ ...] > Actually, I have added my thought at the head of sbsa_gwdt.c as a comment : > > * > * Note: This SBSA Generic watchdog driver is compatible with > * the pretimeout concept of Linux kernel. > * The timeout and pretimeout are set by the different REGs. > * The first watch period is set by writing WCV directly, > * that can support more than 10s timeout at the maximum > * system counter frequency. > * The second watch period is set by WOR(32bit) which will be loaded > * automatically by hardware, when WS0 is triggered. > * This gives a maximum watch period of around 10s at the maximum > * system counter frequency. > * The System Counter shall run at maximum of 400MHz. > * More details: DEN0029B - Server Base System Architecture (SBSA) > * > * Kernel/API: P---------| pretimeout > * |-------------------------------T timeout > * SBSA GWDT: P--WOR---WS1 pretimeout > * |-------WCV----------WS0~~~~~~~~T timeout > */ > Yes, but do we actually _know_ that it works that way, ie that WCV drives WS0 and that WOR drives WS1 ? Unless I am missing something, the specification doesn't say that, and it would have been a really easy statement to make if that was the intent. My concern here is that the above behavior is not spelled out in the document, meaning it is up to interpretation by the hardware engineer implementing it, to the point where it appears that not even two software engineers can agree how it is supposed to work. Which is a really bad starting point :-(. Thanks, Guenter