[patch 01/11] powerpc/cell: add support for power button of future IBM cell blades

Stephen Rothwell sfr at canb.auug.org.au
Mon Jul 7 15:24:45 EST 2008


Hi Arnd,

On Fri, 04 Jul 2008 21:05:36 +0200 arnd at arndb.de wrote:
>
> This patch adds support for the power button on future IBM cell blades.
> It actually doesn't shut down the machine. Instead it exposes an
> input device /dev/input/event0 to userspace which sends KEY_POWER
> if power button has been pressed.
> haldaemon actually recognizes the button, so a plattform independent acpid
> replacement should handle it correctly.
> 
> Signed-off-by: Christian Krafft <krafft at de.ibm.com>
> Signed-off-by: Arnd Bergmann <arnd at arndb.de>

Was this written by you or Christian?

> @@ -105,10 +110,21 @@ static int cbe_system_reset_exception(struct pt_regs *regs)
>  		 */
>  		if (sysreset_hack && (cpu = smp_processor_id()) == 0) {
>  			pmd = cbe_get_cpu_pmd_regs(cpu);
> -			if (in_be64(&pmd->ras_esc_0) & 0xffff) {
> +			if (in_be64(&pmd->ras_esc_0) & 0x0000ffff) {
>  				out_be64(&pmd->ras_esc_0, 0);
>  				return 0;
>  			}
> +			if (in_be64(&pmd->ras_esc_0) & 0x00010000) {

Do we really want to read that register twice?  (Just asking, I don't
know how the hardware works ...)  Also, do we want to recognise this bit
even if some lower order bits are set?  (this code won't)

> +static int __init cbe_power_button_init(void)
> +{
> +	int ret;
> +	struct input_dev *dev;
> +
> +	if (!sysreset_hack)
> +		return 0;
> +
> +	dev = input_allocate_device();
> +        if (!dev) {
> +		ret = -ENOMEM;
> +                printk(KERN_ERR "%s: Not enough memory\n", __func__);
> +                goto out;
> +        }

Some white space damage here.

> +	ret = input_register_device(dev);
> +	if (ret) {
> +                printk(KERN_ERR "%s: Failed to register device\n", __func__);
> +		goto out_free_pdev;
> +        }

And here.

-- 
Cheers,
Stephen Rothwell                    sfr at canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
URL: <http://lists.ozlabs.org/pipermail/linuxppc-dev/attachments/20080707/8fa978dd/attachment.pgp>


More information about the Linuxppc-dev mailing list