Re: Beginner query regarding usbhid

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 3/25/20 11:53 PM, Rohit Sarkar wrote:
> On Wed, Mar 25, 2020 at 11:07:55PM -0700, Randy Dunlap wrote:
>> On 3/25/20 10:31 PM, Rohit Sarkar wrote:
>>> On Wed, Mar 25, 2020 at 02:40:27PM -0700, Randy Dunlap wrote:
>>>> On 3/25/20 10:13 AM, Rohit Sarkar wrote:
>>>>> On Wed, Mar 25, 2020 at 04:41:38PM +0100, Hubert CHAUMETTE wrote:
>>>>>> Le 25/03/2020 15:47, Rohit Sarkar a écrit :
>>>>>>> I was trying to mess around with the driver that drives my mouse. I
>>>>>>> found out that it is usbhid. I then added a printk statement to the init
>>>>>>> and exit function of usbhid.
>>>>>>> I then compiled and installed the usbhid drivers. Post that I ran
>>>>>>> `sudo modprobe -r usbhid` and `sudo modprobe usbhid` but couldnt observe
>>>>>>> any logs in dmesg.
>>>>>>>
>>>>>>> I am certain I am missing something fundamental. Could someone help me
>>>>>>> with this.
>>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> Did you check whether your module was effectively loaded with lsmod?
>>>>>> What log level did you use in your printk statement? Depending on your
>>>>>> system default loglevel your logs might not be printed. A quick fix
>>>>>> would be to use one of the lowest levels (pr_emerg, but pr_err might
>>>>>> suffice).
>>>>>> Regards,
>>>>>
>>>>> Hey,
>>>>> I did check that module was loaded. And one of the signs was that my
>>>>> mouse started working after insmod :).
>>> Hi,
>>>> Hi,
>>>> I'm not convinced that your modified usbhid module was loaded.
>>> Hmm, here's my dmesg logs if that helps:
>>> "
>>> [  382.132319] usbcore: deregistering interface driver usbhid
>>> [  391.077410] input: MOSART Semi. 2.4G Wireless Mouse as /devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2:1.0/0003:3938:1031.0002/input/input26
>>> [  391.136724] input: MOSART Semi. 2.4G Wireless Mouse as /devices/pci0000:00/0000:00:14.0/usb1/1-2/1-2:1.0/0003:3938:1031.0002/input/input27
>>> [  391.137285] hid-generic 0003:3938:1031.0002: input,hiddev0,hidraw0: USB HID v1.10 Mouse [MOSART Semi. 2.4G Wireless Mouse] on usb-0000:00:14.0-2/input0
>>> [  391.137480] usbcore: registered new interface driver usbhid
>>> [  391.137483] usbhid: USB HID core driver
>>> "
>>
>> I can't tell that helps any.
>>
>>>> Could an older (original) usbhid module be reloaded so that the mouse
>>>> started working again?  That would also explain the lack of (new) messages.
>>> I think so too. But how do I verify if this is the case?
>>>
>>>> What kernel version are you using?  Is it a distro kernel?
>>> I am currently running a bleeding edge kernel that I built. ie 5.6-rc7. 
>>>> Are you trying to replace the usbhid module in a distro kernel or are
>>>> you building the entire kernel?
>>> I am building the entire kernel
>>>>> I used printk(KERN_ALERT "some message") for logging. I also tried with
>>>>> KERN_ERR but no luck. 
>>>>>
>>>>> The command I used for building was "make -C /home/rohit/LINUX/kernels/staging  M=$(pwd)"
>>>>> and for installing the modules: "sudo make -C /home/rohit/LINUX/kernels/staging  M=$(pwd) modules_install"
>>>>> both were executed from the usbhid directory.
>>>>
>>>> why those commands?  seems unusual.
>>> My Linux kernel source is in the directory mentioned in the commands. So
>>> it is same as running "make M=drivers/hid/usbhid/" from the linux kernel
>>> source root.
>>
>> So /home/rohit/kernels/staging is the top-level kernel source directory?
>>
>> "M=dir" is for external modules to be built.  AFAICT you are not building any
>> external modules.

> Oh, I think M=dir options just makes the Makefile build the folder
> specified. I see such an output when I run the make command which makes
> me feel that the make command I am using is actually building the
> modules:

You should be able to build the usbhid sub-directory ("folder") like this:

$ cd /home/rohit/LINUX/kernels/staging
$ make drivers/hid/usbhid/

but maybe what you are doing is equivalent to this.

> "
> drivers/hid/usbhid❯ make -C /home/rohit/LINUX/kernels/staging  M=$(pwd)                                            staging/git/master !
> make: Entering directory '/home/rohit/LINUX/kernels/staging'
>   AR      /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/built-in.a
>   CC [M]  /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/hid-core.o
>   CC [M]  /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/hiddev.o
>   CC [M]  /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/hid-pidff.o
>   LD [M]  /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbhid.o
>   CC [M]  /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbkbd.o
>   CC [M]  /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbmouse.o
>   MODPOST 3 modules
>   CC [M]  /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbhid.mod.o
>   LD [M]  /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbhid.ko
>   CC [M]  /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbkbd.mod.o
>   LD [M]  /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbkbd.ko
>   CC [M]  /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbmouse.mod.o
>   LD [M]  /home/rohit/LINUX/kernels/staging/drivers/hid/usbhid/usbmouse.ko
> make: Leaving directory '/home/rohit/LINUX/kernels/staging'
> "


-- 
~Randy




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux