Ejemplo n.º 1
0
/* ALS high threshold */
static int ap321xx_set_ahthres(struct i2c_client *client, int val)
{
	int lsb, msb, err;
	
	msb = val >> 8;
	lsb = val & AP3212B_ALS_HTHL_MASK;
	
	err = __ap321xx_write_reg(client, AP3212B_ALS_HTHL,
		AP3212B_ALS_HTHL_MASK, AP3212B_ALS_HTHL_SHIFT, lsb);
	if (err)
		return err;

	err = __ap321xx_write_reg(client, AP3212B_ALS_HTHH,
		AP3212B_ALS_HTHH_MASK, AP3212B_ALS_HTHH_SHIFT, msb);

	return err;
}
Ejemplo n.º 2
0
static int ap321xx_set_mode(struct i2c_client *client, int mode)
{
	struct sensor_private_data *sensor =
	    (struct sensor_private_data *) i2c_get_clientdata(client);	
	int ret;

	ret = __ap321xx_write_reg(client, sensor->ops->ctrl_reg,
				AP3212B_MODE_MASK, AP3212B_MODE_SHIFT, mode);
	return ret;
}
Ejemplo n.º 3
0
/* range */
static int ap321xx_set_range(struct i2c_client *client, int range)
{
	return __ap321xx_write_reg(client, AP3212B_RAN_COMMAND,
		AP3212B_RAN_MASK, AP3212B_RAN_SHIFT, range);;
}