Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  1) * GPIO driven matrix keypad device tree bindings
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  2) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3) GPIO driven matrix keypad is used to interface a SoC with a matrix keypad.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4) The matrix keypad supports multiple row and column lines, a key can be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  5) placed at each intersection of a unique row and a unique column. The matrix
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  6) keypad can sense a key-press and key-release by means of GPIO lines and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  7) report the event using GPIO interrupts to the cpu.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) Required Properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) - compatible:		Should be "gpio-matrix-keypad"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) - row-gpios:		List of gpios used as row lines. The gpio specifier
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) 			for this property depends on the gpio controller to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) 			which these row lines are connected.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) - col-gpios:		List of gpios used as column lines. The gpio specifier
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) 			for this property depends on the gpio controller to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) 			which these column lines are connected.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) - linux,keymap:		The definition can be found at
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) 			bindings/input/matrix-keymap.txt
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) Optional Properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) - linux,no-autorepeat:	do no enable autorepeat feature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) - wakeup-source:	use any event on keypad as wakeup event.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) 			(Legacy property supported: "linux,wakeup")
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) - debounce-delay-ms:	debounce interval in milliseconds
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) - col-scan-delay-us:	delay, measured in microseconds, that is needed
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) 			before we can scan keypad after activating column gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) - drive-inactive-cols:	drive inactive columns during scan,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) 			default is to turn inactive columns into inputs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) Example:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) 	matrix-keypad {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) 		compatible = "gpio-matrix-keypad";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) 		debounce-delay-ms = <5>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) 		col-scan-delay-us = <2>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) 		row-gpios = <&gpio2 25 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) 			     &gpio2 26 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) 			     &gpio2 27 0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) 		col-gpios = <&gpio2 21 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) 			     &gpio2 22 0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) 		linux,keymap = <0x0000008B
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) 				0x0100009E
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) 				0x02000069
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) 				0x0001006A
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) 				0x0101001C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) 				0x0201006C>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) 	};