0

Question about Hifiberry_dacplus.c

Hello!
I am studying a DAC driver for raspberry pi.
"hifiberry_dacplus.c" is used as a reference, but there are parts that I don't understand.

In the program, there are some sentences that start with "snd_soc_update_bits".

Example:
72: snd_soc_update_bits(codec, PCM512x_GPIO_EN, 0x24, 0x24);
73: snd_soc_update_bits(codec, PCM512x_GPIO_OUTPUT_3, 0x0f, 0x02);
74: snd_soc_update_bits(codec, PCM512x_GPIO_OUTPUT_6, 0x0f, 0x02);

In my interpretation, these are instructions for I2C signals to send to PCM512x

PCM512x_GPIO_EN
PCM512x_GPIO_OUTPUT_3
PCM512x_GPIO_OUTPUT_6
Defines the register address by #include "../codecs/pcm512x.h".
8-bit data that 0x24, 0x02, 0x02 at the end of each row writes to the register.

But, I don't know the role of 0x24, 0x0f, 0x0f between each line.

Checking the data sheet of PCM512x_, I2C write operation is a
procedure to send write data following the register address.
So what is 0x24, 0x0f, 0x0f for?
I would like to know the meaning of that.

I ’m sorry for the rudimentary question.

Best regards,
Toshihide.

2 comments

Please sign in to leave a comment.