Skip to content

Commit ea68ea3

Browse files
author
Alain Volmat
committed
dts: bindings: support both 15 and 22pins RaspberryPi CSI camera connector
Update the RaspberryPi CSI camera connector nexus gpio in order to only expose the list of GPIO pins in order to support both 15 and 22pins connectors as well as 15 to 22pins conversion cables. Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
1 parent 2016f05 commit ea68ea3

File tree

4 files changed

+82
-51
lines changed

4 files changed

+82
-51
lines changed

dts/bindings/gpio/raspberrypi,csi-22pins-connector.yaml

Lines changed: 0 additions & 33 deletions
This file was deleted.
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
# Copyright 2025 STMicroelectronics
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
description: |
5+
There are 2 variants of the Raspberry Pi CSI camera connector. Either 15pins
6+
or 22pins. Here only GPIO provided by those connectors are abstracted since
7+
others pins are directly connected to CSI PHY.
8+
For reference, pinout of 15pins and 22pins connectors are references below.
9+
In this gpio nexus, only GPIOs are represented and should be described in
10+
the following way, allowing to have a single compatible for both 15pins
11+
and 22pins connectors and also allowing to deal with 15 to 22 pins
12+
conversion cables.
13+
14+
Nexus mapping:
15+
1 IO0 pin 11 (15pins based) / pin 17 (22pins based)
16+
2 IO1 pin 12 (15pins based) / pin 18 (22pins based)
17+
3 I2C_SCL pin 13 (15pins based) / pin 20 (22pins based)
18+
4 I2C_SDA pin 14 (15pins based) / pin 21 (22pins based)
19+
20+
For reference only, Raspberry 15pins Connector layout:
21+
1 GND
22+
2 CSI_D0_N
23+
3 CSI_D0_P
24+
4 GND
25+
5 CSI_D1_N
26+
6 CSI_D1_P
27+
7 GND
28+
8 CSI_CK_N
29+
9 CSI_CK_P
30+
10 GND
31+
11 IO0
32+
12 IO1
33+
13 I2C_SCL
34+
14 I2C_SDA
35+
15 VCC (3v3)
36+
37+
For reference only, Raspberry 22pins Connector layout:
38+
39+
1 GND
40+
2 CSI_D0_N
41+
3 CSI_D0_P
42+
4 GND
43+
5 CSI_D1_N
44+
6 CSI_D1_P
45+
7 GND
46+
8 CSI_CK_N
47+
9 CSI_CK_P
48+
10 GND
49+
11 CSI_D2_N
50+
12 CSI_D2_P
51+
13 GND
52+
14 CSI_D3_N
53+
15 CSI_D3_P
54+
16 GND
55+
17 IO0
56+
18 IO1
57+
19 GND
58+
20 I2C_SCL
59+
21 I2C_SDA
60+
22 VCC (3v3)
61+
62+
compatible: "raspberrypi,csi-connector"
63+
64+
include: [gpio-nexus.yaml, base.yaml]

include/zephyr/dt-bindings/gpio/raspberrypi-csi-22pins-connector.h

Lines changed: 0 additions & 18 deletions
This file was deleted.
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
/*
2+
* Copyright (c) 2025 STMicroelectronics
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
#ifndef INCLUDE_ZEPHYR_DT_BINDINGS_GPIO_RASPBERRYPI_CSI_CONNECTOR_H_
6+
#define INCLUDE_ZEPHYR_DT_BINDINGS_GPIO_RASPBERRYPI_CSI_CONNECTOR_H_
7+
8+
/**
9+
* @name CSI camera connector GPIO list
10+
* @{
11+
*/
12+
#define CSI_IO0 1 /**< GPIO0 */
13+
#define CSI_IO1 2 /**< GPIO1 */
14+
#define CSI_I2C_SCL 3 /**< I2C clock pin */
15+
#define CSI_I2C_SDA 4 /**< I2C data pin */
16+
/** @} */
17+
18+
#endif /* INCLUDE_ZEPHYR_DT_BINDINGS_GPIO_RASPBERRYPI_CSI_CONNECTOR_H_ */

0 commit comments

Comments
 (0)