[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: init_completion, down(mutex) related question
:) simple process synchronization!
refer to any elementary OS book
----- Original Message -----
From: "Shiv Garg" <shivg@xxxxxxxxxxx>
To: <kernelnewbies@xxxxxxxxxxxx>
Sent: Thursday, July 01, 2004 3:54 PM
Subject: init_completion, down(mutex) related question
> Hello All,
> I am new to the Linux Kernel programming, and still learning the OS
> concepts. (but project deadlines don't consider it u know ;-)
> Can anyone explain why do we write driver code like this :
> static void s3c24a0_ac97_write(struct ac97_codec *codec, u8 reg,
u16
> val)
> {
> down(&CAR_mutex);
> init_completion(&CAR_completion);
>
> AC_CODEC_CMD = AC_CMD_ADDR(reg) | AC_CMD_DATA(val);
>
> wait_for_completion(&CAR_completion);
> up(&CAR_mutex);
> }
>
> why it cant be written as
> static void s3c24a0_ac97_write(struct ac97_codec *codec, u8 reg,
u16
> val)
> {
> AC_CODEC_CMD = AC_CMD_ADDR(reg) | AC_CMD_DATA(val);
>
> }
> what is the meaning of down,up,completion etc.
>
> Thanks and Regards,
> Shiv Kumar Garg
> Senior Software Engineer
> System LSI Division
> Samsung India Software Operation
> 3/1 Millers Road, Bangalore
> Phone: +91-80-51197777 ext 2018
> email: shivg@xxxxxxxxxxx
> _________________________________
> Well done is better than Well said
>
>
--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive: http://mail.nl.linux.org/kernelnewbies/
FAQ: http://kernelnewbies.org/faq/