-
Notifications
You must be signed in to change notification settings - Fork 55
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
IPU6 driver not working on Jasper Lake tablets #160
Comments
Thanks @jwrdegoede . IPU6 on JSL (ipu6se) is a very different version that many processing functions were striped, so it needs different graph descriptor and graph configs. I think GC5035 should use a simillar graph configs to OV13858. Branch jsl_penguin_peak was for a cancelled project and I remembered it only supports kernel v5.10 and we have not maintained it for a long time. |
Ok, that is what I have done after just copying over the GC5035 graph config for ipu6ep failed.
Right, but the regular branch of ipu6-camera-bins does not have jsl binaries. I see that there is a chrome_jsl_branch now, I guess I should use that? |
But there is no matching ipu6-camera-hal branch ? Should I just use the |
Tag Penguin_peak_20220805 in all 4 repos should make JSL devices (with ov13858 sensor) work. We only have graph settings and tuning file for IPU6EP. Usually we need to generate a set of graph settings and tuning file for IPU6SE + gc5035 by a tuning tool. But I can't access to that tool, so we have to change graph_settings xml manually. Seems IPU6SE can only use |
Right, so that tag matches the latest commits in the jsl_penguin_peak branches, so that is what I have already been using. |
stream start should be called after qbuf but the log shows that isys firmware didn't got any buffer when received stream start. Maybe we can check the output of gstreamer/libcamhal? We can enable log by setting |
Hmm, I wonder if ipu6-drivers maybe used to delay the start-stream until buffers were queued in the kernel and if the older hal / ipi6-camera-bins from Penguin_peak_20220805 rely on this? As mentioned in the original description I'm using a newer kernel:
So I just tried the following:
Here are the syslog/journal log messages this has generated: From a quick peek CamHAL does seem to think that the buffers are queued before the streamon error:
|
As far as I know, when stream starts, IPU kernel driver will set config data -> send STREAM_OPEN -> queue buffer and send STREAM_START_AND_CAPTURE to FW. But seems it failed at sending STREAM_OPEN. Maybe the config data is wrong for ipu6se? I didn't try JSL devices for a long time so maybe there is a regression between jsl_penguin_peak branch and master. I can later attach a script to capture a raw image from IPU isys and we can check if there is something wrong without libcamhal. |
I can later attach a script to capture a raw image from IPU isys and we can check if there is something wrong without libcamhal.
If you can attach such a script that would be great.
|
By the way, @jwrdegoede could you attach a full |
The journal log from 2 comments up also contains all dmesg output.
(this fw comes from the jsl_penguin_peak branch of ipu6-camera-bins) |
I didn't find some expected outputs in that log so I was asking for a full one. So that means some log was not actually printed.
This is the latest ipu6se firmware. According to the log, the ipu6se firmware was not receiving expected configuration data. I will check what was wrong later. |
Any updates on this? |
Sorry. |
Any updates on this? |
I'm trying to get the IPU6 driver to work on a Jasper Lake Juno tablet:
https://junocomputers.com/us/product/juno-tablet/
Unfortunately the jsl_penguin_peak branches of the various IPU6 driver stack components have not been updated for quite a while.
After cherry-picking various fixes to build against newer kernels from ipu6-drivers/master into the jsl_penguin_peak, I have ended up with an ipu6-drivers jsl_penguin_peak branch which shows no differences from the last merged master commit: https://github.com/jwrdegoede/ipu6-drivers/commits/jsl_penguin_peak
So I believe that Jasper Lake should work with the latest ipu6-drivers/master branch and I have been trying to get the GC5035 sensor on the Juno tablet to work using the latest ipu6-drivers/master + 6.4.0 .
For ipu6-camera-bins and ipu6-camera-hal I did use the jsl_penguin_peak branches, which are out of sync with the main branches, please update these if possible.
At first I used the config/linux/ipu6ep/gcss/graph_settings_gc5035.xml file from intel/ipu6-camera-hal#49 but that causes a segfault inside ipu6-camera-hal, so then I used config/ubuntu/jsl/gcss/graph_settings_OV13858_YHCE_JSLP.xml as a base instead and adjusted that for the gc5035
graph_settings_gc5035.xml.txt.
With this using gst-launch icamerasrc does try to start streaming, but then things fail with the following message in dmesg when using dyndbg:
I'm happy to try any patches or hints you may have to fix this.
Cc: @junocomp @liang1wang
The text was updated successfully, but these errors were encountered: