From 66d3fcf859c9880145cb6bcf4181741ed6908e3b Mon Sep 17 00:00:00 2001 From: Gabor Juhos Date: Wed, 25 Sep 2013 18:00:35 +0000 Subject: [PATCH] package/kernel: add support for industrial-io and AD799x Add support for industrial IO core and (still staging) driver for AD799x, a high precision I2C ADC family. Signed-off-by: Hartmut Knaack [juhosg: update subject, reformat commit message] Signed-off-by: Gabor Juhos git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38187 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/kernel/linux/modules/other.mk | 45 +++++++++++++++++++++++++++ target/linux/generic/config-3.10 | 8 +++++ target/linux/generic/config-3.8 | 32 +++++++++++++++++++ target/linux/generic/config-3.9 | 36 +++++++++++++++++++++ 4 files changed, 121 insertions(+) diff --git a/package/kernel/linux/modules/other.mk b/package/kernel/linux/modules/other.mk index b2d59560f3..293e517821 100644 --- a/package/kernel/linux/modules/other.mk +++ b/package/kernel/linux/modules/other.mk @@ -193,6 +193,51 @@ endef $(eval $(call KernelPackage,gpio-pcf857x)) +define KernelPackage/iio-core + SUBMENU:=$(OTHER_MENU) + DEPENDS:=@!LINUX_3_3 + TITLE:=Industrial IO core + KCONFIG:= \ + CONFIG_IIO \ + CONFIG_IIO_BUFFER=y \ + CONFIG_IIO_KFIFO_BUF \ + CONFIG_IIO_TRIGGER=y \ + CONFIG_IIO_TRIGGERED_BUFFER + FILES:= \ + $(LINUX_DIR)/drivers/iio/industrialio.ko \ + $(LINUX_DIR)/drivers/iio/industrialio-triggered-buffer.ko \ + $(LINUX_DIR)/drivers/iio/kfifo_buf.ko + AUTOLOAD:=$(call AutoLoad,55,industrialio kfifo_buf industrialio-triggered-buffer) +endef + +define KernelPackage/iio-core/description + The industrial I/O subsystem provides a unified framework for + drivers for many different types of embedded sensors using a + number of different physical interfaces (i2c, spi, etc) +endef + +$(eval $(call KernelPackage,iio-core)) + + +define KernelPackage/iio-ad799x + SUBMENU:=$(OTHER_MENU) + DEPENDS:=kmod-i2c-core kmod-iio-core + TITLE:=Analog Devices AD799x ADC driver + KCONFIG:= \ + CONFIG_AD799X_RING_BUFFER=y \ + CONFIG_AD799X + FILES:=$(LINUX_DIR)/drivers/staging/iio/adc/ad799x.ko + AUTOLOAD:=$(call AutoLoad,56,ad799x) +endef + +define KernelPackage/iio-ad799x/description + support for Analog Devices: + ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998 + i2c analog to digital converters (ADC). WARNING! This driver is still staging! +endef + +$(eval $(call KernelPackage,iio-ad799x)) + define KernelPackage/lp SUBMENU:=$(OTHER_MENU) TITLE:=Parallel port and line printer support diff --git a/target/linux/generic/config-3.10 b/target/linux/generic/config-3.10 index 16f4235520..ab8ac11eb8 100644 --- a/target/linux/generic/config-3.10 +++ b/target/linux/generic/config-3.10 @@ -1222,6 +1222,14 @@ CONFIG_HZ_100=y # CONFIG_IGB is not set # CONFIG_IGBVF is not set # CONFIG_IIO is not set +# CONFIG_IIO_BUFFER_CB is not set +CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 +# CONFIG_IIO_GPIO_TRIGGER is not set +# CONFIG_IIO_SIMPLE_DUMMY is not set +# CONFIG_IIO_ST_ACCEL_3AXIS is not set +# CONFIG_IIO_ST_GYRO_3AXIS is not set +# CONFIG_IIO_ST_MAGN_3AXIS is not set +# CONFIG_IIO_SYSFS_TRIGGER is not set # CONFIG_IKCONFIG is not set # CONFIG_IKCONFIG_PROC is not set # CONFIG_IMAGE_CMDLINE_HACK is not set diff --git a/target/linux/generic/config-3.8 b/target/linux/generic/config-3.8 index beab3437b9..63b0dfdcb3 100644 --- a/target/linux/generic/config-3.8 +++ b/target/linux/generic/config-3.8 @@ -15,12 +15,25 @@ CONFIG_32BIT=y # CONFIG_ACPI_HED is not set # CONFIG_ACPI_POWER_METER is not set # CONFIG_ACPI_QUICKSTART is not set +# CONFIG_AD5064 is not set # CONFIG_AD525X_DPOT is not set +# CONFIG_AD5380 is not set +# CONFIG_AD5446 is not set +# CONFIG_AD5933 is not set +# CONFIG_AD7150 is not set +# CONFIG_AD7152 is not set +# CONFIG_AD7291 is not set +# CONFIG_AD7606 is not set +# CONFIG_AD7746 is not set # CONFIG_ADAPTEC_STARFIRE is not set +# CONFIG_ADE7854 is not set # CONFIG_ADFS_FS is not set # CONFIG_ADIS16255 is not set +# CONFIG_ADJD_S311 is not set # CONFIG_ADM6996_PHY is not set # CONFIG_ADM8211 is not set +# CONFIG_ADT7316 is not set +# CONFIG_ADT7410 is not set CONFIG_AEABI=y # CONFIG_AFFS_FS is not set # CONFIG_AFS_FS is not set @@ -1124,6 +1137,13 @@ CONFIG_HZ_100=y # CONFIG_IGB is not set # CONFIG_IGBVF is not set # CONFIG_IIO is not set +# CONFIG_IIO_BUFFER_CB is not set +CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 +# CONFIG_IIO_GPIO_TRIGGER is not set +# CONFIG_IIO_SIMPLE_DUMMY is not set +# CONFIG_IIO_ST_HWMON is not set +# CONFIG_IIO_SW_RING is not set +# CONFIG_IIO_SYSFS_TRIGGER is not set # CONFIG_IKCONFIG is not set # CONFIG_IKCONFIG_PROC is not set # CONFIG_IMAGE_CMDLINE_HACK is not set @@ -1535,7 +1555,10 @@ CONFIG_LZMA_DECOMPRESS=y # CONFIG_MAC_PARTITION is not set # CONFIG_MAGIC_SYSRQ is not set # CONFIG_MARVELL_PHY is not set +# CONFIG_MAX1363 is not set +# CONFIG_MAX517 is not set # CONFIG_MAX63XX_WATCHDOG is not set +# CONFIG_MCP4725 is not set # CONFIG_MD is not set # CONFIG_MDIO_BITBANG is not set # CONFIG_MDIO_BUS_MUX_GPIO is not set @@ -2719,6 +2742,7 @@ CONFIG_SELECT_MEMORY_MODEL=y # CONFIG_SENSORS_ADT7462 is not set # CONFIG_SENSORS_ADT7470 is not set # CONFIG_SENSORS_ADT7475 is not set +# CONFIG_SENSORS_AK8975 is not set # CONFIG_SENSORS_AMC6821 is not set # CONFIG_SENSORS_APDS990X is not set # CONFIG_SENSORS_APPLESMC is not set @@ -2747,8 +2771,11 @@ CONFIG_SELECT_MEMORY_MODEL=y # CONFIG_SENSORS_GSC is not set # CONFIG_SENSORS_HDAPS is not set # CONFIG_SENSORS_HIH6130 is not set +# CONFIG_SENSORS_HMC5843 is not set # CONFIG_SENSORS_I5K_AMB is not set # CONFIG_SENSORS_INA2XX is not set +# CONFIG_SENSORS_ISL29018 is not set +# CONFIG_SENSORS_ISL29028 is not set # CONFIG_SENSORS_IT87 is not set # CONFIG_SENSORS_JC42 is not set # CONFIG_SENSORS_K10TEMP is not set @@ -2804,6 +2831,7 @@ CONFIG_SELECT_MEMORY_MODEL=y # CONFIG_SENSORS_TMP401 is not set # CONFIG_SENSORS_TMP421 is not set # CONFIG_SENSORS_TSL2550 is not set +# CONFIG_SENSORS_TSL2563 is not set # CONFIG_SENSORS_VIA686A is not set # CONFIG_SENSORS_VIA_CPUTEMP is not set # CONFIG_SENSORS_VT1211 is not set @@ -3195,6 +3223,7 @@ CONFIG_TIMERFD=y # CONFIG_TIMER_STATS is not set CONFIG_TINY_RCU=y # CONFIG_TIPC is not set +# CONFIG_TI_ADC081C is not set # CONFIG_TI_DAC7512 is not set # CONFIG_TI_ST is not set # CONFIG_TLAN is not set @@ -3248,6 +3277,8 @@ CONFIG_TRAD_SIGNALS=y # CONFIG_TREE_PREEMPT_RCU is not set # CONFIG_TREE_RCU is not set # CONFIG_TREE_RCU_TRACE is not set +# CONFIG_TSL2583 is not set +# CONFIG_TSL2x7x is not set # CONFIG_TTY_PRINTK is not set # CONFIG_TUN is not set # CONFIG_TWL4030_CORE is not set @@ -3577,6 +3608,7 @@ CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y # CONFIG_UWB is not set # CONFIG_V4L_MEM2MEM_DRIVERS is not set # CONFIG_V4L_TEST_DRIVERS is not set +# CONFIG_VCNL4000 is not set # CONFIG_VETH is not set # CONFIG_VFAT_FS is not set # CONFIG_VGASTATE is not set diff --git a/target/linux/generic/config-3.9 b/target/linux/generic/config-3.9 index 41c14bf89a..fbb3be9f43 100644 --- a/target/linux/generic/config-3.9 +++ b/target/linux/generic/config-3.9 @@ -15,12 +15,25 @@ CONFIG_32BIT=y # CONFIG_ACPI_HED is not set # CONFIG_ACPI_POWER_METER is not set # CONFIG_ACPI_QUICKSTART is not set +# CONFIG_AD5064 is not set # CONFIG_AD525X_DPOT is not set +# CONFIG_AD5380 is not set +# CONFIG_AD5446 is not set +# CONFIG_AD5933 is not set +# CONFIG_AD7150 is not set +# CONFIG_AD7152 is not set +# CONFIG_AD7291 is not set +# CONFIG_AD7606 is not set +# CONFIG_AD7746 is not set # CONFIG_ADAPTEC_STARFIRE is not set +# CONFIG_ADE7854 is not set # CONFIG_ADFS_FS is not set # CONFIG_ADIS16255 is not set +# CONFIG_ADJD_S311 is not set # CONFIG_ADM6996_PHY is not set # CONFIG_ADM8211 is not set +# CONFIG_ADT7316 is not set +# CONFIG_ADT7410 is not set CONFIG_AEABI=y # CONFIG_AFFS_FS is not set # CONFIG_AFS_FS is not set @@ -1137,6 +1150,15 @@ CONFIG_HZ_100=y # CONFIG_IGB is not set # CONFIG_IGBVF is not set # CONFIG_IIO is not set +# CONFIG_IIO_BUFFER_CB is not set +CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 +# CONFIG_IIO_GPIO_TRIGGER is not set +# CONFIG_IIO_SIMPLE_DUMMY is not set +# CONFIG_IIO_ST_ACCEL_3AXIS is not set +# CONFIG_IIO_ST_GYRO_3AXIS is not set +# CONFIG_IIO_ST_HWMON is not set +# CONFIG_IIO_ST_MAGN_3AXIS is not set +# CONFIG_IIO_SYSFS_TRIGGER is not set # CONFIG_IKCONFIG is not set # CONFIG_IKCONFIG_PROC is not set # CONFIG_IMAGE_CMDLINE_HACK is not set @@ -1240,6 +1262,7 @@ CONFIG_INPUT_MISC=y # CONFIG_INTEL_MID_PTI is not set # CONFIG_INTEL_OAKTRAIL is not set # CONFIG_INTERVAL_TREE_TEST is not set +# CONFIG_INV_MPU6050_IIO is not set # CONFIG_IOMMU_SUPPORT is not set # CONFIG_IOSCHED_CFQ is not set CONFIG_IOSCHED_DEADLINE=y @@ -1360,6 +1383,7 @@ CONFIG_ISDN=y # CONFIG_ISL29020 is not set # CONFIG_ISO9660_FS is not set # CONFIG_ISS4xx is not set +# CONFIG_ITG3200 is not set # CONFIG_IWL3945 is not set # CONFIG_IWLAGN is not set # CONFIG_IWLWIFI is not set @@ -1549,7 +1573,10 @@ CONFIG_LZMA_DECOMPRESS=y # CONFIG_MAGIC_SYSRQ is not set # CONFIG_MAILBOX is not set # CONFIG_MARVELL_PHY is not set +# CONFIG_MAX1363 is not set +# CONFIG_MAX517 is not set # CONFIG_MAX63XX_WATCHDOG is not set +# CONFIG_MCP4725 is not set # CONFIG_MD is not set # CONFIG_MDIO_BITBANG is not set # CONFIG_MDIO_BUS_MUX_GPIO is not set @@ -2757,6 +2784,7 @@ CONFIG_SELECT_MEMORY_MODEL=y # CONFIG_SENSORS_ADT7462 is not set # CONFIG_SENSORS_ADT7470 is not set # CONFIG_SENSORS_ADT7475 is not set +# CONFIG_SENSORS_AK8975 is not set # CONFIG_SENSORS_AMC6821 is not set # CONFIG_SENSORS_APDS990X is not set # CONFIG_SENSORS_APPLESMC is not set @@ -2785,9 +2813,12 @@ CONFIG_SELECT_MEMORY_MODEL=y # CONFIG_SENSORS_GSC is not set # CONFIG_SENSORS_HDAPS is not set # CONFIG_SENSORS_HIH6130 is not set +# CONFIG_SENSORS_HMC5843 is not set # CONFIG_SENSORS_I5K_AMB is not set # CONFIG_SENSORS_INA209 is not set # CONFIG_SENSORS_INA2XX is not set +# CONFIG_SENSORS_ISL29018 is not set +# CONFIG_SENSORS_ISL29028 is not set # CONFIG_SENSORS_IT87 is not set # CONFIG_SENSORS_JC42 is not set # CONFIG_SENSORS_K10TEMP is not set @@ -2844,6 +2875,7 @@ CONFIG_SELECT_MEMORY_MODEL=y # CONFIG_SENSORS_TMP401 is not set # CONFIG_SENSORS_TMP421 is not set # CONFIG_SENSORS_TSL2550 is not set +# CONFIG_SENSORS_TSL2563 is not set # CONFIG_SENSORS_VIA686A is not set # CONFIG_SENSORS_VIA_CPUTEMP is not set # CONFIG_SENSORS_VT1211 is not set @@ -3238,6 +3270,7 @@ CONFIG_TIMERFD=y # CONFIG_TIMER_STATS is not set CONFIG_TINY_RCU=y # CONFIG_TIPC is not set +# CONFIG_TI_ADC081C is not set # CONFIG_TI_DAC7512 is not set # CONFIG_TI_ST is not set # CONFIG_TLAN is not set @@ -3291,6 +3324,8 @@ CONFIG_TRAD_SIGNALS=y # CONFIG_TREE_PREEMPT_RCU is not set # CONFIG_TREE_RCU is not set # CONFIG_TREE_RCU_TRACE is not set +# CONFIG_TSL2583 is not set +# CONFIG_TSL2x7x is not set CONFIG_TTY=y # CONFIG_TTY_PRINTK is not set # CONFIG_TUN is not set @@ -3624,6 +3659,7 @@ CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y # CONFIG_UWB is not set # CONFIG_V4L_MEM2MEM_DRIVERS is not set # CONFIG_V4L_TEST_DRIVERS is not set +# CONFIG_VCNL4000 is not set # CONFIG_VETH is not set # CONFIG_VFAT_FS is not set # CONFIG_VGASTATE is not set