When gpio_request()'ing the fifop GPIO we get back an -EBUSY. It seems to be related to fifop being 0 and the gpiolib may have some special handling for 0. As this is "only" a resource allocation call which does not do anything with the GPIO we are still able to use it correctly without it and it works as expected.
However this needs to be worked out completely and a real fix is needed. --- drivers/ieee802154/cc2420.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/ieee802154/cc2420.c b/drivers/ieee802154/cc2420.c index 983800f..7839ddb 100644 --- a/drivers/ieee802154/cc2420.c +++ b/drivers/ieee802154/cc2420.c @@ -588,10 +588,12 @@ static int __devinit cc2420_probe(struct spi_device *spi) ret = gpio_request(lp->pdata->cca, "cca"); if (ret) goto err_free_gpio_fifo; +#if 0 /* This is causing problems as fifop is gpio 0 ? */ ret = gpio_request(lp->pdata->fifop, "fifop"); if (ret) goto err_free_gpio_cca; +#endif ret = gpio_request(lp->pdata->sfd, "sfd"); if (ret) goto err_free_gpio_fifop; @@ -700,8 +702,8 @@ err_free_gpio_sfd: gpio_free(lp->pdata->sfd); err_free_gpio_fifop: gpio_free(lp->pdata->fifop); -err_free_gpio_cca: - gpio_free(lp->pdata->cca); +//err_free_gpio_cca: +// gpio_free(lp->pdata->cca); err_free_gpio_fifo: gpio_free(lp->pdata->fifo); err_free_buf: -- 1.7.1 ------------------------------------------------------------------------------ _______________________________________________ Linux-zigbee-devel mailing list Linux-zigbee-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-zigbee-devel