Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,8 @@ properties:
- hit,tx23d38vm0caa
# Innolux AT043TN24 4.3" WQVGA TFT LCD panel
- innolux,at043tn24
# Innolux AT056tN53V1 5.6" VGA (640x480) TFT LCD panel
- innolux,at056tn53v1
# Innolux AT070TN92 7.0" WQVGA TFT LCD panel
- innolux,at070tn92
# Innolux G070ACE-L01 7" WVGA (800x480) TFT LCD panel
Expand Down
1 change: 1 addition & 0 deletions Documentation/devicetree/bindings/eeprom/at24.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,7 @@ properties:
- items:
- enum:
- belling,bl24c16a
- belling,bl24c16f
- renesas,r1ex24016
- const: atmel,24c16
- items:
Expand Down
119 changes: 119 additions & 0 deletions Documentation/devicetree/bindings/media/i2c/imx708.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/media/i2c/imx708.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Sony 1/2.3-Inch 12Mpixel CMOS Digital Image Sensor

maintainers:
- Raspberry Pi Kernel Maintenance <kernel-list@raspberrypi.com>

description: |-
The Sony IMX708 is a 1/2.3-inch CMOS active pixel digital image sensor
with an active array size of 4608H x 2592V. It is programmable through
I2C interface. The I2C address is fixed to 0x1A as per sensor data sheet.
Image data is sent through MIPI CSI-2, which is configured as either 2 or
4 data lanes.

properties:
compatible:
const: sony,imx708

reg:
description: I2C device address
maxItems: 1

clocks:
maxItems: 1

VDIG-supply:
description:
Digital I/O voltage supply, 1.1 volts

VANA1-supply:
description:
Analog1 voltage supply, 2.8 volts

VANA2-supply:
description:
Analog2 voltage supply, 1.8 volts

VDDL-supply:
description:
Digital core voltage supply, 1.8 volts

reset-gpios:
description: |-
Reference to the GPIO connected to the xclr pin, if any.
Must be released (set high) after all supplies and INCK are applied.

# See ../video-interfaces.txt for more details
port:
type: object
properties:
endpoint:
type: object
properties:
data-lanes:
description: |-
The sensor supports either two-lane, or four-lane operation.
For two-lane operation the property must be set to <1 2>.
items:
- const: 1
- const: 2

clock-noncontinuous:
type: boolean
description: |-
MIPI CSI-2 clock is non-continuous if this property is present,
otherwise it's continuous.

link-frequencies:
allOf:
- $ref: /schemas/types.yaml#/definitions/uint64-array
description:
Allowed data bus frequencies.

required:
- link-frequencies

required:
- compatible
- reg
- clocks
- VANA1-supply
- VANA2-supply
- VDIG-supply
- VDDL-supply
- port

additionalProperties: false

examples:
- |
i2c0 {
#address-cells = <1>;
#size-cells = <0>;

imx708: sensor@1a {
compatible = "sony,imx708";
reg = <0x1a>;
clocks = <&imx708_clk>;
VANA1-supply = <&imx708_vana1>; /* 2.8v */
VANA2-supply = <&imx708_vana2>; /* 1.8v */
VDIG-supply = <&imx708_vdig>; /* 1.1v */
VDDL-supply = <&imx708_vddl>; /* 1.8v */

port {
imx708_0: endpoint {
remote-endpoint = <&csi1_ep>;
data-lanes = <1 2>;
clock-noncontinuous;
link-frequencies = /bits/ 64 <450000000>;
};
};
};
};

...
111 changes: 111 additions & 0 deletions Documentation/userspace-api/media/v4l/subdev-formats.rst
Original file line number Diff line number Diff line change
Expand Up @@ -625,6 +625,43 @@ The following tables list existing packed RGB formats.
- b\ :sub:`2`
- b\ :sub:`1`
- b\ :sub:`0`
* .. _MEDIA_BUS_FMT_RGB565_1X24_CPADHI:

- MEDIA_BUS_FMT_RGB565_1X24_CPADHI
- 0x1022
-
-
-
-
-
-
-
-
-
- 0
- 0
- 0
- r\ :sub:`4`
- r\ :sub:`3`
- r\ :sub:`2`
- r\ :sub:`1`
- r\ :sub:`0`
- 0
- 0
- g\ :sub:`5`
- g\ :sub:`4`
- g\ :sub:`3`
- g\ :sub:`2`
- g\ :sub:`1`
- g\ :sub:`0`
- 0
- 0
- 0
- b\ :sub:`4`
- b\ :sub:`3`
- b\ :sub:`2`
- b\ :sub:`1`
- b\ :sub:`0`
* .. _MEDIA-BUS-FMT-BGR565-2X8-BE:

- MEDIA_BUS_FMT_BGR565_2X8_BE
Expand Down Expand Up @@ -913,6 +950,43 @@ The following tables list existing packed RGB formats.
- g\ :sub:`5`
- g\ :sub:`4`
- g\ :sub:`3`
* .. _MEDIA-BUS-FMT-BGR666-1X18:

