On Mon, Sep 10, 2012 at 10:51:46AM +0200, Samuel Iglesias Gonsálvez wrote:
> From: Jens Taprogge <jens.tapro...@taprogge.org>
> 
> Reading the ID space at 8 MHz is always supported.  Most carriers will
> boot up in 8MHz mode.  Still, play it safe and ensure we are operating at
> 8Mhz.
> 
> Signed-off-by: Jens Taprogge <jens.tapro...@taprogge.org>
> Signed-off-by: Samuel Iglesias Gonsálvez <sigles...@igalia.com>
> ---
>  drivers/staging/ipack/ipack.c |   11 ++++++++---
>  1 file changed, 8 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/staging/ipack/ipack.c b/drivers/staging/ipack/ipack.c
> index 4f3c945..95f56b8 100644
> --- a/drivers/staging/ipack/ipack.c
> +++ b/drivers/staging/ipack/ipack.c
> @@ -376,6 +376,9 @@ struct ipack_device *ipack_device_register(struct 
> ipack_bus_device *bus,
>       dev_set_name(&dev->dev,
>                    "ipack-dev.%u.%u", dev->bus_nr, dev->slot);
>  
> +     if (bus->ops->set_clockrate(dev, 8))
> +             dev_warn(&dev->dev, "failed to switch to 8 MHz operation for 
> reading of device ID.\n");
> +
>       ret = ipack_device_read_id(dev);
>       if (ret < 0) {
>               dev_err(&dev->dev, "error reading device id section.\n");
> @@ -384,9 +387,11 @@ struct ipack_device *ipack_device_register(struct 
> ipack_bus_device *bus,
>       }
>  
>       /* if the device supports 32 MHz operation, use it. */
> -     ret = bus->ops->set_clockrate(dev, dev->speed_32mhz ? 32 : 8);
> -     if (ret < 0)
> -             dev_err(&dev->dev, "failed to switch to 32 MHz operation.\n");
> +     if (dev->speed_32mhz) {
> +             ret = bus->ops->set_clockrate(dev, 32);
> +             if (ret < 0)
> +                     dev_err(&dev->dev, "failed to switch to 32 MHz 
> operation.\n");
> +     }

Ah.  Well done.  That's what I suggested earlier.  I think you
should get rid of the ->speed_8mhz all together.

regards,
dan carpenter

--
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/

Reply via email to