Xiashangning / BigSurface

A proposition for a fully intergrated kext for all Surface Pro hardwares
GNU General Public License v3.0
309 stars 23 forks source link

Workout on Surface Touch Screen (not an issue) #28

Closed plsh2me closed 2 years ago

plsh2me commented 2 years ago

@Xiashangning Hi dear, First I am thankful to you for your dedication and giving time out of your academic busyness. Anyway I am curious to know - when you are planning to work on touchscreen driver?

Thank you

Xiashangning commented 2 years ago

Touch Screen done :)

plsh2me commented 2 years ago

I will test this on my devices and report back to you. Thank you

plsh2me commented 2 years ago

@Xiashangning Hi, it is my mistake I tried to install the kext with the ssdt. The system not even boots (restarts after selecting os). Now I found the kext has other requirements. To be sure - I have to install first IPTSDaemon and the ssdt, then the kext to get the touch screen working. Am I right?

Xiashangning commented 2 years ago

No, only the SSDT is needed when installing, if you run into anything wrong, that might suggest an incompatibility. Please attach your screenshot of Hackintool's PCI tab, your touchscreen device location might be different

Xiashangning commented 2 years ago

Nope, I checked your ioreg, it should work, have you successfully enabled this SSDT? Otherwise there is no way it still panics

plsh2me commented 2 years ago

Can you please upload your working efi folder here. As my system is not even booting with this kext. I also have the same problem in my sp7. May be I have the problem with my config.plist.

Xiashangning commented 2 years ago

I already have a repo called SurfacePro7Opencore You can check that

plsh2me commented 2 years ago

OK, With your EFI folder system is running & kext get installed. Now IPTS Daemon is not installing.

Last login: Wed Jun 22 09:35:23 on ttys000 /Users/mdpalashmiah/Downloads/IPTSDaemon-main/IPTSDaemon/install_daemon.sh ; exit; mdpalashmiah@MacBook-Air ~ % /Users/mdpalashmiah/Downloads/IPTSDaemon-main/IPTSDaemon/install_daemon.sh ; exit; Password: cp: IPTSDaemon: No such file or directory chmod: /usr/local/bin/IPTSDaemon: No such file or directory chown: /usr/local/bin/IPTSDaemon: No such file or directory cp: ipts_config: No such file or directory cp: com.xavier.IPTSDaemon.plist: No such file or directory chmod: /Library/LaunchAgents/com.xavier.IPTSDaemon.plist: No such file or directory chown: /Library/LaunchAgents/com.xavier.IPTSDaemon.plist: No such file or directory Load failed: 5: Input/output error Try running launchctl bootstrap as root for richer errors.

Saving session... ...copying shared history... ...saving history...truncating history files... ...completed.

Xiashangning commented 2 years ago

you need to go into this folder to run the script

plsh2me commented 2 years ago

I downloaded the folder. Then opened the the folder IPTSDaemon and drag the file install_daemon to the terminal and entered password. And the output i got in terminal sent to you. If I am doing wrong, please tell me in details.

Xiashangning commented 2 years ago

you have to ENTER this folder in terminal cd path_to_folder ./install_daemon.sh

plsh2me commented 2 years ago

What I am doing wrong now -

Last login: Wed Jun 22 11:01:33 on ttys000 mdpalashmiah@MacBook-Air ~ % cd ~/Desktop/IPTSDaemon-main/IPTSDaemon mdpalashmiah@MacBook-Air IPTSDaemon % ./install_daemon.sh Password: cp: IPTSDaemon: No such file or directory chmod: /usr/local/bin/IPTSDaemon: No such file or directory chown: /usr/local/bin/IPTSDaemon: No such file or directory cp: ipts_config: No such file or directory mdpalashmiah@MacBook-Air IPTSDaemon %

Update: I found plist file is copied to -/Library/LaunchAgents/com.xavier.IPTSDaemon.plist.

Xiashangning commented 2 years ago

WTF? You haven't downloaded the pre-release zip file, have you? Are you now running this script inside the project folder? That is not how we install software... If I am correct, please download the pre-release zip file and install it from there

plsh2me commented 2 years ago

Sorry, You are right I was trying to install it from project folder not from prerelease folder.

