Hi,
-We are using msp430g2744 as qwerty keypad controller in our android based laptop.
I got the firmware code for the same from below link.
https://www.ti.com/tool/TIDM-KEYBOARD
I have built it and flashed in our board's msp430g2744.
Now, when I run the i2cdetect command over the i2c channel we connected the
msp430g2744, we are able to detect the slave with address 0x22.
trinket:/sys/devices/platform/soc/4c80000.i2c # i2cdetect 3
Probe chips 0x03-0x77 on bus 3? (Y/n):y
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- 22 -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
This address only is configured in the code we got from below link.
-Android as we know is linux based and linux has support for i2c-over-hid driver.
Below is the location of the driver in linux source code.
drivers/hid/i2c-hid/
To be able to use this driver, we just need to enable the device tree data with
only two info
-interrupt number
-i2c adress from which to read the hid descriptor
I have enabled the devicetree as
&qupv3_se5_i2c {
status = "okay";
i2c-hid-dev@22 {
compatible = "msp-i2c-hid";
reg = <0x22>;
hid-descr-addr = <0x0001>;
interrupt-parent = <&tlmm>;
interrupts = <1 0>;
status = "disabled";
};
};
Now, when device boots up and probe for msp430g2744 i2c-ver-hid
driver is called it fails with below error
[ 9.806578] i2c_hid 3-0022: Fetching the HID descriptor
[ 9.811991] i2c_hid 3-0022: __i2c_hid_command: cmd=01 00
[ 9.818574] i2c_hid 3-0022: unexpected HID descriptor bcdVersion (0x0000)
Can you please help to correct the hid-descr-addr?
Thanks and regards
Dishnedra