Subject: [PATCH] genbook, sound, touchpad and battery patch
---
Index: config/bootscripts/boot-rk35xx.cmd
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/config/bootscripts/boot-rk35xx.cmd b/config/bootscripts/boot-rk35xx.cmd
--- a/config/bootscripts/boot-rk35xx.cmd	(revision 2f070312d4c5f9a025a8a5864629c66e7616b71a)
+++ b/config/bootscripts/boot-rk35xx.cmd	(date 1783711590128)
@@ -3,7 +3,7 @@
 # Please edit /boot/armbianEnv.txt to set supported parameters
 #
 
-setenv load_addr "0x9000000"
+setenv load_addr "0x200000"
 setenv overlay_error "false"
 # default values
 setenv rootdev "/dev/mmcblk0p1"
Index: config/bootscripts/boot-rockchip64-ttyS0.cmd
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/config/bootscripts/boot-rockchip64-ttyS0.cmd b/config/bootscripts/boot-rockchip64-ttyS0.cmd
--- a/config/bootscripts/boot-rockchip64-ttyS0.cmd	(revision 2f070312d4c5f9a025a8a5864629c66e7616b71a)
+++ b/config/bootscripts/boot-rockchip64-ttyS0.cmd	(date 1783711590116)
@@ -3,7 +3,7 @@
 # Please edit /boot/armbianEnv.txt to set supported parameters
 #
 
-setenv load_addr "0x9000000"
+setenv load_addr "0x200000"
 setenv overlay_error "false"
 # default values
 setenv rootdev "/dev/mmcblk0p1"
