Skip to content

SM8750 konkr pocket fit elite support - #3074

Merged
spycat88 merged 16 commits into
ROCKNIX:nextfrom
slaide:sm8750-konkr-pfe-support
Jul 30, 2026
Merged

SM8750 konkr pocket fit elite support#3074
spycat88 merged 16 commits into
ROCKNIX:nextfrom
slaide:sm8750-konkr-pfe-support

Conversation

@slaide

@slaide slaide commented Jul 28, 2026

Copy link
Copy Markdown

Summary

  • What is the goal of this PR? (e.g. Bump up an emulator version, implement a new feature. )

add support for the konkr pocket fit elite device.

Testing

  • How was this tested? (e.g. Built and tested on specific devices, manual testing steps, URLs for CI/CD build artifacts.)

built full system image, then installed on my own device. it works fine off of the microsd card, and also off the internal ufs storage (i have done both, this is not hypothetical)

  • Test results: (e.g. Screenshots, logs, performance metrics if applicable.)

i can take a picture if you want? looks identical to the konkr pocket fit non-elite so not sure what this would show exactly. not sure how performance would apply, it runs fine. emulated games work (i have tested gbc, gba, nds) and steam also works (steam itself runs fine, i have tested a bunch of games and they perform alright. i have a small performance table if you want to see that).

Additional Context

  • Add any other information that might be helpful for the reviewer (e.g., performance implications, potential risks, specific areas to focus on.)

this pr adds support for:

  • the device at all
  • display panel (60-144hz supported) + backlight
  • touchscreen
  • gamepad (behaves like an xbox 360 controller. i have another patch to make the gyro work so i could patch it to behave like a dualsense controller like the odin 3, but then steam will show the wrong glyphs which i find really confusing..)
  • headphone jack (audio out only, have not implemented/tested microphone)
  • speakers
  • drivers to control the joystick leds and remap the auxiliary buttons, e.g. back buttons, extra front buttons, extra shoulder buttons

AI Usage

While ROCKNIX doesn't have restrictions on AI tools in contributing, please be transparent about their usage as it
helps set the right context for reviewers.

Did you use AI tools to help write this code? YES | PARTIALLY | NO

yes, i used claude a lot (e.g. claude-opus-4-6)

@sunshineinabox

Copy link
Copy Markdown
Contributor

Should probalby move the firmware to https://github.com/ROCKNIX/extra-firmware

@spycat88

Copy link
Copy Markdown
Contributor

Should probalby move the firmware to https://github.com/ROCKNIX/extra-firmware

100% this, if it absolutely needs device specific firmware and can't re-use any of the existing ones

Great first PR, please look at the check log and fix some of your commits.

@slaide

slaide commented Jul 28, 2026

Copy link
Copy Markdown
Author

firmware pr done. will amend this when that is merged.

modules stop
quirks pre

# KONKR Pocket FIT Elite: hold a power-key inhibitor across the sleep. On

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this file should not hold device specific code
add a quirk in /projects/ROCKNIX/packages/hardware/quirks/platforms/SM8750/sleep.d

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i don't understand what's happening here

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this looks like a Steam only fix
fixing Steam longpress power should be addressed differently
drop this

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this for Odin3, and might break it

if you need to diverge from it, either do in the konkr elite dts, but better I wouldn't inherit from ayn stuff for an ayaneo device

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

instead of repatching your own file
just creates a plain .dts file in projects/ROCKNIX/devices/SM8750/linux/dts/qcom as Odin3 should have been

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is probably a global concern, and should be addressed for all devices
should be moved in systemd package?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

drop this for now

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

that should got to the UCM profile

# UCM. Pairs with the kernel USBSS 3-pole routing (wcd939x-usbss.c) and the
# MBHC bus-keepalive quirk (040-headphone-mbhc-wake).
#
# A proper fix would ship a KONKR-specific UCM in SYSTEM instead of

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this exactly

new file mode 100644
index 0000000..f32d52dcf
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/sm8750-konkr-pf-elite.dts

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

make this it's own file in linux/dts/qcom

@slaide
slaide force-pushed the sm8750-konkr-pfe-support branch from f5f86e3 to acebd4d Compare July 29, 2026 21:57
@slaide

slaide commented Jul 29, 2026

Copy link
Copy Markdown
Author

i can do a point-by-point rebuttal if you want, but tl;dr: addressed.