Now downloaded the prerelease zip file, run it. Hope now it installed correctly. Last login: Wed Jun 22 12:27:11 on ttys000 mdpalashmiah@MacBook-Air ~ % cd ~/Desktop/IPTSDaemon mdpalashmiah@MacBook-Air IPTSDaemon % ./install_daemon.sh Password: mdpalashmiah@MacBook-Air IPTSDaemon %

Am I correct now?

Update: Ok, I figured it out. All installed, touch screen working now on my sp7. I will try it later on my Surface laptop 3 and let you know if it working. Please let me know if you need any output from it.

plsh2me commented 2 years ago

OK, I confirm you that the kext works on Surface Laptop 3. Here is the ioreg of Surface Laptop 3 - ioreg-SL3.zip

And ioreg of Surface Pro 7 - ioreg-SP7.zip

Any information you need, please let me know.

Thank you

Xiashangning commented 2 years ago

Good, closed as solved

Xiashangning commented 2 years ago

@plsh2me PS: can you test this build for me on laptop3? If everything works fine, then you can switch back to released one I have changed something so I want to ensure the compatibility for laptop3 BigSurface.kext.zip

plsh2me commented 2 years ago

Yes, It works.Last login: Thu Jun 23 09:27:28 on console mdpalashmiah@Sahils-MBP ~ % sudo dmesg | grep -E "SurfaceSerial|SurfaceLaptop|SurfaceManagement|IntelPrecise" Password: [ 0.428856]: SurfaceSerialHubDriver::Found valid UART bus and GPIO interrupt! [ 0.428894]: SurfaceSerialHubDriver::Got GPIO Controller! VoodooGPIOIceLakeLP [ 0.468981]: SurfaceSerialHubDriver::Got UART Controller! VoodooUARTController [ 0.469462]: SurfaceManagementEngineDriver::Exit d0i3 mode [ 0.469743]: SurfaceManagementEngineDriver::We need to start the device [ 0.469770]: SurfaceManagementEngineDriver::Hardware is ready [ 0.469785]: SurfaceManagementEngineDriver::Link is established [ 0.470000]: SurfaceManagementEngineDriver::Start response message received [ 0.470124]: SurfaceManagementEngineDriver::Link layer initialization succeeded [ 0.470289]: SurfaceManagementEngineDriver::Capabilities response message received [ 0.470654]: SurfaceManagementEngineDriver::Enumeration response message received [ 0.471101]: SurfaceManagementEngineDriver::Property response message received [ 0.471214]: SurfaceManagementEngineDriver::Starting client... [ 0.479172]: IntelPreciseTouchStylusDriver::IPTS Device is ready [ 0.570059]: SurfaceSerialHubDriver::Surface Serial Hub found! [ 0.572637]: SurfaceSerialHubDriver::SAM version 14.502.139 [ 0.577426]: SurfaceSerialHubDriver::Surface Battery nub published! [ 0.582519]: SurfaceSerialHubDriver::Surface HID nub published! [ 0.687543]: SurfaceSerialHubDriver::Warning, given buffer_len(60) and received data_len(2) mismatched! [ 57.779841]: SurfaceSerialHubDriver::data length error! [ 57.779852]: SurfaceSerialHubDriver::msg dump: length: 46 [ 57.779856]: SurfaceSerialHubDriver::aa 55 00 26 00 6a 4a 7d 80 15 00 02 03 15 00 00 [ 57.779863]: SurfaceSerialHubDriver::04 03 9d 06 72 01 00 00 00 00 00 00 00 00 00 00 [ 57.779869]: SurfaceSerialHubDriver::00 00 00 00 00 00 00 00 00 00 f0 1e 01 00 00 00 [ 57.787066]: SurfaceSerialHubDriver::Message received incomplete! Protential data loss! [ 57.787079]: SurfaceSerialHubDriver::msg dump: length: 2 [ 57.787083]: SurfaceSerialHubDriver::aa 55 00 00 00 00 00 00 00 00 00 00 00 00 00 00 mdpalashmiah@Sahils-MBP ~ %

plsh2me commented 2 years ago

I am facing random reboot after installing the new v6 kext on my SL3. After reboot I found every time the same the same report. panic report.zip

Xiashangning commented 2 years ago

I can see nothing from your log, you need to set keepsyms=1 in bootargs to reveal the exact panic location for me to debug.