Index: packages/blobs/asound.state/asound.state.coolpi-genbook
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/packages/blobs/asound.state/asound.state.coolpi-genbook b/packages/blobs/asound.state/asound.state.coolpi-genbook
new file mode 100644
--- /dev/null	(date 1784588184723)
+++ b/packages/blobs/asound.state/asound.state.coolpi-genbook	(date 1784588184723)
@@ -0,0 +1,849 @@
+state.rockchiphdmi0 {
+	control.1 {
+		iface MIXER
+		name 'Receive PATH3 Source Select'
+		value 'From SDI3'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'From SDI0'
+			item.1 'From SDI1'
+			item.2 'From SDI2'
+			item.3 'From SDI3'
+		}
+	}
+	control.2 {
+		iface MIXER
+		name 'Receive PATH2 Source Select'
+		value 'From SDI2'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'From SDI0'
+			item.1 'From SDI1'
+			item.2 'From SDI2'
+			item.3 'From SDI3'
+		}
+	}
+	control.3 {
+		iface MIXER
+		name 'Receive PATH1 Source Select'
+		value 'From SDI1'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'From SDI0'
+			item.1 'From SDI1'
+			item.2 'From SDI2'
+			item.3 'From SDI3'
+		}
+	}
+	control.4 {
+		iface MIXER
+		name 'Receive PATH0 Source Select'
+		value 'From SDI0'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'From SDI0'
+			item.1 'From SDI1'
+			item.2 'From SDI2'
+			item.3 'From SDI3'
+		}
+	}
+	control.5 {
+		iface MIXER
+		name 'Transmit SDO3 Source Select'
+		value 'From PATH3'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'From PATH0'
+			item.1 'From PATH1'
+			item.2 'From PATH2'
+			item.3 'From PATH3'
+		}
+	}
+	control.6 {
+		iface MIXER
+		name 'Transmit SDO2 Source Select'
+		value 'From PATH2'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'From PATH0'
+			item.1 'From PATH1'
+			item.2 'From PATH2'
+			item.3 'From PATH3'
+		}
+	}
+	control.7 {
+		iface MIXER
+		name 'Transmit SDO1 Source Select'
+		value 'From PATH1'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'From PATH0'
+			item.1 'From PATH1'
+			item.2 'From PATH2'
+			item.3 'From PATH3'
+		}
+	}
+	control.8 {
+		iface MIXER
+		name 'Transmit SDO0 Source Select'
+		value 'From PATH0'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'From PATH0'
+			item.1 'From PATH1'
+			item.2 'From PATH2'
+			item.3 'From PATH3'
+		}
+	}
+	control.9 {
+		iface MIXER
+		name 'I2STDM Digital Loopback Mode'
+		value Disabled
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 Disabled
+			item.1 Mode1
+			item.2 Mode2
+			item.3 'Mode2 Swap'
+		}
+	}
+	control.10 {
+		iface PCM
+		name 'PCM Read Wait Time MS'
+		value 0
+		comment {
+			access 'read write'
+			type INTEGER
+			count 1
+			range '0 - 10000 (step 1)'
+		}
+	}
+	control.11 {
+		iface PCM
+		name 'PCM Write Wait Time MS'
+		value 0
+		comment {
+			access 'read write'
+			type INTEGER
+			count 1
+			range '0 - 10000 (step 1)'
+		}
+	}
+	control.12 {
+		iface CARD
+		name 'rockchip-hdmi0 Jack'
+		value false
+		comment {
+			access read
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.13 {
+		iface PCM
+		name 'Playback Channel Map'
+		value.0 0
+		value.1 0
+		value.2 0
+		value.3 0
+		value.4 0
+		value.5 0
+		value.6 0
+		value.7 0
+		comment {
+			access read
+			type INTEGER
+			count 8
+			range '0 - 36'
+		}
+	}
+	control.14 {
+		iface PCM
+		name 'IEC958 Playback Mask'
+		value ffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
+		comment {
+			access read
+			type IEC958
+			count 1
+		}
+	}
+	control.15 {
+		iface PCM
+		name 'IEC958 Playback Default'
+		value '0400000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
+		comment {
+			access 'read write'
+			type IEC958
+			count 1
+		}
+	}
+	control.16 {
+		iface PCM
+		name ELD
+		value '100006006510000100000000000000000469e123565832333909070700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
+		comment {
+			access 'read volatile'
+			type BYTES
+			count 128
+		}
+	}
+	control.17 {
+		iface MIXER
+		name 'ELD Bypass Switch'
+		value false
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+}
+state.rockchipes8316 {
+	control.1 {
+		iface MIXER
+		name 'Receive PATH3 Source Select'
+		value 'From SDI3'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'From SDI0'
+			item.1 'From SDI1'
+			item.2 'From SDI2'
+			item.3 'From SDI3'
+		}
+	}
+	control.2 {
+		iface MIXER
+		name 'Receive PATH2 Source Select'
+		value 'From SDI2'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'From SDI0'
+			item.1 'From SDI1'
+			item.2 'From SDI2'
+			item.3 'From SDI3'
+		}
+	}
+	control.3 {
+		iface MIXER
+		name 'Receive PATH1 Source Select'
+		value 'From SDI1'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'From SDI0'
+			item.1 'From SDI1'
+			item.2 'From SDI2'
+			item.3 'From SDI3'
+		}
+	}
+	control.4 {
+		iface MIXER
+		name 'Receive PATH0 Source Select'
+		value 'From SDI0'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'From SDI0'
+			item.1 'From SDI1'
+			item.2 'From SDI2'
+			item.3 'From SDI3'
+		}
+	}
+	control.5 {
+		iface MIXER
+		name 'Transmit SDO3 Source Select'
+		value 'From PATH3'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'From PATH0'
+			item.1 'From PATH1'
+			item.2 'From PATH2'
+			item.3 'From PATH3'
+		}
+	}
+	control.6 {
+		iface MIXER
+		name 'Transmit SDO2 Source Select'
+		value 'From PATH2'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'From PATH0'
+			item.1 'From PATH1'
+			item.2 'From PATH2'
+			item.3 'From PATH3'
+		}
+	}
+	control.7 {
+		iface MIXER
+		name 'Transmit SDO1 Source Select'
+		value 'From PATH1'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'From PATH0'
+			item.1 'From PATH1'
+			item.2 'From PATH2'
+			item.3 'From PATH3'
+		}
+	}
+	control.8 {
+		iface MIXER
+		name 'Transmit SDO0 Source Select'
+		value 'From PATH0'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'From PATH0'
+			item.1 'From PATH1'
+			item.2 'From PATH2'
+			item.3 'From PATH3'
+		}
+	}
+	control.9 {
+		iface MIXER
+		name 'I2STDM Digital Loopback Mode'
+		value Disabled
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 Disabled
+			item.1 Mode1
+			item.2 Mode2
+			item.3 'Mode2 Swap'
+		}
+	}
+	control.10 {
+		iface PCM
+		name 'PCM Read Wait Time MS'
+		value 0
+		comment {
+			access 'read write'
+			type INTEGER
+			count 1
+			range '0 - 10000 (step 1)'
+		}
+	}
+	control.11 {
+		iface PCM
+		name 'PCM Write Wait Time MS'
+		value 0
+		comment {
+			access 'read write'
+			type INTEGER
+			count 1
+			range '0 - 10000 (step 1)'
+		}
+	}
+	control.12 {
+		iface MIXER
+		name 'Headphone Playback Volume'
+		value.0 3
+		value.1 3
+		comment {
+			access 'read write'
+			type INTEGER
+			count 2
+			range '0 - 3'
+			dbmin -4800
+			dbmax 0
+			dbvalue.0 0
+			dbvalue.1 0
+		}
+	}
+	control.13 {
+		iface MIXER
+		name 'Headphone Mixer Volume'
+		value.0 11
+		value.1 11
+		comment {
+			access 'read write'
+			type INTEGER
+			count 2
+			range '0 - 11'
+			dbmin -1200
+			dbmax 0
+			dbvalue.0 0
+			dbvalue.1 0
+		}
+	}
+	control.14 {
+		iface MIXER
+		name 'Playback Polarity'
+		value Normal
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 Normal
+			item.1 'R Invert'
+			item.2 'L Invert'
+			item.3 'L + R Invert'
+		}
+	}
+	control.15 {
+		iface MIXER
+		name 'DAC Playback Volume'
+		value.0 192
+		value.1 192
+		comment {
+			access 'read write'
+			type INTEGER
+			count 2
+			range '0 - 192'
+			dbmin -9999999
+			dbmax 0
+			dbvalue.0 0
+			dbvalue.1 0
+		}
+	}
+	control.16 {
+		iface MIXER
+		name 'DAC Soft Ramp Switch'
+		value false
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.17 {
+		iface MIXER
+		name 'DAC Soft Ramp Rate'
+		value 4
+		comment {
+			access 'read write'
+			type INTEGER
+			count 1
+			range '0 - 4'
+		}
+	}
+	control.18 {
+		iface MIXER
+		name 'DAC Notch Filter Switch'
+		value false
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.19 {
+		iface MIXER
+		name 'DAC Double Fs Switch'
+		value false
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.20 {
+		iface MIXER
+		name 'DAC Stereo Enhancement'
+		value 0
+		comment {
+			access 'read write'
+			type INTEGER
+			count 1
+			range '0 - 7'
+		}
+	}
+	control.21 {
+		iface MIXER
+		name 'DAC Mono Mix Switch'
+		value false
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.22 {
+		iface MIXER
+		name 'Capture Polarity'
+		value Normal
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 Normal
+			item.1 Invert
+		}
+	}
+	control.23 {
+		iface MIXER
+		name 'Mic Boost Switch'
+		value true
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.24 {
+		iface MIXER
+		name 'ADC Capture Volume'
+		value 181
+		comment {
+			access 'read write'
+			type INTEGER
+			count 1
+			range '0 - 192'
+			dbmin -9999999
+			dbmax 0
+			dbvalue.0 -550
+		}
+	}
+	control.25 {
+		iface MIXER
+		name 'ADC PGA Gain Volume'
+		value 9
+		comment {
+			access 'read write'
+			type INTEGER
+			count 1
+			range '0 - 10'
+			dbmin -350
+			dbmax 2400
+			dbvalue.0 2100
+		}
+	}
+	control.26 {
+		iface MIXER
+		name 'ADC Soft Ramp Switch'
+		value true
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.27 {
+		iface MIXER
+		name 'ADC Double Fs Switch'
+		value false
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.28 {
+		iface MIXER
+		name 'ALC Capture Switch'
+		value false
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.29 {
+		iface MIXER
+		name 'ALC Capture Max Volume'
+		value 28
+		comment {
+			access 'read write'
+			type INTEGER
+			count 1
+			range '0 - 28'
+			dbmin -650
+			dbmax 3550
+			dbvalue.0 3550
+		}
+	}
+	control.30 {
+		iface MIXER
+		name 'ALC Capture Min Volume'
+		value 0
+		comment {
+			access 'read write'
+			type INTEGER
+			count 1
+			range '0 - 28'
+			dbmin -1200
+			dbmax 3000
+			dbvalue.0 -1200
+		}
+	}
+	control.31 {
+		iface MIXER
+		name 'ALC Capture Target Volume'
+		value 11
+		comment {
+			access 'read write'
+			type INTEGER
+			count 1
+			range '0 - 11'
+			dbmin -1650
+			dbmax -150
+			dbvalue.0 -150
+		}
+	}
+	control.32 {
+		iface MIXER
+		name 'ALC Capture Hold Time'
+		value 0
+		comment {
+			access 'read write'
+			type INTEGER
+			count 1
+			range '0 - 10'
+		}
+	}
+	control.33 {
+		iface MIXER
+		name 'ALC Capture Decay Time'
+		value 3
+		comment {
+			access 'read write'
+			type INTEGER
+			count 1
+			range '0 - 10'
+		}
+	}
+	control.34 {
+		iface MIXER
+		name 'ALC Capture Attack Time'
+		value 2
+		comment {
+			access 'read write'
+			type INTEGER
+			count 1
+			range '0 - 10'
+		}
+	}
+	control.35 {
+		iface MIXER
+		name 'ALC Capture Noise Gate Switch'
+		value false
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.36 {
+		iface MIXER
+		name 'ALC Capture Noise Gate Threshold'
+		value 0
+		comment {
+			access 'read write'
+			type INTEGER
+			count 1
+			range '0 - 31'
+		}
+	}
+	control.37 {
+		iface MIXER
+		name 'ALC Capture Noise Gate Type'
+		value 'Constant PGA Gain'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'Constant PGA Gain'
+			item.1 'Mute ADC Output'
+		}
+	}
+	control.38 {
+		iface MIXER
+		name 'spk switch'
+		value true
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.39 {
+		iface MIXER
+		name 'hp switch'
+		value false
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.40 {
+		iface MIXER
+		name 'Headphone Switch'
+		value true
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.41 {
+		iface MIXER
+		name 'Speaker Switch'
+		value true
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.42 {
+		iface MIXER
+		name 'Main Mic Switch'
+		value true
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.43 {
+		iface MIXER
+		name 'Headset Mic Switch'
+		value true
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.44 {
+		iface MIXER
+		name 'Differential Mux'
+		value lin2-rin2
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 lin1-rin1
+			item.1 lin2-rin2
+			item.2 'lin1-rin1 with 20db Boost'
+			item.3 'lin2-rin2 with 20db Boost'
+		}
+	}
+	control.45 {
+		iface MIXER
+		name 'Digital Mic Mux'
+		value 'dmic disable'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'dmic disable'
+			item.1 'dmic data at high level'
+			item.2 'dmic data at low level'
+		}
+	}
+	control.46 {
+		iface MIXER
+		name 'DAC Source Mux'
+		value 'LDATA TO LDAC, RDATA TO RDAC'
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 'LDATA TO LDAC, RDATA TO RDAC'
+			item.1 'LDATA TO LDAC, LDATA TO RDAC'
+			item.2 'RDATA TO LDAC, RDATA TO RDAC'
+			item.3 'RDATA TO LDAC, LDATA TO RDAC'
+		}
+	}
+	control.47 {
+		iface MIXER
+		name 'Left Headphone Mux'
+		value lin2-rin2
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 lin1-rin1
+			item.1 lin2-rin2
+			item.2 'lin-rin with Boost'
+			item.3 'lin-rin with Boost and PGA'
+		}
+	}
+	control.48 {
+		iface MIXER
+		name 'Right Headphone Mux'
+		value lin2-rin2
+		comment {
+			access 'read write'
+			type ENUMERATED
+			count 1
+			item.0 lin1-rin1
+			item.1 lin2-rin2
+			item.2 'lin-rin with Boost'
+			item.3 'lin-rin with Boost and PGA'
+		}
+	}
+	control.49 {
+		iface MIXER
+		name 'Left Headphone Mixer LLIN Switch'
+		value true
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.50 {
+		iface MIXER
+		name 'Left Headphone Mixer Left DAC Switch'
+		value true
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.51 {
+		iface MIXER
+		name 'Right Headphone Mixer RLIN Switch'
+		value true
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+	control.52 {
+		iface MIXER
+		name 'Right Headphone Mixer Right DAC Switch'
+		value true
+		comment {
+			access 'read write'
+			type BOOLEAN
+			count 1
+		}
+	}
+}
Index: config/bootscripts/boot-rockchip64.cmd
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/config/bootscripts/boot-rockchip64.cmd b/config/bootscripts/boot-rockchip64.cmd
--- a/config/bootscripts/boot-rockchip64.cmd	(revision 2f070312d4c5f9a025a8a5864629c66e7616b71a)
+++ b/config/bootscripts/boot-rockchip64.cmd	(date 1783711590098)
@@ -3,7 +3,7 @@
 # Please edit /boot/armbianEnv.txt to set supported parameters
 #
 
-setenv load_addr "0x9000000"
+setenv load_addr "0x200000"
 setenv overlay_error "false"
 # default values
 setenv rootdev "/dev/mmcblk0p1"
Index: config/boards/coolpi-genbook.csc
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/config/boards/coolpi-genbook.csc b/config/boards/coolpi-genbook.csc
--- a/config/boards/coolpi-genbook.csc	(revision 2f070312d4c5f9a025a8a5864629c66e7616b71a)
+++ b/config/boards/coolpi-genbook.csc	(date 1784583695832)
@@ -15,6 +15,7 @@
 BOOT_SUPPORT_SPI="yes"
 BOOT_SPI_RKSPI_LOADER="yes"
 IMAGE_PARTITION_TABLE="gpt"
+ASOUND_STATE="asound.state.coolpi-genbook"
 
 # Mainline U-Boot
 function post_family_config__coolpi-genbook_use_mainline_uboot() {
Index: config/kernel/linux-rk35xx-vendor.config
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
diff --git a/config/kernel/linux-rk35xx-vendor.config b/config/kernel/linux-rk35xx-vendor.config
--- a/config/kernel/linux-rk35xx-vendor.config	(revision 2f070312d4c5f9a025a8a5864629c66e7616b71a)
+++ b/config/kernel/linux-rk35xx-vendor.config	(date 1784588184722)
@@ -1286,6 +1286,7 @@
 CONFIG_POWER_RESET_GPIO=y
 CONFIG_POWER_RESET_GPIO_RESTART=y
 CONFIG_SYSCON_REBOOT_MODE=y
+CONFIG_BATTERY_CW2015=y
 CONFIG_BATTERY_CW2017=y
 CONFIG_BATTERY_SBS=y
 CONFIG_BATTERY_MAX17042=y
@@ -2096,6 +2097,7 @@
 CONFIG_HID_STEAM=m
 CONFIG_HID_STEELSERIES=m
 CONFIG_HID_WIIMOTE=m
+CONFIG_I2C_HID_OF=m
 CONFIG_USB_HIDDEV=y
 CONFIG_USB_LED_TRIG=y
 CONFIG_USB_ULPI_BUS=m
