Re: [PATCH v2 4/6] ARM: firmware: add prepare_idle() operation

2014-02-14 Thread Tomasz Figa

On 14.02.2014 06:16, Alexandre Courbot wrote:

On 02/13/2014 08:01 PM, Tomasz Figa wrote:

Hi Alexandre,

On 07.02.2014 05:35, Alexandre Courbot wrote:

Some firmwares do not put the CPU into idle mode themselves, but still
need to be informed that the CPU is about to enter idle mode before this
happens. Add a prepare_idle() operation to the firmware_ops structure to
handle such cases.

Signed-off-by: Alexandre Courbot 
---
   arch/arm/include/asm/firmware.h | 4 
   1 file changed, 4 insertions(+)


I wonder if .do_idle() couldn't simply return an appropriate error code
to let the upper layer know that it should proceed with normal CPU idle
activation, while still letting the firmware know that the CPU is going
to idle.


In our particular case I agree it would be enough to use do_idle() to
let the firmware know about the operation and have it return -ENOSYS so
the kernel actually performs it. I'm afraid this might not fulfill all
needs though (e.g. one can imagine a firmware where the OS needs to take
action between the notification and the actual shutdown), and as Stephen
pointed out that would make the name of the function ambiguous at best.
I'd rather keep it the current way for clarity.



OK. I'm not strongly against this, just wanted some more thought on 
this, so please move on.


Best regards,
Tomasz
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v2 4/6] ARM: firmware: add prepare_idle() operation

2014-02-14 Thread Tomasz Figa

On 14.02.2014 06:16, Alexandre Courbot wrote:

On 02/13/2014 08:01 PM, Tomasz Figa wrote:

Hi Alexandre,

On 07.02.2014 05:35, Alexandre Courbot wrote:

Some firmwares do not put the CPU into idle mode themselves, but still
need to be informed that the CPU is about to enter idle mode before this
happens. Add a prepare_idle() operation to the firmware_ops structure to
handle such cases.

Signed-off-by: Alexandre Courbot acour...@nvidia.com
---
   arch/arm/include/asm/firmware.h | 4 
   1 file changed, 4 insertions(+)


I wonder if .do_idle() couldn't simply return an appropriate error code
to let the upper layer know that it should proceed with normal CPU idle
activation, while still letting the firmware know that the CPU is going
to idle.


In our particular case I agree it would be enough to use do_idle() to
let the firmware know about the operation and have it return -ENOSYS so
the kernel actually performs it. I'm afraid this might not fulfill all
needs though (e.g. one can imagine a firmware where the OS needs to take
action between the notification and the actual shutdown), and as Stephen
pointed out that would make the name of the function ambiguous at best.
I'd rather keep it the current way for clarity.



OK. I'm not strongly against this, just wanted some more thought on 
this, so please move on.


Best regards,
Tomasz
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v2 4/6] ARM: firmware: add prepare_idle() operation

2014-02-13 Thread Alexandre Courbot

On 02/13/2014 08:01 PM, Tomasz Figa wrote:

Hi Alexandre,

On 07.02.2014 05:35, Alexandre Courbot wrote:

Some firmwares do not put the CPU into idle mode themselves, but still
need to be informed that the CPU is about to enter idle mode before this
happens. Add a prepare_idle() operation to the firmware_ops structure to
handle such cases.

Signed-off-by: Alexandre Courbot 
---
   arch/arm/include/asm/firmware.h | 4 
   1 file changed, 4 insertions(+)


I wonder if .do_idle() couldn't simply return an appropriate error code
to let the upper layer know that it should proceed with normal CPU idle
activation, while still letting the firmware know that the CPU is going
to idle.


In our particular case I agree it would be enough to use do_idle() to 
let the firmware know about the operation and have it return -ENOSYS so 
the kernel actually performs it. I'm afraid this might not fulfill all 
needs though (e.g. one can imagine a firmware where the OS needs to take 
action between the notification and the actual shutdown), and as Stephen 
pointed out that would make the name of the function ambiguous at best. 
I'd rather keep it the current way for clarity.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v2 4/6] ARM: firmware: add prepare_idle() operation

