Skip to content

Commit 26d4e4c

Browse files
committed
media: platform: intel: Add AR0820 sensor support to IPU ACPI device table
Register the AR0820 sensor in the supported_devices array when CONFIG_VIDEO_AR0820 is enabled. Add the AR0820 ACPI HID to the ipu_acpi_match table for proper device detection. Enables platform integration and detection of the SENSING AR0820 sensor via ACPI. Signed-off-by: Tay, Boon Wooi <boonx.wooi.tay@intel.com> Signed-off-by: Izzul Irfan <muhammadx.izzul.irfan.bin.che.iswanizam@intel.com>
1 parent a6c7373 commit 26d4e4c

4 files changed

Lines changed: 100 additions & 0 deletions

File tree

Makefile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ export CONFIG_VIDEO_AR0234 = m
4646
# kernel version >= 6.12.15
4747
export CONFIG_VIDEO_ISX031=m
4848
export CONFIG_VIDEO_MAX9X=m
49+
export CONFIG_VIDEO_AR0820=m
4950

5051
obj-y += drivers/media/i2c/
5152

@@ -75,6 +76,9 @@ subdir-ccflags-$(CONFIG_INTEL_SKL_INT3472) += \
7576
subdir-ccflags-$(CONFIG_VIDEO_ISX031) += \
7677
-DCONFIG_VIDEO_ISX031
7778

79+
subdir-ccflags-$(CONFIG_VIDEO_AR0820) += \
80+
-DCONFIG_VIDEO_AR0820
81+
7882
subdir-ccflags-y += $(subdir-ccflags-m)
7983

8084
all:

drivers/media/platform/intel/ipu-acpi.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,10 @@ static const struct ipu_acpi_devices supported_devices[] = {
6363
{ "INTC031M", ISX031_NAME, get_sensor_pdata, NULL, 0, TYPE_SERDES, "max9x",
6464
ISX031_I2C_ADDRESS, 1600 }, // D3 ISX031 HID
6565
#endif
66+
#if IS_ENABLED(CONFIG_VIDEO_AR0820)
67+
{ "AR0820", AR0820_NAME, get_sensor_pdata, NULL, 0, TYPE_SERDES, "max9x",
68+
AR0820_I2C_ADDRESS, 1600 }, // SENSING AR0820 HID
69+
#endif
6670
#endif
6771
};
6872

@@ -88,6 +92,9 @@ static const struct acpi_device_id ipu_acpi_match[] = {
8892
#if IS_ENABLED(CONFIG_VIDEO_ISX031)
8993
{ "INTC1031", 0 }, // ISX031 HID
9094
{ "INTC031M", 0 }, // D3CMC68N-115-084 ISX031 HID
95+
#endif
96+
#if IS_ENABLED(CONFIG_VIDEO_AR0820)
97+
{ "AR0820", 0 }, // AR0820 HID
9198
#endif
9299
{},
93100
};

include/media/serdes-pdata.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@
88
#include <media/i2c/isx031.h>
99
#endif
1010

11+
#if IS_ENABLED(CONFIG_VIDEO_AR0820)
12+
#include <media/i2c/ar0820.h>
13+
#endif
14+
1115
struct serdes_subdev_info {
1216
struct i2c_board_info board_info;
1317
int i2c_adapter_id;
Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
From 6784932e57d8a29992378428fc269cdc9a7feb82 Mon Sep 17 00:00:00 2001
2+
From: Izzul Irfan <muhammadx.izzul.irfan.bin.che.iswanizam@intel.com>
3+
Date: Mon, 29 Dec 2025 11:39:27 +0800
4+
Subject: [PATCH] media: platform: intel: Add AR0820 sensor support to IPU ACPI
5+
device table
6+
7+
Register the AR0820 sensor in the supported_devices array
8+
when CONFIG_VIDEO_AR0820 is enabled.
9+
Add the AR0820 ACPI HID to the ipu_acpi_match table
10+
for proper device detection.
11+
Enables platform integration and detection of
12+
the SENSING AR0820 sensor via ACPI.
13+
14+
Signed-off-by: Tay, Boon Wooi <boonx.wooi.tay@intel.com>
15+
---
16+
Makefile | 4 ++++
17+
drivers/media/platform/intel/ipu-acpi.c | 7 +++++++
18+
include/media/serdes-pdata.h | 4 ++++
19+
3 files changed, 15 insertions(+)
20+
21+
diff --git a/Makefile b/Makefile
22+
index ac0466c26..d2cac2549 100644
23+
--- a/Makefile
24+
+++ b/Makefile
25+
@@ -46,6 +46,7 @@ export CONFIG_VIDEO_AR0234 = m
26+
# kernel version >= 6.12.15
27+
export CONFIG_VIDEO_ISX031=m
28+
export CONFIG_VIDEO_MAX9X=m
29+
+export CONFIG_VIDEO_AR0820=m
30+
31+
obj-y += drivers/media/i2c/
32+
33+
@@ -75,6 +76,9 @@ subdir-ccflags-$(CONFIG_INTEL_SKL_INT3472) += \
34+
subdir-ccflags-$(CONFIG_VIDEO_ISX031) += \
35+
-DCONFIG_VIDEO_ISX031
36+
37+
+subdir-ccflags-$(CONFIG_VIDEO_AR0820) += \
38+
+ -DCONFIG_VIDEO_AR0820
39+
+
40+
subdir-ccflags-y += $(subdir-ccflags-m)
41+
42+
all:
43+
diff --git a/drivers/media/platform/intel/ipu-acpi.c b/drivers/media/platform/intel/ipu-acpi.c
44+
index 8b94dc307..3b271e9cc 100644
45+
--- a/drivers/media/platform/intel/ipu-acpi.c
46+
+++ b/drivers/media/platform/intel/ipu-acpi.c
47+
@@ -63,6 +63,10 @@ static const struct ipu_acpi_devices supported_devices[] = {
48+
{ "INTC031M", ISX031_NAME, get_sensor_pdata, NULL, 0, TYPE_SERDES, "max9x",
49+
ISX031_I2C_ADDRESS, 1600 }, // D3 ISX031 HID
50+
#endif
51+
+#if IS_ENABLED(CONFIG_VIDEO_AR0820)
52+
+ { "AR0820", AR0820_NAME, get_sensor_pdata, NULL, 0, TYPE_SERDES, "max9x",
53+
+ AR0820_I2C_ADDRESS, 1600 }, // SENSING AR0820 HID
54+
+#endif
55+
#endif
56+
};
57+
58+
@@ -88,6 +92,9 @@ static const struct acpi_device_id ipu_acpi_match[] = {
59+
#if IS_ENABLED(CONFIG_VIDEO_ISX031)
60+
{ "INTC1031", 0 }, // ISX031 HID
61+
{ "INTC031M", 0 }, // D3CMC68N-115-084 ISX031 HID
62+
+#endif
63+
+#if IS_ENABLED(CONFIG_VIDEO_AR0820)
64+
+ { "AR0820", 0 }, // AR0820 HID
65+
#endif
66+
{},
67+
};
68+
diff --git a/include/media/serdes-pdata.h b/include/media/serdes-pdata.h
69+
index 829f73014..63acfbe21 100644
70+
--- a/include/media/serdes-pdata.h
71+
+++ b/include/media/serdes-pdata.h
72+
@@ -8,6 +8,10 @@
73+
#include <media/i2c/isx031.h>
74+
#endif
75+
76+
+#if IS_ENABLED(CONFIG_VIDEO_AR0820)
77+
+#include <media/i2c/ar0820.h>
78+
+#endif
79+
+
80+
struct serdes_subdev_info {
81+
struct i2c_board_info board_info;
82+
int i2c_adapter_id;
83+
--
84+
2.43.0
85+

0 commit comments

Comments
 (0)