From: Seifelden Abdelmonem <saif.elden.hatim@gmail.com>
To: "Mario Limonciello" <superm1@kernel.org>,
"Alex Deucher" <alexander.deucher@amd.com>,
"Hans de Goede" <hansg@kernel.org>,
"Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
Cc: "Bin Du" <bin.du@amd.com>,
"Nirujogi Pratap" <pratap.nirujogi@amd.com>,
"Benjamin Chan" <benjamin.chan@amd.com>,
"King Li" <King.Li@amd.com>,
"Caspar Adriani" <caspar.adriani@proton.me>,
"Christian König" <christian.koenig@amd.com>,
"Sakari Ailus" <sakari.ailus@linux.intel.com>,
"Arec Kao" <arec.kao@intel.com>,
"Mauro Carvalho Chehab" <mchehab@kernel.org>,
"David Airlie" <airlied@gmail.com>,
"Simona Vetter" <simona@ffwll.ch>,
amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org,
platform-driver-x86@vger.kernel.org, linux-media@vger.kernel.org,
linux-kernel@vger.kernel.org,
"Seifelden Abdelmonem" <saif.elden.hatim@gmail.com>
Subject: [RFC PATCH 3/3] drm/amdgpu: add the OMNI13B1 (OV13B10) ISP sensor
Date: Tue, 3 Nov 2026 18:53:13 +0300 [thread overview]
Message-ID: <20261103155313.114347-4-saif.elden.hatim@gmail.com> (raw)
In-Reply-To: <20261103155313.114347-1-saif.elden.hatim@gmail.com>
amdgpu creates the ISP 4.1.1 devices only when it finds a sensor from
isp_sensor_ids, which lists only OMNI5C10. The ASUS ROG Flow Z13
(GZ302EA) has an OmniVision OV13B10 with _HID "OMNI13B1" on the same
ISP, so its camera is never set up.
Add OMNI13B1 and register its GPIO lookups:
- enable_isp on AMDI0030:00 pin 85, as for OMNI5C10. The ISP4 capture
driver requests this GPIO and fails to probe without it. On the
GZ302 no ACPI device claims the pin, and the ISP also boots with it
left undriven, so its function on this board is not confirmed.
- the sensor reset line on amdisp-pinctrl GPIO 0, active low, under the
"reset" name the ov13b10 driver requests. This is the same ISP GPIO
as the OV05C10 enable line.
Like the OMNI5C10 tables, they are registered once and stay registered.
The ISP setup uses the software node that amd_isp4 attaches to the
ACPI device, so this needs the amd_isp4 board configuration for
OMNI13B1 to be in place.
Signed-off-by: Seifelden Abdelmonem <saif.elden.hatim@gmail.com>
---
drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c | 1 +
drivers/gpu/drm/amd/amdgpu/isp_v4_1_1.c | 13 ++++++++++++-
2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c
index 63088c072..412d3992c 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c
@@ -1726,6 +1726,7 @@ bool amdgpu_acpi_is_s0ix_active(struct amdgpu_device *adev)
#if IS_ENABLED(CONFIG_DRM_AMD_ISP)
static const struct acpi_device_id isp_sensor_ids[] = {
{ "OMNI5C10" },
+ { "OMNI13B1" },
{ }
};
diff --git a/drivers/gpu/drm/amd/amdgpu/isp_v4_1_1.c b/drivers/gpu/drm/amd/amdgpu/isp_v4_1_1.c
index 363266f3e..7d6072e27 100644
--- a/drivers/gpu/drm/amd/amdgpu/isp_v4_1_1.c
+++ b/drivers/gpu/drm/amd/amdgpu/isp_v4_1_1.c
@@ -65,6 +65,14 @@ static struct gpiod_lookup_table isp_sensor_gpio_table = {
},
};
+static struct gpiod_lookup_table isp_ov13b10_gpio_table = {
+ .dev_id = "i2c-ov13b10",
+ .table = {
+ GPIO_LOOKUP("amdisp-pinctrl", 0, "reset", GPIO_ACTIVE_LOW),
+ { }
+ },
+};
+
static int isp_poweroff(struct generic_pm_domain *genpd)
{
struct amdgpu_isp *isp = container_of(genpd, struct amdgpu_isp, ispgpd);
@@ -240,10 +248,13 @@ static int isp_v4_1_1_hw_init(struct amdgpu_isp *isp)
return 0;
}
- /* add GPIO resources required for OMNI5C10 sensor */
+ /* add GPIO resources required for the sensor */
if (!strcmp("OMNI5C10", acpi_device_hid(acpi_dev))) {
gpiod_add_lookup_table(&isp_gpio_table);
gpiod_add_lookup_table(&isp_sensor_gpio_table);
+ } else if (!strcmp("OMNI13B1", acpi_device_hid(acpi_dev))) {
+ gpiod_add_lookup_table(&isp_gpio_table);
+ gpiod_add_lookup_table(&isp_ov13b10_gpio_table);
}
isp_base = adev->rmmio_base;
--
2.56.0
prev parent reply other threads:[~2026-11-03 15:53 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-03 15:53 [RFC PATCH 0/3] GZ302 rear camera (OMNI13B1, OV13B10) board data Seifelden Abdelmonem
2026-11-03 15:53 ` [RFC PATCH 1/3] media: i2c: ov13b10: add an I2C device ID table Seifelden Abdelmonem
2026-11-03 15:53 ` [RFC PATCH 2/3] platform/x86: amd_isp4: add the OV13B10 (OMNI13B1) board configuration Seifelden Abdelmonem
2026-11-03 15:53 ` Seifelden Abdelmonem [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20261103155313.114347-4-saif.elden.hatim@gmail.com \
--to=saif.elden.hatim@gmail.com \
--cc=King.Li@amd.com \
--cc=airlied@gmail.com \
--cc=alexander.deucher@amd.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=arec.kao@intel.com \
--cc=benjamin.chan@amd.com \
--cc=bin.du@amd.com \
--cc=caspar.adriani@proton.me \
--cc=christian.koenig@amd.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=hansg@kernel.org \
--cc=ilpo.jarvinen@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=platform-driver-x86@vger.kernel.org \
--cc=pratap.nirujogi@amd.com \
--cc=sakari.ailus@linux.intel.com \
--cc=simona@ffwll.ch \
--cc=superm1@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®