2014-02-13 Thread Stephen Warren
On 02/13/2014 04:01 AM, Tomasz Figa wrote:
> Hi Alexandre,
> 
> On 07.02.2014 05:35, Alexandre Courbot wrote:
>> Some firmwares do not put the CPU into idle mode themselves, but still
>> need to be informed that the CPU is about to enter idle mode before this
>> happens. Add a prepare_idle() operation to the firmware_ops structure to
>> handle such cases.
>>
>> Signed-off-by: Alexandre Courbot 
>> ---
>>   arch/arm/include/asm/firmware.h | 4 
>>   1 file changed, 4 insertions(+)
> 
> I wonder if .do_idle() couldn't simply return an appropriate error code
> to let the upper layer know that it should proceed with normal CPU idle
> activation, while still letting the firmware know that the CPU is going
> to idle.

That seems to disagree with the naming of the operation, and the
semantics I assume it has, though. It seems clearer to add an explicit
separate op for this.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v2 4/6] ARM: firmware: add prepare_idle() operation

2014-02-13 Thread Tomasz Figa

Hi Alexandre,

On 07.02.2014 05:35, Alexandre Courbot wrote:

Some firmwares do not put the CPU into idle mode themselves, but still
need to be informed that the CPU is about to enter idle mode before this
happens. Add a prepare_idle() operation to the firmware_ops structure to
handle such cases.

Signed-off-by: Alexandre Courbot 
---
  arch/arm/include/asm/firmware.h | 4 
  1 file changed, 4 insertions(+)


I wonder if .do_idle() couldn't simply return an appropriate error code 
to let the upper layer know that it should proceed with normal CPU idle 
activation, while still letting the firmware know that the CPU is going 
to idle.


Best regards,
Tomasz
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v2 4/6] ARM: firmware: add prepare_idle() operation

2014-02-13 Thread Tomasz Figa

Hi Alexandre,

On 07.02.2014 05:35, Alexandre Courbot wrote:

Some firmwares do not put the CPU into idle mode themselves, but still
need to be informed that the CPU is about to enter idle mode before this
happens. Add a prepare_idle() operation to the firmware_ops structure to
handle such cases.

Signed-off-by: Alexandre Courbot acour...@nvidia.com
---
  arch/arm/include/asm/firmware.h | 4 
  1 file changed, 4 insertions(+)


I wonder if .do_idle() couldn't simply return an appropriate error code 
to let the upper layer know that it should proceed with normal CPU idle 
activation, while still letting the firmware know that the CPU is going 
to idle.


Best regards,
Tomasz
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v2 4/6] ARM: firmware: add prepare_idle() operation

2014-02-13 Thread Stephen Warren
On 02/13/2014 04:01 AM, Tomasz Figa wrote:
 Hi Alexandre,
 
 On 07.02.2014 05:35, Alexandre Courbot wrote:
 Some firmwares do not put the CPU into idle mode themselves, but still
 need to be informed that the CPU is about to enter idle mode before this
 happens. Add a prepare_idle() operation to the firmware_ops structure to
 handle such cases.

 Signed-off-by: Alexandre Courbot acour...@nvidia.com
 ---
   arch/arm/include/asm/firmware.h | 4 
   1 file changed, 4 insertions(+)
 
 I wonder if .do_idle() couldn't simply return an appropriate error code
 to let the upper layer know that it should proceed with normal CPU idle
 activation, while still letting the firmware know that the CPU is going
 to idle.

That seems to disagree with the naming of the operation, and the
semantics I assume it has, though. It seems clearer to add an explicit
separate op for this.

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v2 4/6] ARM: firmware: add prepare_idle() operation

2014-02-13 Thread Alexandre Courbot

On 02/13/2014 08:01 PM, Tomasz Figa wrote:

Hi Alexandre,

On 07.02.2014 05:35, Alexandre Courbot wrote:

Some firmwares do not put the CPU into idle mode themselves, but still
need to be informed that the CPU is about to enter idle mode before this
happens. Add a prepare_idle() operation to the firmware_ops structure to
handle such cases.

Signed-off-by: Alexandre Courbot acour...@nvidia.com
---
   arch/arm/include/asm/firmware.h | 4 
   1 file changed, 4 insertions(+)


I wonder if .do_idle() couldn't simply return an appropriate error code
to let the upper layer know that it should proceed with normal CPU idle
activation, while still letting the firmware know that the CPU is going
to idle.


In our particular case I agree it would be enough to use do_idle() to 
let the firmware know about the operation and have it return -ENOSYS so 
the kernel actually performs it. I'm afraid this might not fulfill all 
needs though (e.g. one can imagine a firmware where the OS needs to take 
action between the notification and the actual shutdown), and as Stephen 
pointed out that would make the name of the function ambiguous at best. 
I'd rather keep it the current way for clarity.

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/