Skip to content

Conversation

ruineka
Copy link

@ruineka ruineka commented Dec 6, 2021

This will get the gamepad to work out of the box for people who use the OneXPlayer handheld. Tested extensively and everything works as expected including rumble.

@ruineka
Copy link
Author

ruineka commented Dec 6, 2021

Commit 42634f2 was created by accident and I don't see a way to remove this from my end. The pull request should only be
f788391 which only has one change done to the xpad.c flie adding device IDs.

@jackpot51
Copy link
Member

You will need to submit changes like this upstream.

@jackpot51 jackpot51 closed this Dec 6, 2021
@ruineka
Copy link
Author

ruineka commented Dec 6, 2021

You will need to submit changes like this upstream.

Okay thanks, I'll look into this.

@jackpot51
Copy link
Member

@ruineka
Copy link
Author

ruineka commented Dec 6, 2021

This may help: https://www.kernel.org/doc/html/v5.15/process/submitting-patches.html

Thanks! I believe I did everything correctly and submitted a signed-off patch email upstream under linux-input.

jackpot51 pushed a commit that referenced this pull request Jun 3, 2022
commit e333eed upstream.

Since commit f1131b9 ("net: phy: micrel: use
kszphy_suspend()/kszphy_resume for irq aware devices") the following
NULL pointer dereference is observed on a board with KSZ8061:

 # udhcpc -i eth0
udhcpc: started, v1.35.0
8<--- cut here ---
Unable to handle kernel NULL pointer dereference at virtual address 00000008
pgd = f73cef4e
[00000008] *pgd=00000000
Internal error: Oops: 5 [#1] SMP ARM
Modules linked in:
CPU: 0 PID: 196 Comm: ifconfig Not tainted 5.15.37-dirty #94
Hardware name: Freescale i.MX6 SoloX (Device Tree)
PC is at kszphy_config_reset+0x10/0x114
LR is at kszphy_resume+0x24/0x64
...

The KSZ8061 phy_driver structure does not have the .probe/..driver_data
fields, which means that priv is not allocated.

This causes the NULL pointer dereference inside kszphy_config_reset().

Fix the problem by using the generic suspend/resume functions as before.

Another alternative would be to provide the .probe and .driver_data
information into the structure, but to be on the safe side, let's
just restore Ethernet functionality by using the generic suspend/resume.

Cc: stable@vger.kernel.org
Fixes: f1131b9 ("net: phy: micrel: use kszphy_suspend()/kszphy_resume for irq aware devices")
Signed-off-by: Fabio Estevam <festevam@denx.de>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://lore.kernel.org/r/20220504143104.1286960-1-festevam@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants