From: André Apitzsch
In some configurations the touch controller can support touch keys.
Document the linux,keycodes property that enables those keys and
specifies the keycodes that should be used to report the key events.
Signed-off-by: André Apitzsch
---
.../devicetree/bindings/input/syna
From: André Apitzsch
RMI4 F1A implements capacitive keys. Add support for touch keys found in
some Synaptics touch controller configurations.
Signed-off-by: André Apitzsch
---
drivers/input/rmi4/Kconfig | 7 ++
drivers/input/rmi4/Makefile | 1 +
drivers/input/rmi4/rmi_bus.c
Add support for touch keys found in some Synaptics touch controller
configurations.
Signed-off-by: André Apitzsch
---
André Apitzsch (2):
dt-bindings: input: syna,rmi4: Document F1A function
Input: synaptics-rmi4 - add support for F1A
.../devicetree/bindings/input/syna,rmi4.yaml
From: André Apitzsch
The device can be accessed from struct imx214.
Reviewed-by: Laurent Pinchart
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/media/i2c/imx214.c b/drivers/media/i2c/imx214.c
From: André Apitzsch
Use the __free(fwnode_handle) hook to free the endpoint when the
function exits to simplify the error path.
Reviewed-by: Laurent Pinchart
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 9 +++--
1 file changed, 3 insertions(+), 6 deletions(-)
diff
From: André Apitzsch
Make it easier to drop the legacy support from the driver later.
Reviewed-by: Laurent Pinchart
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 8 +++-
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/drivers/media/i2c/imx214.c b/drivers
The following changes have be suggested by Laurent in [1]. But the
related series had already be applied. That's why they are addressed in
this series.
[1]
https://lore.kernel.org/linux-media/20250621181751.ga9...@pendragon.ideasonboard.com/
Signed-off-by: André Apitzsch
---
Changes
From: André Apitzsch
The parentheses are not needed to calculate bit_rate_mbps.
Reviewed-by: Laurent Pinchart
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/media/i2c/imx214.c b/drivers/media/i2c
From: André Apitzsch
It is more logical to call the PLL update in imx214_ctrls_init(). So
let's move it there.
Reviewed-by: Laurent Pinchart
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 219 +++--
1 file changed, 110 inser
The following changes have be suggested by Laurent in [1]. But the
related series had already be applied. That's why they are addressed in
this series.
[1]
https://lore.kernel.org/linux-media/20250621181751.ga9...@pendragon.ideasonboard.com/
Signed-off-by: André Apitzsch
---
André Apitzs
From: André Apitzsch
This makes it easier to drop this legacy support from the driver later.
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 8 +++-
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/drivers/media/i2c/imx214.c b/drivers/media/i2c/imx214.c
index
From: André Apitzsch
Use the __free(fwnode_handle) hook to free the endpoint when the
function exits to simplify the error path.
While at it, simplify return if parsing endpoint node failed.
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 9 +++--
1 file changed, 3
From: André Apitzsch
It is more logical to call the PLL update in imx214_ctrls_init(). So
let's move it there.
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 219 +++--
1 file changed, 110 insertions(+), 109 deletions(-)
diff --
From: André Apitzsch
The device can be accessed from struct imx214.
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/media/i2c/imx214.c b/drivers/media/i2c/imx214.c
index
From: André Apitzsch
The parentheses are not needed to calculate bit_rate_mbps.
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/media/i2c/imx214.c b/drivers/media/i2c/imx214.c
index
Am Montag, dem 16.06.2025 um 13:46 +0200 schrieb Konrad Dybcio:
> On 6/15/25 10:35 PM, André Apitzsch via B4 Relay wrote:
> > This dts adds support for BQ Aquaris X5 Plus (Longcheer L9360)
> > released
> > in 2016.
> >
> > Add a device tree with initial support fo
From: André Apitzsch
BQ Aquaris X5 Plus (Longcheer L9360) is a smartphone based on MSM8976
SoC.
Signed-off-by: André Apitzsch
---
Documentation/devicetree/bindings/arm/qcom.yaml | 5 +
1 file changed, 5 insertions(+)
diff --git a/Documentation/devicetree/bindings/arm/qcom.yaml
b
From: André Apitzsch
Downstream vendor code for reference:
https://git.codelinaro.org/clo/la/kernel/msm-3.10/-/blob/LA.BR.1.3.7.c26/arch/arm/boot/dts/qcom/msm8976-pinctrl.dtsi#L223-263
Signed-off-by: André Apitzsch
---
arch/arm64/boot/dts/qcom/msm8976.dtsi | 36
This dts adds support for BQ Aquaris X5 Plus (Longcheer L9360) released
in 2016.
Add a device tree with initial support for:
- GPIO keys
- NFC
- SDHCI
- Status LED
- Touchscreen
Signed-off-by: André Apitzsch
---
Changes in v2:
- Add Fixes and R-b tag
- Move sdc2 GPIO definitions into msm8976
From: André Apitzsch
This dts adds support for BQ Aquaris X5 Plus (Longcheer L9360) released
in 2016.
Add a device tree with initial support for:
- GPIO keys
- NFC
- SDHCI
- Status LED
- Touchscreen
Signed-off-by: André Apitzsch
---
arch/arm64/boot/dts/qcom/Makefile | 1
From: André Apitzsch
The blsp_dma controller is shared between the different subsystems,
which is why it is already initialized by the firmware. We should not
reinitialize it from Linux to avoid potential other users of the DMA
engine to misbehave.
In mainline this can be described using the
From: André Apitzsch
This dts adds support for BQ Aquaris X5 Plus (Longcheer L9360) released
in 2016.
Add a device tree with initial support for:
- GPIO keys
- NFC
- SDHCI
- Status LED
- Touchscreen
Signed-off-by: André Apitzsch
---
arch/arm64/boot/dts/qcom/Makefile | 1
This dts adds support for BQ Aquaris X5 Plus (Longcheer L9360) released
in 2016.
Add a device tree with initial support for:
- GPIO keys
- NFC
- SDHCI
- Status LED
- Touchscreen
Signed-off-by: André Apitzsch
---
André Apitzsch (3):
arm64: dts: qcom: msm8976: Make blsp_dma controlled
From: André Apitzsch
The blsp_dma controller is shared between the different subsystems,
which is why it is already initialized by the firmware. We should not
reinitialize it from Linux to avoid potential other users of the DMA
engine to misbehave.
In mainline this can be described using the
From: André Apitzsch
BQ Aquaris X5 Plus (Longcheer L9360) is a smartphone based on MSM8976
SoC.
Signed-off-by: André Apitzsch
---
Documentation/devicetree/bindings/arm/qcom.yaml | 5 +
1 file changed, 5 insertions(+)
diff --git a/Documentation/devicetree/bindings/arm/qcom.yaml
b
Hi Sakari,
Am Montag, dem 10.02.2025 um 09:53 + schrieb Sakari Ailus:
> Hi André,
>
> Thanks for the update.
>
> On Sun, Feb 09, 2025 at 10:51:57PM +0100, André Apitzsch via B4 Relay
> wrote:
> > From: André Apitzsch
> >
> > Document Dongwoon DW971
0:58:46AM +0200, Laurent Pinchart wrote:
> > > > On Tue, May 06, 2025 at 08:24:03AM +, Sakari Ailus wrote:
> > > > > On Mon, May 05, 2025 at 11:05:56PM +0200, André Apitzsch via
> > > > > B4 Relay wrote:
> > > > > > From: André Apitzsch
Hello Sakari,
Am Dienstag, dem 06.05.2025 um 08:24 + schrieb Sakari Ailus:
> Hi André,
>
> On Mon, May 05, 2025 at 11:05:56PM +0200, André Apitzsch via B4 Relay
> wrote:
> > From: André Apitzsch
> >
> > Instead rely on the rate set on the clock (using ass
Hi Sakari,
thanks for the feedback. One question below.
Am Dienstag, dem 06.05.2025 um 08:05 + schrieb Sakari Ailus:
> Hi André,
>
> A few more comments below.
>
> On Mon, May 05, 2025 at 11:05:55PM +0200, André Apitzsch via B4 Relay
> wrote:
> > From: André Apit
From: André Apitzsch
Instead rely on the rate set on the clock (using assigned-clock-rates
etc.)
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 6 --
1 file changed, 6 deletions(-)
diff --git a/drivers/media/i2c/imx214.c b/drivers/media/i2c/imx214.c
index
From: André Apitzsch
Reorder imx214_parse_fwnode call to reduce goto paths in upcoming
patches.
No functional change intended.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a
From: André Apitzsch
Move clock frequency related parameters out of the constant register
sequences, such that the hard coded external clock frequency can be
replaced by a variable in the upcoming patches.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c
From: André Apitzsch
Calculate PLL parameters based on clock frequency and link frequency.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/Kconfig | 1 +
drivers/media/i2c/imx214.c | 216 +
2 files changed, 178
://lore.kernel.org/linux-media/20250308-imx214_clk_freq-v1-0-467a4c083...@apitzsch.eu/
Signed-off-by: André Apitzsch
---
Changes in v2:
- Add A-b tags
- Switch to v4l2_ctrl_s_ctrl_int64() to acquire the control handler mutex
- Add error handling for v4l2_ctrl_s_ctrl_int64() and
imx214_pll_update()
- Replace
Hi Sakari,
Am Donnerstag, dem 24.04.2025 um 08:28 +0800 schrieb Ricardo Ribalda
Delgado:
> On Wed, Apr 16, 2025 at 5:22 AM André Apitzsch via B4 Relay
> wrote:
> >
> > The imx214 driver currently supports only a 24 MHz external clock.
> > But
> > there are device
Am Mittwoch, dem 23.04.2025 um 12:09 +0100 schrieb Richard Fitzgerald:
> On 21/4/25 15:15, Charles Keepax wrote:
> > On Fri, Apr 18, 2025 at 10:22:04PM +0200, André Apitzsch via B4
> > Relay wrote:
> > > From: André Apitzsch
> > >
> > > Ad
From: André Apitzsch
Add tristate prompt to allow codec selection.
Signed-off-by: André Apitzsch
---
sound/soc/codecs/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig
index
40bb7a1d44bcfa4c386f2eba0f475efeeedf1bdb
From: André Apitzsch
Replace the hard coded external clock frequency by the one read from
device tree.
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 10 +-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/drivers/media/i2c/imx214.c b/drivers/media/i2c
From: André Apitzsch
Move clock frequency related parameters out of the constant register
sequences, such that the hard coded external clock frequency can be
replaced by a variable in the upcoming patches.
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 54
://lore.kernel.org/linux-media/20250308-imx214_clk_freq-v1-0-467a4c083...@apitzsch.eu/
Signed-off-by: André Apitzsch
---
André Apitzsch (4):
media: i2c: imx214: Reorder imx214_parse_fwnode call
media: i2c: imx214: Prepare for variable clock frequency
media: i2c: imx214: Make use of CCS PLL
From: André Apitzsch
Calculate PLL parameters based on clock frequency and link frequency.
Signed-off-by: André Apitzsch
---
drivers/media/i2c/Kconfig | 1 +
drivers/media/i2c/imx214.c | 208 -
2 files changed, 170 insertions(+), 39 deletions
From: André Apitzsch
Reorder imx214_parse_fwnode call to reduce goto paths in upcoming
patches.
No functional change intended.
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/media/i2c/imx214.c b
Am Montag, dem 07.04.2025 um 21:10 +0200 schrieb André Apitzsch:
> Am Montag, dem 10.03.2025 um 23:35 +0100 schrieb André Apitzsch:
> > Hi Sakari,
> >
> > Am Montag, dem 10.03.2025 um 11:11 + schrieb Sakari Ailus:
> > > Hi André,
> > >
> > >
Am Montag, dem 10.03.2025 um 23:35 +0100 schrieb André Apitzsch:
> Hi Sakari,
>
> Am Montag, dem 10.03.2025 um 11:11 + schrieb Sakari Ailus:
> > Hi André,
> >
> > On Sat, Mar 08, 2025 at 10:47:54PM +0100, André Apitzsch via B4
> > Relay
> > wrote:
>
Hi Sakari,
Am Montag, dem 10.03.2025 um 11:11 + schrieb Sakari Ailus:
> Hi André,
>
> On Sat, Mar 08, 2025 at 10:47:54PM +0100, André Apitzsch via B4 Relay
> wrote:
> > The imx214 driver currently supports only a 24MHz external clock.
> > But
> > there are
The imx214 driver currently supports only a 24MHz external clock. But
there are devices, like Qualcomm-MSM8916-based phones, which cannot
provide this frequency. To make the sensor usable by those devices, add
support for 23.88MHz clock.
Signed-off-by: André Apitzsch
---
André Apitzsch (4
From: André Apitzsch
Replace the magic link bit rate number (4800) by its calculation based
on the used parameters and the provided external clock frequency.
The link bit rate is output bitrate multiplied by the number lanes. The
output bitrate is the OPPXCK clock frequency multiplied by the
From: André Apitzsch
Replace the hard coded external clock frequency by the one read from
device tree.
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 99 --
1 file changed, 79 insertions(+), 20 deletions(-)
diff --git a/drivers
From: André Apitzsch
Qualcomm MSM8916 devices only provide an external clock of 23.88MHz.
Make the sensor usable by those devices by adding support for this
frequency.
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 12 ++--
1 file changed, 10 insertions(+), 2 deletions
From: André Apitzsch
Move clock frequency related parameters out of the constant register
sequences, such that the hard coded external clock frequency can be
replaced by a variable in the next commit.
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 64
From: André Apitzsch
Replace the magic link bit rate number (4800) by its calculation based
on the used parameters and the provided external clock frequency.
The link bit rate is output bitrate multiplied by the number lanes. The
output bitrate is the OPPXCK clock frequency multiplied by the
The imx214 driver currently supports only a 24MHz external clock. But
there are devices, like Qualcomm-MSM8916-based phones, which cannot
provide this frequency. To make the sensor usable by those devices, add
support for 23.88MHz clock.
Signed-off-by: André Apitzsch
---
André Apitzsch (4
From: André Apitzsch
Qualcomm MSM8916 devices only provide an external clock of 23.88MHz.
Make the sensor usable by those devices by adding support for this
frequency.
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 12 ++--
1 file changed, 10 insertions(+), 2 deletions
From: André Apitzsch
Replace the hard coded external clock frequency by the one read from
device tree.
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 99 --
1 file changed, 79 insertions(+), 20 deletions(-)
diff --git a/drivers
From: André Apitzsch
Move clock frequency related parameters out of the constant register
sequences, such that the hard coded external clock frequency can be
replaced by a variable in the next commit.
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 64
From: André Apitzsch
Document Dongwoon DW9719 and DW9761 VCM devicetree bindings.
Signed-off-by: André Apitzsch
---
.../bindings/media/i2c/dongwoon,dw9719.yaml| 45 ++
1 file changed, 45 insertions(+)
diff --git a/Documentation/devicetree/bindings/media/i2c
From: André Apitzsch
Add of_match table for "dongwoon,dw9719" and "dongwoon,dw9761"
compatible string. This fixes automatic driver loading when using a
device-tree, and if built as a module like major linux distributions do.
Signed-off-by: André Apitzsch
---
drivers/me
Document the Dongwoon DW9719 and DW9761 dt-bindings and add the related
of_match table.
Signed-off-by: André Apitzsch
---
Changes in v3:
- Add patch to document devicetree bindings
- Add "i2c:" to the subject of the 'Add of_match table' commit message
- Link to v2:
https
Hi,
Am Sonntag, dem 09.02.2025 um 14:20 + schrieb Sakari Ailus:
> Hi André,
>
> On Sat, Feb 08, 2025 at 12:13:49PM +0100, André Apitzsch via B4 Relay
> wrote:
> > From: André Apitzsch
> >
> > Add of_match table for "dongwoon,dw9719" and "dongw
From: André Apitzsch
Add of_match table for "dongwoon,dw9719" and "dongwoon,dw9761"
compatible string. This fixes automatic driver loading when using a
device-tree, and if built as a module like major linux distributions do.
Signed-off-by: André Apitzsch
---
This pat
Hi Sakari,
Am Donnerstag, dem 09.01.2025 um 08:59 + schrieb Sakari Ailus:
> Hi André,
>
> On Wed, Jan 08, 2025 at 10:46:51PM +0100, André Apitzsch wrote:
> > Hi Sakari,
> >
> > Am Mittwoch, dem 08.01.2025 um 11:51 + schrieb Sakari Ailus:
> > > H
Hi Sakari,
Am Mittwoch, dem 08.01.2025 um 11:51 + schrieb Sakari Ailus:
> Hi André,
>
> Thanks for the update.
>
> On Fri, Dec 20, 2024 at 02:26:11PM +0100, André Apitzsch via B4 Relay
> wrote:
> > From: André Apitzsch
> >
> > The driver should dis
From: André Apitzsch
The driver defines IMX214_DEFAULT_LINK_FREQ 48000, and then
IMX214_DEFAULT_PIXEL_RATE ((IMX214_DEFAULT_LINK_FREQ * 8LL) / 10),
which works out as 384MPix/s. (The 8 is 4 lanes and DDR.)
Parsing the PLL registers with the defined 24MHz input. We're in single
PLL mod
From: André Apitzsch
The driver should disable or unprepare the clock on probe error and on
removing the module.
Remove regulator_bulk_disable(), because it is called by
imx214_power_off().
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 4 +++-
1
From: André Apitzsch
This adds V4L2_CID_TEST_PATTERN control support.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 77 --
1 file changed, 75 insertions(+), 2 deletions(-)
diff --git a/drivers/media/i2c
From: André Apitzsch
Check the chip ID and stop probing if it is no imx214 sensor.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 29 +
1 file changed, 29 insertions(+)
diff --git a/drivers/media/i2c/imx214.c b/drivers
From: André Apitzsch
The imx214 camera is capable of either two-lane or four-lane operation.
Currently only the four-lane mode is supported, as proper pixel rates
and link frequences for the two-lane mode are unknown.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media
From: André Apitzsch
The imx214 sensor supports horizontal and vertical flipping. Add
appropriate controls to the driver.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 68 --
1 file changed, 60 insertions
From: André Apitzsch
Define macros for all the known registers used in the register arrays,
and use them to replace the numerical addresses. This improves
readability.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 407
From: André Apitzsch
Port the imx214 sensor driver to use the subdev active state.
Move all the format configuration to the subdevice state and simplify
the format handling, locking and initialization.
While at it, simplify imx214_start_streaming() by removing unneeded goto
statements and the
From: André Apitzsch
Error handling in probe() can be a bit simpler with dev_err_probe().
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 54 +-
1 file changed, 24 insertions(+), 30 deletions(-)
diff --git
From: André Apitzsch
The imx214 sensor supports analogue gain up to 8x and digital gain up to
16x. Implement the corresponding controls in the driver. Default gain
values are not modified by this patch.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c
From: André Apitzsch
Use the new common CCI register access helpers to replace the private
register access helpers in the imx214 driver. This simplifies the driver
by reducing the amount of code.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/Kconfig | 1
This patch series is a collection of miscellaneous cleanups and
improvements to the imx214 driver.
The series converts the driver to the CCI helpers and adds controls
needed to make the driver work with libcamera.
The changes are inspired by the imx219 driver.
Signed-off-by: André Apitzsch
From: André Apitzsch
Add vblank control to allow changing the framerate /
higher exposure values.
The vblank and hblank controls are needed for libcamera support.
While at it, fix the minimal exposure time according to the datasheet.
Signed-off-by: André Apitzsch
---
drivers/media/i2c
From: André Apitzsch
The IMX214_REG_EXPOSURE is configured twice, once with a hardcoded value
in the mode_ registers arrays, and once via v4l2_ctrl_ops. The
latter is enough, drop the former.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 2 --
1
From: André Apitzsch
The imx214 sensor supports horizontal and vertical flipping. Add
appropriate controls to the driver.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 69 --
1 file changed, 61 insertions
From: André Apitzsch
This adds V4L2_CID_TEST_PATTERN control support.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 77 --
1 file changed, 75 insertions(+), 2 deletions(-)
diff --git a/drivers/media/i2c
From: André Apitzsch
Add vblank control to allow changing the framerate /
higher exposure values.
The vblank and hblank controls are needed for libcamera support.
While at it, fix the minimal exposure time according to the datasheet.
Signed-off-by: André Apitzsch
---
drivers/media/i2c
From: André Apitzsch
Use the new common CCI register access helpers to replace the private
register access helpers in the imx214 driver. This simplifies the driver
by reducing the amount of code.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/Kconfig | 1
From: André Apitzsch
Check the chip ID and stop probing if it is no imx214 sensor.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 29 +
1 file changed, 29 insertions(+)
diff --git a/drivers/media/i2c/imx214.c b/drivers
From: André Apitzsch
Define macros for all the known registers used in the register arrays,
and use them to replace the numerical addresses. This improves
readability.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 407
From: André Apitzsch
The driver should disable or unprepare the clock on probe error and on
removing the module.
Remove regulator_bulk_disable(), because it is called by
imx214_power_off().
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 4 +++-
1 file changed, 3 insertions
From: André Apitzsch
The imx214 camera is capable of either two-lane or four-lane operation.
Currently only the four-lane mode is supported, as proper pixel rates
and link frequences for the two-lane mode are unknown.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media
From: André Apitzsch
The driver defines IMX214_DEFAULT_LINK_FREQ 48000, and then
IMX214_DEFAULT_PIXEL_RATE ((IMX214_DEFAULT_LINK_FREQ * 8LL) / 10),
which works out as 384MPix/s. (The 8 is 4 lanes and DDR.)
Parsing the PLL registers with the defined 24MHz input. We're in single
PLL mod
From: André Apitzsch
The imx214 sensor supports analogue gain up to 8x and digital gain up to
16x. Implement the corresponding controls in the driver. Default gain
values are not modified by this patch.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c
From: André Apitzsch
The IMX214_REG_EXPOSURE is configured twice, once with a hardcoded value
in the mode_ registers arrays, and once via v4l2_ctrl_ops. The
latter is enough, drop the former.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 2 --
1
This patch series is a collection of miscellaneous cleanups and
improvements to the imx214 driver.
The series converts the driver to the CCI helpers and adds controls
needed to make the driver work with libcamera.
The changes are inspired by the imx219 driver.
Signed-off-by: André Apitzsch
From: André Apitzsch
Port the imx214 sensor driver to use the subdev active state.
Move all the format configuration to the subdevice state and simplify
the format handling, locking and initialization.
While at it, simplify imx214_start_streaming() by removing unneeded goto
statements and the
From: André Apitzsch
Error handling in probe() can be a bit simpler with dev_err_probe().
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 54 +-
1 file changed, 24 insertions(+), 30 deletions(-)
diff --git
From: André Apitzsch
The IMX214_REG_EXPOSURE is configured twice, once with a hardcoded value
in the mode_ registers arrays, and once via v4l2_ctrl_ops. The
latter is enough, drop the former.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 2 --
1
From: André Apitzsch
Check the chip ID and stop probing if it is no imx214 sensor.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 29 +
1 file changed, 29 insertions(+)
diff --git a/drivers/media/i2c/imx214.c b/drivers
From: André Apitzsch
The imx214 sensor supports analogue gain up to 8x and digital gain up to
16x. Implement the corresponding controls in the driver. Default gain
values are not modified by this patch.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c
From: André Apitzsch
This adds V4L2_CID_TEST_PATTERN control support.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 77 --
1 file changed, 75 insertions(+), 2 deletions(-)
diff --git a/drivers/media/i2c
From: André Apitzsch
The imx214 camera is capable of either two-lane or four-lane operation.
Currently only the four-lane mode is supported, as proper pixel rates
and link frequences for the two-lane mode are unknown.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media
From: André Apitzsch
Port the imx214 sensor driver to use the subdev active state.
Move all the format configuration to the subdevice state and simplify
the format handling, locking and initialization.
While at it, simplify imx214_start_streaming() by removing unneeded goto
statements and the
This patch series is a collection of miscellaneous cleanups and
improvements to the imx214 driver.
The series converts the driver to the CCI helpers and adds controls
needed to make the driver work with libcamera.
The changes are inspired by the imx219 driver.
Signed-off-by: André Apitzsch
From: André Apitzsch
The driver defines IMX214_DEFAULT_LINK_FREQ 48000, and then
IMX214_DEFAULT_PIXEL_RATE ((IMX214_DEFAULT_LINK_FREQ * 8LL) / 10),
which works out as 384MPix/s. (The 8 is 4 lanes and DDR.)
Parsing the PLL registers with the defined 24MHz input. We're in single
PLL mod
From: André Apitzsch
The driver should disable or unprepare the clock on probe error and on
removing the module.
Remove regulator_bulk_disable(), because it is called by
imx214_power_off().
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 4 +++-
1 file changed, 3 insertions
From: André Apitzsch
The imx214 sensor supports horizontal and vertical flipping. Add
appropriate controls to the driver.
Acked-by: Ricardo Ribalda
Signed-off-by: André Apitzsch
---
drivers/media/i2c/imx214.c | 69 --
1 file changed, 61 insertions
1 - 100 of 184 matches
Mail list logo