Hello, On 11/10/2018 06:53:15+0000, Craig McQueen wrote: > The function pcf85063_stop_clock() is intended to provide the value of the Control_1 register via the pointer ctrl1. > > However, it's really providing the return value of the last i2c_smbus_write_byte_data() call, i.e., zero. So the register value needs to be saved in a separate local variable other than ret. Or, the line *ctrl1 = ret; needs to be moved up to be above the last i2c_smbus_write_byte_data() call. > Isn't that fixed by http://patchwork.ozlabs.org/patch/944107/ ? -- Alexandre Belloni, Bootlin Embedded Linux and Kernel engineering https://bootlin.com