-
Notifications
You must be signed in to change notification settings - Fork 63
Add ISX031 gmsl support for Sensing sensor v6.12.34 Ubuntu 24.04 on ARL #390
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
Conversation
ijulipan
commented
Oct 13, 2025
- Added new FSIN GPIO to enable frame sync
- Modified start/stop streaming with toggable FSIN GPIO
- Added new FSIN GPIO to enable frame sync - Modified start/stop streaming with toggable FSIN GPIO
| isx031->reset_gpio = devm_gpiod_get_optional(&client->dev, "reset", | ||
| GPIOD_OUT_LOW); | ||
|
|
||
| isx031->fsin_gpio = devm_gpiod_get_optional(&client->dev, "fsin", | ||
| GPIOD_OUT_LOW); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In isx031_resume, maybe also need set fsin_gpio.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we tested this driver without adding in isx031_resume it was able to stream fine during our s3 and s4 PM stress test.
hao-yao
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please rebase your commit onto the latest iotg_ipu6 branch and re-commit your changes, not back and forth.
drivers/media/i2c/isx031.c
Outdated
| /* Drive FSIN GPIO high to enable frame sync */ | ||
| if (isx031->fsin_gpio){ | ||
| gpiod_set_value_cansleep(isx031->fsin_gpio, 0); | ||
| usleep_range(300000, 500000); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do we need such a long time? And please use msleep when need >20ms sleeping.
| isx031->reset_gpio = devm_gpiod_get_optional(&client->dev, "reset", | ||
| GPIOD_OUT_HIGH); | ||
| isx031->fsin_gpio = devm_gpiod_get_optional(&client->dev, "fsin", | ||
| GPIOD_OUT_LOW); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The frame_sync pin is low level effective?