the firmware has been moved, i made a ton of small-ish changes, removed some patches (the sleep/standby stuff, wasn't needed anymore), and changed the controller from xbox 360 to ds5-edge (the two extra shoulder buttons on the device act as edge back buttons, gyro does not work with these patches, will be revisited in the future).

i have rebuilt and tested this series, and everything seems to behave fine, including steam recognizing this controller.

@slaide

slaide commented Jul 29, 2026

Copy link
Copy Markdown
Author

ah, damn, missed your feedback on specifically ds5 instead of ds5-edge.. should i change it now or is it fine?

@loki666 loki666 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I one more small change and we are good

@spycat88 spycat88 added bugfix and removed bugfix labels Jul 30, 2026
@spycat88

Copy link
Copy Markdown
Contributor

Can you rebase and fp please

Patrick Hennig added 16 commits July 30, 2026 23:51
Pulls in SM8750/qcom/sm8750/konkr/pfe/ (ADSP/CDSP, battmgr, aw88261_acf)
and SM8750-KONKR-tplg.bin, required by the KONKR PFE board support that
follows. Also picks up the SM8250 Mangmi Pocket Max firmware added
upstream in the same range; no existing file changes.
Board DTS ships as a plain file under devices/SM8750/linux/dts/qcom,
which the linux package rsyncs into the kernel tree; the config.xml
entry drives the dtb build target.
Both devices' pre_make_target copies GPU firmware out of the
kernel-firmware build dir, but neither declared it as an unpack
dependency, so a parallel build could re-unpack kernel-firmware while
that copy was in flight.
SPI MCU gamepad: buttons/axes/triggers + FF rumble, threaded IRQ with a
poll watchdog fallback, and suspend/resume PM ops.
Two AW88261 amps on QUAT MI2S with the vendor ACF calibration blob, and
a KONKR ALSA UCM profile instead of reusing the Odin3 one -- that
profile defines "Headphones" twice, the second time on the
MI2S/speaker PCM, so the jack would play out of the speakers.
Integrated 3.5mm jack via the wcd939x USBSS analog switch,
stale-MBHC-jack clear on mechanical removal, and HPH PCM (HiFi) playback
mode.

HPH PCM mode is driven from the UCM Headphones sequence, and
qcom,pcm-ports-mask for the HIFI_PCM master port sits on the board's own
&swr1 node rather than the shared AYN dtsi.
- Kernel serdev driver decodes the MCU UART framing for the 5 system
  buttons and drives the stick RGB; merged with the SPI gamepad into one
  virtual pad via InputPlumber.
- LED-blank and TX-inhibit across suspend via a PM notifier (the geni
  UART TX wedges if written during the device-suspend window).
- Board DTS gains the geni SE5 UART node and its serdev child.
- Composite target is ds5-edge, matching the Odin 3 on this
  platform. The two extra shoulder buttons become the Edge's
  back-lever buttons; the remaining front buttons go to keyboard
  F1..F3.
pmk8550's RTC counter is write-protected, so rtc-pm8xxx persists a
settable time via an offset nvmem cell. Add rtc_offset@bc in
pmk8550_sdam_2 and point pmk8550_rtc at it — RTC_SET_TIME no longer
returns -ENODEV and wall-clock survives cold boots.

Wired from the board DTS rather than the shared pmk8550.dtsi, so the
other SM8750 board that includes it is untouched.
The SoC's GPU zones are typed gpuss0..gpuss7 (no dash), so the gpuss-*
pattern matched nothing and the fan curve tracked CPU temperature only.
Patch 0509: pmic_glink_altmode treats a NULL typec_mux/typec_switch as
success, so when the connector's mode-switch supplier (wcd_usbss on
I2C) has not registered yet the driver runs permanently without
SBU/DP-AUX routing and USB-C DP output never comes up. Return
-EPROBE_DEFER instead.
@slaide
slaide force-pushed the sm8750-konkr-pfe-support branch from acebd4d to 51112fe Compare July 30, 2026 22:11
@slaide

slaide commented Jul 30, 2026

Copy link
Copy Markdown
Author

done and done. rebuilt and re-tested, retroarch and steam still work fine without that file and the rebase didnt introduce any issues.

@spycat88
spycat88 added this pull request to the merge queue Jul 30, 2026
Merged via the queue into ROCKNIX:next with commit 3d2c6e1 Jul 30, 2026
5 of 6 checks passed
@loki666

loki666 commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

thanks

@a454500

a454500 commented Jul 31, 2026

Copy link
Copy Markdown

good news to support konkr pocket fit elite
fully appreciate

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants