| /Linux-v5.4/drivers/thermal/st/ | 
| D | stm_thermal.c | 86 /* The Sensor expects oC degrees */ 108 	struct stm_thermal_sensor *sensor = sdata;  in stm_thermal_alarm_irq()  local 111 	sensor->irq_enabled = false;  in stm_thermal_alarm_irq() 119 	struct stm_thermal_sensor *sensor = sdata;  in stm_thermal_alarm_irq_thread()  local 122 	value = readl_relaxed(sensor->base + DTS_SR_OFFSET);  in stm_thermal_alarm_irq_thread() 125 		writel_relaxed(LOW_THRESHOLD, sensor->base + DTS_CIFR_OFFSET);  in stm_thermal_alarm_irq_thread() 128 		writel_relaxed(HIGH_THRESHOLD, sensor->base + DTS_CIFR_OFFSET);  in stm_thermal_alarm_irq_thread() 130 	thermal_zone_device_update(sensor->th_dev, THERMAL_EVENT_UNSPECIFIED);  in stm_thermal_alarm_irq_thread() 135 static int stm_sensor_power_on(struct stm_thermal_sensor *sensor)  in stm_sensor_power_on()  argument 140 	/* Enable sensor */  in stm_sensor_power_on() [all …] 
 | 
| D | st_thermal.c | 3  * ST Thermal Sensor Driver core routines 23 static int st_thermal_alloc_regfields(struct st_thermal_sensor *sensor)  in st_thermal_alloc_regfields()  argument 25 	struct device *dev = sensor->dev;  in st_thermal_alloc_regfields() 26 	struct regmap *regmap = sensor->regmap;  in st_thermal_alloc_regfields() 27 	const struct reg_field *reg_fields = sensor->cdata->reg_fields;  in st_thermal_alloc_regfields() 29 	sensor->dcorrect = devm_regmap_field_alloc(dev, regmap,  in st_thermal_alloc_regfields() 32 	sensor->overflow = devm_regmap_field_alloc(dev, regmap,  in st_thermal_alloc_regfields() 35 	sensor->temp_data = devm_regmap_field_alloc(dev, regmap,  in st_thermal_alloc_regfields() 38 	if (IS_ERR(sensor->dcorrect) ||  in st_thermal_alloc_regfields() 39 	    IS_ERR(sensor->overflow) ||  in st_thermal_alloc_regfields() [all …] 
 | 
| D | st_thermal_memmap.c | 3  * ST Thermal Sensor Driver for memory mapped sensors. 19 /* Power control bits for the memory mapped thermal sensor */ 25 	 * According to the STIH416 MPE temp sensor data sheet - 28 	 * sensor. regmap_update_bits() will be used to update the register. 39 	struct st_thermal_sensor *sensor = sdata;  in st_mmap_thermal_trip_handler()  local 41 	thermal_zone_device_update(sensor->thermal_dev,  in st_mmap_thermal_trip_handler() 48 static int st_mmap_power_ctrl(struct st_thermal_sensor *sensor,  in st_mmap_power_ctrl()  argument 54 	return regmap_update_bits(sensor->regmap, STIH416_MPE_CONF, mask, val);  in st_mmap_power_ctrl() 57 static int st_mmap_alloc_regfields(struct st_thermal_sensor *sensor)  in st_mmap_alloc_regfields()  argument 59 	struct device *dev = sensor->dev;  in st_mmap_alloc_regfields() [all …] 
 | 
| /Linux-v5.4/drivers/media/i2c/smiapp/ | 
| D | smiapp-core.c | 12  * Based on smia-sensor.c by Tuukka Toivonen <tuukkat76@gmail.com> 60 static int smiapp_read_frame_fmt(struct smiapp_sensor *sensor)  in smiapp_read_frame_fmt()  argument 62 	struct i2c_client *client = v4l2_get_subdevdata(&sensor->src->sd);  in smiapp_read_frame_fmt() 69 	rval = smiapp_read(sensor, SMIAPP_REG_U8_FRAME_FORMAT_MODEL_TYPE,  in smiapp_read_frame_fmt() 74 	rval = smiapp_read(sensor, SMIAPP_REG_U8_FRAME_FORMAT_MODEL_SUBTYPE,  in smiapp_read_frame_fmt() 101 			rval = smiapp_read(sensor, reg,	&desc);  in smiapp_read_frame_fmt() 113 			rval = smiapp_read(sensor, reg, &desc);  in smiapp_read_frame_fmt() 162 				sensor->visible_pixel_start = pixel_count;  in smiapp_read_frame_fmt() 170 			if (sensor->embedded_end)  in smiapp_read_frame_fmt() 172 			sensor->embedded_start = line_count;  in smiapp_read_frame_fmt() [all …] 
 | 
| D | smiapp-quirk.c | 15 static int smiapp_write_8(struct smiapp_sensor *sensor, u16 reg, u8 val)  in smiapp_write_8()  argument 17 	return smiapp_write(sensor, SMIAPP_REG_MK_U8(reg), val);  in smiapp_write_8() 20 static int smiapp_write_8s(struct smiapp_sensor *sensor,  in smiapp_write_8s()  argument 23 	struct i2c_client *client = v4l2_get_subdevdata(&sensor->src->sd);  in smiapp_write_8s() 27 		rval = smiapp_write_8(sensor, regs->reg, regs->val);  in smiapp_write_8s() 39 void smiapp_replace_limit(struct smiapp_sensor *sensor,  in smiapp_replace_limit()  argument 42 	struct i2c_client *client = v4l2_get_subdevdata(&sensor->src->sd);  in smiapp_replace_limit() 47 	sensor->limits[limit] = val;  in smiapp_replace_limit() 50 static int jt8ew9_limits(struct smiapp_sensor *sensor)  in jt8ew9_limits()  argument 52 	if (sensor->minfo.revision_number_major < 0x03)  in jt8ew9_limits() [all …] 
 | 
| D | smiapp-quirk.h | 19  * @limits: Replace sensor->limits with values which can't be read from 20  *	    sensor registers. Called the first time the sensor is powered up. 21  * @post_poweron: Called always after the sensor has been fully powered on. 26  *	  also appropriate for adding sensor specific controls, for instance. 40 	int (*limits)(struct smiapp_sensor *sensor); 41 	int (*post_poweron)(struct smiapp_sensor *sensor); 42 	int (*pre_streamon)(struct smiapp_sensor *sensor); 43 	int (*post_streamoff)(struct smiapp_sensor *sensor); 44 	unsigned long (*pll_flags)(struct smiapp_sensor *sensor); 45 	int (*init)(struct smiapp_sensor *sensor); [all …] 
 | 
| /Linux-v5.4/drivers/media/i2c/ | 
| D | ov2680.c | 3  * Omnivision OV2680 CMOS Image Sensor driver 7  * Based on OV5640 Sensor Driver 186 static struct device *ov2680_to_dev(struct ov2680_dev *sensor)  in ov2680_to_dev()  argument 188 	return &sensor->i2c_client->dev;  in ov2680_to_dev() 197 static int __ov2680_write_reg(struct ov2680_dev *sensor, u16 reg,  in __ov2680_write_reg()  argument 200 	struct i2c_client *client = sensor->i2c_client;  in __ov2680_write_reg() 227 static int __ov2680_read_reg(struct ov2680_dev *sensor, u16 reg,  in __ov2680_read_reg()  argument 230 	struct i2c_client *client = sensor->i2c_client;  in __ov2680_read_reg() 269 static int ov2680_mod_reg(struct ov2680_dev *sensor, u16 reg, u8 mask, u8 val)  in ov2680_mod_reg()  argument 274 	ret = ov2680_read_reg(sensor, reg, &readval);  in ov2680_mod_reg() [all …] 
 | 
| D | s5k6a3.c | 3  * Samsung S5K6A3 image sensor driver 45  * struct s5k6a3 - fimc-is sensor data structure 47  * @subdev: the image sensor's v4l2 subdev 49  * @supplies: image sensor's voltage regulator supplies 50  * @gpio_reset: GPIO connected to the sensor's reset pin 52  * @format: media bus format at the sensor's source pad 126 		struct s5k6a3 *sensor, struct v4l2_subdev_pad_config *cfg,  in __s5k6a3_get_format()  argument 130 		return cfg ? v4l2_subdev_get_try_format(&sensor->subdev, cfg, pad) : NULL;  in __s5k6a3_get_format() 132 	return &sensor->format;  in __s5k6a3_get_format() 139 	struct s5k6a3 *sensor = sd_to_s5k6a3(sd);  in s5k6a3_set_fmt()  local [all …] 
 | 
| D | mt9m032.c | 3  * Driver for MT9M032 CMOS Image Sensor from Micron 125  * for this sensor. 155 #define to_dev(sensor) \  argument 156 	(&((struct i2c_client *)v4l2_get_subdevdata(&(sensor)->subdev))->dev) 168 static u32 mt9m032_row_time(struct mt9m032 *sensor, unsigned int width)  in mt9m032_row_time()  argument 174 	ns = div_u64(1000000000ULL * effective_width, sensor->pix_clock);  in mt9m032_row_time() 175 	dev_dbg(to_dev(sensor),	"MT9M032 line time: %u ns\n", ns);  in mt9m032_row_time() 179 static int mt9m032_update_timing(struct mt9m032 *sensor,  in mt9m032_update_timing()  argument 182 	struct i2c_client *client = v4l2_get_subdevdata(&sensor->subdev);  in mt9m032_update_timing() 183 	struct v4l2_rect *crop = &sensor->crop;  in mt9m032_update_timing() [all …] 
 | 
| D | ov5640.c | 542 /* power-on sensor init reg table */ 589 static int ov5640_init_slave_id(struct ov5640_dev *sensor)  in ov5640_init_slave_id()  argument 591 	struct i2c_client *client = sensor->i2c_client;  in ov5640_init_slave_id() 617 static int ov5640_write_reg(struct ov5640_dev *sensor, u16 reg, u8 val)  in ov5640_write_reg()  argument 619 	struct i2c_client *client = sensor->i2c_client;  in ov5640_write_reg() 643 static int ov5640_read_reg(struct ov5640_dev *sensor, u16 reg, u8 *val)  in ov5640_read_reg()  argument 645 	struct i2c_client *client = sensor->i2c_client;  in ov5640_read_reg() 674 static int ov5640_read_reg16(struct ov5640_dev *sensor, u16 reg, u16 *val)  in ov5640_read_reg16()  argument 679 	ret = ov5640_read_reg(sensor, reg, &hi);  in ov5640_read_reg16() 682 	ret = ov5640_read_reg(sensor, reg + 1, &lo);  in ov5640_read_reg16() [all …] 
 | 
| D | Kconfig | 371 	  This is a Video4Linux2 sensor driver for the TI TVP5146/47 561 comment "Camera sensor devices" 570 	tristate "Sony IMX214 sensor support" 575 	  This is a Video4Linux2 sensor driver for the Sony 582 	tristate "Sony IMX258 sensor support" 586 	  This is a Video4Linux2 sensor driver for the Sony 593 	tristate "Sony IMX274 sensor support" 598 	  This is a V4L2 sensor driver for the Sony IMX274 599 	  CMOS image sensor. 602 	tristate "Sony IMX319 sensor support" [all …] 
 | 
| /Linux-v5.4/drivers/thermal/ | 
| D | hisi_thermal.c | 2  * Hisilicon thermal sensor driver 77 	int (*get_temp)(struct hisi_thermal_sensor *sensor); 78 	int (*enable_sensor)(struct hisi_thermal_sensor *sensor); 79 	int (*disable_sensor)(struct hisi_thermal_sensor *sensor); 80 	int (*irq_handler)(struct hisi_thermal_sensor *sensor); 86 	struct hisi_thermal_sensor *sensor;  member 252  * Temperature configuration register - Sensor selection 256  * 0x0: local sensor (default) 257  * 0x1: remote sensor 1 (ACPU cluster 1) 258  * 0x2: remote sensor 2 (ACPU cluster 0) [all …] 
 | 
| D | thermal_mmio.c | 26 	struct thermal_mmio *sensor =  in thermal_mmio_get_temperature()  local 29 	t = sensor->read_mmio(sensor->mmio_base) & sensor->mask;  in thermal_mmio_get_temperature() 30 	t *= sensor->factor;  in thermal_mmio_get_temperature() 44 	struct thermal_mmio *sensor;  in thermal_mmio_probe()  local 46 				struct thermal_mmio *sensor);  in thermal_mmio_probe() 51 	sensor = devm_kzalloc(&pdev->dev, sizeof(*sensor), GFP_KERNEL);  in thermal_mmio_probe() 52 	if (!sensor)  in thermal_mmio_probe() 56 	sensor->mmio_base = devm_ioremap_resource(&pdev->dev, resource);  in thermal_mmio_probe() 57 	if (IS_ERR(sensor->mmio_base)) {  in thermal_mmio_probe() 59 			PTR_ERR(sensor->mmio_base));  in thermal_mmio_probe() [all …] 
 | 
| /Linux-v5.4/drivers/iio/light/ | 
| D | Kconfig | 11 	tristate "ACPI Ambient Light Sensor" 18 	  Ambient Light Sensor. 24 	tristate "ADJD-S311-CR999 digital color sensor" 30 	  digital color light sensor. 36 	tristate "AL3320A ambient light sensor" 40 	  ambient light sensor. 46 	tristate "APDS9300 ambient light sensor" 50 	  ambient light sensor. 56 	tristate "Avago APDS9960 gesture/RGB/ALS/proximity sensor" 63 	  APDS9960 gesture/RGB/ALS/proximity sensor. [all …] 
 | 
| /Linux-v5.4/drivers/input/rmi4/ | 
| D | rmi_2d_sensor.c | 22 void rmi_2d_sensor_abs_process(struct rmi_2d_sensor *sensor,  in rmi_2d_sensor_abs_process()  argument 26 	struct rmi_2d_axis_alignment *axis_align = &sensor->axis_align;  in rmi_2d_sensor_abs_process() 33 		obj->x = sensor->max_x - obj->x;  in rmi_2d_sensor_abs_process() 36 		obj->y = sensor->max_y - obj->y;  in rmi_2d_sensor_abs_process() 56 		obj->x = min(sensor->max_x, obj->x);  in rmi_2d_sensor_abs_process() 59 		obj->y =  min(sensor->max_y, obj->y);  in rmi_2d_sensor_abs_process() 61 	sensor->tracking_pos[slot].x = obj->x;  in rmi_2d_sensor_abs_process() 62 	sensor->tracking_pos[slot].y = obj->y;  in rmi_2d_sensor_abs_process() 66 void rmi_2d_sensor_abs_report(struct rmi_2d_sensor *sensor,  in rmi_2d_sensor_abs_report()  argument 70 	struct rmi_2d_axis_alignment *axis_align = &sensor->axis_align;  in rmi_2d_sensor_abs_report() [all …] 
 | 
| D | rmi_f12.c | 29 	struct rmi_2d_sensor sensor;  member 66 	struct rmi_2d_sensor *sensor = &f12->sensor;  in rmi_f12_read_sensor_tuning()  local 67 	struct rmi_function *fn = sensor->fn;  in rmi_f12_read_sensor_tuning() 80 			"F12 does not have the sensor tuning control register\n");  in rmi_f12_read_sensor_tuning() 100 		sensor->max_x = (buf[offset + 1] << 8) | buf[offset];  in rmi_f12_read_sensor_tuning() 101 		sensor->max_y = (buf[offset + 3] << 8) | buf[offset + 2];  in rmi_f12_read_sensor_tuning() 106 		sensor->max_x, sensor->max_y);  in rmi_f12_read_sensor_tuning() 115 		/* Units 1/128 sensor pitch */  in rmi_f12_read_sensor_tuning() 131 	/* Skip over sensor flags */  in rmi_f12_read_sensor_tuning() 135 	sensor->x_mm = (pitch_x * rx_receivers) >> 12;  in rmi_f12_read_sensor_tuning() [all …] 
 | 
| D | rmi_f11.c | 36  * a given sensor are described by its query registers.  The number of query 38  * queries as well as the sensor query information. 40  * Similarly, each sensor has control registers that govern its behavior.  The 41  * size and layout of the control registers for a given sensor can be determined 44  * And in a likewise fashion, each sensor has data registers where it reports 49  * registers in order to determine the attributes of a sensor. Then 51  * registers for sensor. 66  * @rezero - writing this to the F11 command register will cause the sensor to 183  * @nr_fingers - describes the maximum number of fingers the 2-D sensor 185  * @has_rel - the sensor supports relative motion reporting. [all …] 
 | 
| /Linux-v5.4/drivers/hwmon/ | 
| D | scpi-hwmon.c | 3  * System Control and Power Interface(SCPI) based hwmon sensor driver 57 static void scpi_scale_reading(u64 *value, struct sensor_data *sensor)  in scpi_scale_reading()  argument 59 	if (scpi_scale[sensor->info.class] != sensor->scale) {  in scpi_scale_reading() 60 		*value *= scpi_scale[sensor->info.class];  in scpi_scale_reading() 61 		do_div(*value, sensor->scale);  in scpi_scale_reading() 70 	struct sensor_data *sensor = &scpi_sensors->data[zone->sensor_id];  in scpi_read_temp()  local 74 	ret = scpi_ops->sensor_get_value(sensor->info.sensor_id, &value);  in scpi_read_temp() 78 	scpi_scale_reading(&value, sensor);  in scpi_read_temp() 90 	struct sensor_data *sensor;  in scpi_show_sensor()  local 94 	sensor = container_of(attr, struct sensor_data, dev_attr_input);  in scpi_show_sensor() [all …] 
 | 
| /Linux-v5.4/drivers/iio/imu/st_lsm6dsx/ | 
| D | st_lsm6dsx_shub.c | 5  * slave devices using accelerometer sensor as trigger for i2c 95 	struct st_lsm6dsx_sensor *sensor;  in st_lsm6dsx_shub_wait_complete()  local 98 	sensor = iio_priv(hw->iio_devs[ST_LSM6DSX_ID_ACC]);  in st_lsm6dsx_shub_wait_complete() 99 	odr = (hw->enable_mask & BIT(ST_LSM6DSX_ID_ACC)) ? sensor->odr : 13;  in st_lsm6dsx_shub_wait_complete() 172 static int st_lsm6dsx_shub_master_enable(struct st_lsm6dsx_sensor *sensor,  in st_lsm6dsx_shub_master_enable()  argument 176 	struct st_lsm6dsx_hw *hw = sensor->hw;  in st_lsm6dsx_shub_master_enable() 180 	/* enable acc sensor as trigger */  in st_lsm6dsx_shub_master_enable() 181 	err = st_lsm6dsx_sensor_set_enable(sensor, enable);  in st_lsm6dsx_shub_master_enable() 210 st_lsm6dsx_shub_read(struct st_lsm6dsx_sensor *sensor, u8 addr,  in st_lsm6dsx_shub_read()  argument 214 	struct st_lsm6dsx_hw *hw = sensor->hw;  in st_lsm6dsx_shub_read() [all …] 
 | 
| /Linux-v5.4/drivers/media/i2c/et8ek8/ | 
| D | et8ek8_driver.c | 70  * This table describes what should be written to the sensor register 551  * If power is on, also updates the sensor analog and digital gains. 554 static int et8ek8_set_gain(struct et8ek8_sensor *sensor, s32 gain)  in et8ek8_set_gain()  argument 556 	struct i2c_client *client = v4l2_get_subdevdata(&sensor->subdev);  in et8ek8_set_gain() 582 static int et8ek8_set_test_pattern(struct et8ek8_sensor *sensor, s32 mode)  in et8ek8_set_test_pattern()  argument 584 	struct i2c_client *client = v4l2_get_subdevdata(&sensor->subdev);  in et8ek8_set_test_pattern() 638 	struct et8ek8_sensor *sensor =  in et8ek8_set_ctrl()  local 643 		return et8ek8_set_gain(sensor, ctrl->val);  in et8ek8_set_ctrl() 648 			v4l2_get_subdevdata(&sensor->subdev);  in et8ek8_set_ctrl() 655 		return et8ek8_set_test_pattern(sensor, ctrl->val);  in et8ek8_set_ctrl() [all …] 
 | 
| /Linux-v5.4/Documentation/hwmon/ | 
| D | occ.rst | 16 sensor data from the processor and the system. The OCC can provide the raw 17 sensor data as well as perform thermal and power management on the system. 32 The OCC sensor ID is an integer that represents the unique identifier of the 33 sensor with respect to the OCC. For example, a temperature sensor for the third 34 DIMM slot in the system may have a sensor ID of 7. This mapping is unavailable 35 to the device driver, which must therefore export the sensor ID as-is. 37 Some entries are only present with certain OCC sensor versions or only on 42 	OCC sensor ID. 44 [with temperature sensor version 1] 50 [with temperature sensor version >= 2] [all …] 
 | 
| D | abituguru-datasheet.rst | 61 in a bank for a sensor is one or more bytes large. 68 number of bytes data per sensor and contents/meaning of those bytes. 70 Although both this document and the kernel driver have kept the sensor 73 a sensor. 100 Sending bank and sensor addresses to the uGuru 110 Once DATA holds 0x08 again write the sensor address to CMD. 116 First send the bank and sensor addresses as described above. 135 First send the bank and sensor addresses as described above. 168 This bank contains 0 sensors, iow the sensor address is ignored (but must be 172   This byte holds the alarm flags for sensor 0-7 of Sensor Bank1, with bit 0 [all …] 
 | 
| /Linux-v5.4/drivers/gpu/drm/nouveau/nvkm/subdev/iccsense/ | 
| D | base.c | 70 	return nvkm_iccsense_poll_lane(rail->sensor->i2c, rail->sensor->addr,  in nvkm_iccsense_ina2x9_read() 93 	return nvkm_iccsense_poll_lane(rail->sensor->i2c, rail->sensor->addr,  in nvkm_iccsense_ina3221_read() 101 		            struct nvkm_iccsense_sensor *sensor)  in nvkm_iccsense_sensor_config()  argument 104 	nvkm_trace(subdev, "write config of extdev %i: 0x%04x\n", sensor->id, sensor->config);  in nvkm_iccsense_sensor_config() 105 	nv_wr16i2cr(sensor->i2c, sensor->addr, 0x00, sensor->config);  in nvkm_iccsense_sensor_config() 134 	struct nvkm_iccsense_sensor *sensor, *tmps;  in nvkm_iccsense_dtor()  local 137 	list_for_each_entry_safe(sensor, tmps, &iccsense->sensors, head) {  in nvkm_iccsense_dtor() 138 		list_del(&sensor->head);  in nvkm_iccsense_dtor() 139 		kfree(sensor);  in nvkm_iccsense_dtor() 157 	struct nvkm_iccsense_sensor *sensor;  in nvkm_iccsense_create_sensor()  local [all …] 
 | 
| /Linux-v5.4/drivers/iio/pressure/ | 
| D | Kconfig | 10 	tristate "Honeywell ABP pressure sensor driver" 20 	tristate "Bosch Sensortec BMP180/BMP280 pressure sensor I2C driver" 28 	  an additional humidity sensor channel. 47 	tristate "ChromeOS EC Barometer Sensor" 50 	  Say yes here to build support for the Barometer sensor when 51 	  presented by the ChromeOS EC Sensor hub. 57 	tristate "Infineon DPS310 pressure and temperature sensor" 61 	  Support for the Infineon DPS310 digital barometric pressure sensor. 75 	  Say yes here to build support for the HID SENSOR 79 	  will be called hid-sensor-press. [all …] 
 | 
| /Linux-v5.4/drivers/media/usb/gspca/m5602/ | 
| D | m5602_mt9m111.c | 3  * Driver for the mt9m111 sensor 32 	{SENSOR, MT9M111_PAGE_MAP, 0x00, 0x00}, 33 	{SENSOR, MT9M111_SC_RESET, 80 	{SENSOR, MT9M111_SC_RESET, 0x00, 0x29}, 81 	{SENSOR, MT9M111_PAGE_MAP, 0x00, 0x00}, 82 	{SENSOR, MT9M111_SC_RESET, 0x00, 0x08}, 83 	{SENSOR, MT9M111_PAGE_MAP, 0x00, 0x01}, 84 	{SENSOR, MT9M111_CP_OPERATING_MODE_CTL, 0x00, 86 	{SENSOR, MT9M111_CP_LENS_CORRECTION_1, 0x04, 0x2a}, 87 	{SENSOR, MT9M111_CP_DEFECT_CORR_CONTEXT_A, 0x00, [all …] 
 |