#
# Makefile for IIO Light sensors
#

# When adding new entries keep the list in alphabetical order
obj-$(CONFIG_ACPI_ALS)		+= acpi-als.o
obj-$(CONFIG_ADJD_S311)		+= adjd_s311.o
obj-$(CONFIG_AL3320A)		+= al3320a.o
obj-$(CONFIG_APDS9300)		+= apds9300.o
obj-$(CONFIG_BH1750)		+= bh1750.o
obj-$(CONFIG_CM32181)		+= cm32181.o
obj-$(CONFIG_CM3232)		+= cm3232.o
obj-$(CONFIG_CM3323)		+= cm3323.o
obj-$(CONFIG_CM36651)		+= cm36651.o
obj-$(CONFIG_GP2AP020A00F)	+= gp2ap020a00f.o
obj-$(CONFIG_HID_SENSOR_ALS)	+= hid-sensor-als.o
obj-$(CONFIG_HID_SENSOR_PROX)	+= hid-sensor-prox.o
obj-$(CONFIG_ISL29125)		+= isl29125.o
obj-$(CONFIG_JSA1212)		+= jsa1212.o
obj-$(CONFIG_SENSORS_LM3533)	+= lm3533-als.o
obj-$(CONFIG_LTR501)		+= ltr501.o
obj-$(CONFIG_SENSORS_TSL2563)	+= tsl2563.o
obj-$(CONFIG_STK3310)          += stk3310.o
obj-$(CONFIG_TCS3414)		+= tcs3414.o
obj-$(CONFIG_TCS3472)		+= tcs3472.o
obj-$(CONFIG_TSL4531)		+= tsl4531.o
obj-$(CONFIG_VCNL4000)		+= vcnl4000.o
