Fu Wei wrote:
(1)It is not new. pre-timeout concept has been used by two drivers before this driver. and this concept has been in kernel documentation.
It's "new" in that it's a new infrastructure. The private API of two other drivers doesn't count.
(1) if we don't, for this two stages timeout, we have to config them by one value. that means "the first stage timeout" have to be equal to "the second stage timeout", For example, if we need 60 second for "the second stage timeout", 30 or less for "the first stage timeout". then "the first stage timeout" have to be 60s too. I don't think it 's good idea.
Why do we care about two stages? Don't have a pre-timeout, and just have one stage: the WS1 reset. Ignore the WS0 interrupt, and program the timeout so that WS1 is the reset.
I'm not saying that pre-timeout is a terrible idea and we should never do it. I'm saying that it's not an important feature, and we should only support it to the extent that the hardware provides the feature. We should definitely not make the driver more complicated and less safe.
If we agree that an SBSA watchdog allows for a pre-timeout at half-way through timeout, and that software can't change this, then we can use WS0 as the pre-timeout and applications just have to deal with that. The hardware is programmed to reset via WS1, and all we do in the interrupt handler is notify the application that a pre-timeout has occurred.
-- Sent by an employee of the Qualcomm Innovation Center, Inc. The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, hosted by The Linux Foundation. -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html