On Friday 13 July 2007, Matthias Kaehlcke wrote:
> The SPI core/init code uses a semaphore as mutex. Use the mutex
> API instead of the (binary) semaphore.
>
> Signed-off-by: Matthias Kaehlcke <[email protected]>
ACK ... and thanks!
>
> --
>
> diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c
> index 4831edb..018884d 100644
> --- a/drivers/spi/spi.c
> +++ b/drivers/spi/spi.c
> @@ -23,6 +23,7 @@
> #include <linux/device.h>
> #include <linux/init.h>
> #include <linux/cache.h>
> +#include <linux/mutex.h>
> #include <linux/spi/spi.h>
>
>
> @@ -185,7 +186,7 @@ struct boardinfo {
> };
>
> static LIST_HEAD(board_list);
> -static DECLARE_MUTEX(board_lock);
> +static DEFINE_MUTEX(board_lock);
>
>
> /**
> @@ -292,9 +293,9 @@ spi_register_board_info(struct spi_board_info const *info, unsigned n)
> bi->n_board_info = n;
> memcpy(bi->board_info, info, n * sizeof *info);
>
> - down(&board_lock);
> + mutex_lock(&board_lock);
> list_add_tail(&bi->list, &board_list);
> - up(&board_lock);
> + mutex_unlock(&board_lock);
> return 0;
> }
>
> @@ -308,7 +309,7 @@ scan_boardinfo(struct spi_master *master)
> struct boardinfo *bi;
> struct device *dev = master->cdev.dev;
>
> - down(&board_lock);
> + mutex_lock(&board_lock);
> list_for_each_entry(bi, &board_list, list) {
> struct spi_board_info *chip = bi->board_info;
> unsigned n;
> @@ -330,7 +331,7 @@ scan_boardinfo(struct spi_master *master)
> (void) spi_new_device(master, chip);
> }
> }
> - up(&board_lock);
> + mutex_unlock(&board_lock);
> }
>
> /*-------------------------------------------------------------------------*/
>
> --
> Matthias Kaehlcke
> Linux Application Developer
> Barcelona
>
> Ma patrie est où je suis, où personne ne me dérange, où personne
> ne me demande que je suis, d'où je viens et ce que je fais
> (B. Traven)
> .''`.
> using free software / Debian GNU/Linux | http://debian.org : :' :
> `. `'`
> gpg --keyserver pgp.mit.edu --recv-keys 47D8E5D4 `-
>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]