- MEDIA_BUS_FMT-BGR666_1X18
- 0x1023
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- b\ :sub:`5`
- b\ :sub:`4`
- b\ :sub:`3`
- b\ :sub:`2`
- b\ :sub:`1`
- b\ :sub:`0`
- g\ :sub:`5`
- g\ :sub:`4`
- g\ :sub:`3`
- g\ :sub:`2`
- g\ :sub:`1`
- g\ :sub:`0`
- r\ :sub:`5`
- r\ :sub:`4`
- r\ :sub:`3`
- r\ :sub:`2`
- r\ :sub:`1`
- r\ :sub:`0`
* .. _MEDIA-BUS-FMT-RGB666-1X18:

- MEDIA_BUS_FMT_RGB666_1X18
Expand Down Expand Up @@ -1096,6 +1170,43 @@ The following tables list existing packed RGB formats.
- g\ :sub:`2`
- g\ :sub:`1`
- g\ :sub:`0`
* .. _MEDIA-BUS-FMT-BGR666-1X24_CPADHI:

- MEDIA_BUS_FMT_BGR666_1X24_CPADHI
- 0x1024
-
-
-
-
-
-
-
-
-
- 0
- 0
- b\ :sub:`5`
- b\ :sub:`4`
- b\ :sub:`3`
- b\ :sub:`2`
- b\ :sub:`1`
- b\ :sub:`0`
- 0
- 0
- g\ :sub:`5`
- g\ :sub:`4`
- g\ :sub:`3`
- g\ :sub:`2`
- g\ :sub:`1`
- g\ :sub:`0`
- 0
- 0
- r\ :sub:`5`
- r\ :sub:`4`
- r\ :sub:`3`
- r\ :sub:`2`
- r\ :sub:`1`
- r\ :sub:`0`
* .. _MEDIA-BUS-FMT-RGB666-1X24_CPADHI:

- MEDIA_BUS_FMT_RGB666_1X24_CPADHI
Expand Down
3 changes: 3 additions & 0 deletions arch/arm64/boot/dts/qcom/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,9 @@ dtb-$(CONFIG_ARCH_QCOM) += qcm6490-shift-otter.dtb
dtb-$(CONFIG_ARCH_QCOM) += qcs404-evb-1000.dtb
dtb-$(CONFIG_ARCH_QCOM) += qcs404-evb-4000.dtb
dtb-$(CONFIG_ARCH_QCOM) += qcs615-ride.dtb
dtb-$(CONFIG_ARCH_QCOM) += qcs6490-radxa-cm-q64-rpi-cm5-io.dtb
qcs6490-radxa-cm-q64-rpi-cm5-io-kvm-dtbs := qcs6490-radxa-cm-q64-rpi-cm5-io.dtb qcs6490-radxa-cm-q64-rpi-cm5-io-kvm.dtbo
dtb-$(CONFIG_ARCH_QCOM) += qcs6490-radxa-cm-q64-rpi-cm5-io-kvm.dtb
dtb-$(CONFIG_ARCH_QCOM) += qcs6490-radxa-dragon-q6a.dtb
qcs6490-radxa-dragon-q6a-kvm-dtbs := qcs6490-radxa-dragon-q6a.dtb qcs6490-radxa-dragon-q6a-kvm.dtbo
dtb-$(CONFIG_ARCH_QCOM) += qcs6490-radxa-dragon-q6a-kvm.dtb
Expand Down
58 changes: 58 additions & 0 deletions arch/arm64/boot/dts/qcom/qcs6490-radxa-cm-q64-rpi-cm5-io-kvm.dtso
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2025 Radxa Computer (Shenzhen) Co., Ltd.
*
* This device tree overlay is supposed to be applied by UEFI firmware
* when Hypervisor Override is set to enabled.
*/

#include <dt-bindings/firmware/qcom,scm.h>

/dts-v1/;
/plugin/;

/* Required when Hypervisor Override is set to auto */
&{/chosen} {
radxa,enable-kvm = <1>;
};

/* We can't and don't need to use zap shader in EL2 as linux can zap the gpu on it's own. */
&gpu_zap_shader {
status = "disabled";
};

&soc {
#address-cells = <2>;
#size-cells = <2>;

pcie@1c08000 {
#address-cells = <3>;
#size-cells = <2>;

/* Allow using upper PCIe space */
ranges = <0x01000000 0x0 0x00000000 0x0 0x40200000 0x0 0x100000>,
<0x02000000 0x0 0x40300000 0x0 0x40300000 0x0 0x1fd00000>,
<0x03000000 0x4 0x00000000 0x4 0x00000000 0x3 0x00000000>;
};
};

&remoteproc_adsp {
qcom,broken-reset;
};

&remoteproc_cdsp {
qcom,broken-reset;
};

&scm {
qcom,shm-bridge-vmid = <QCOM_SCM_VMID_SELF_OWNER>;
};

&venus {
iommus = <&apps_smmu 0x2180 0x20>,
<&apps_smmu 0x2184 0x20>;

video-firmware {
iommus = <&apps_smmu 0x21a2 0x0>;
};
};
Loading