dts: bindings: stm32-dcmi: use endpoint based properties

Update the bindings of the stm32-dcmi driver rely on
properties described within the endpoints and already
detailed within the video-interfaces.yaml.

With that, several properties located at the node root
are now moved into the port / endpoint:

  sensor -> endpoint: remote-endpoint-label
  vsync-active -> endpoint: vsync-active
  hsync-active -> endpoint: hsync-active
  pixelclk-active -> endpoint: pclk-sample
  bus-width -> endpoint: bus-width

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
This commit is contained in:
Alain Volmat 2025-05-07 20:37:32 +02:00 committed by Anas Nashif
commit d11bb65b14

View file

@ -11,23 +11,21 @@ description: |
&dcmi { &dcmi {
status = "okay"; status = "okay";
sensor = <&ov2640>;
pinctrl-0 = <&dcmi_hsync_pa4 &dcmi_pixclk_pa6 &dcmi_vsync_pb7 pinctrl-0 = <&dcmi_hsync_pa4 &dcmi_pixclk_pa6 &dcmi_vsync_pb7
&dcmi_d0_pc6 &dcmi_d1_pc7 &dcmi_d2_pe0 &dcmi_d3_pe1 &dcmi_d0_pc6 &dcmi_d1_pc7 &dcmi_d2_pe0 &dcmi_d3_pe1
&dcmi_d4_pe4 &dcmi_d5_pd3 &dcmi_d6_pe5 &dcmi_d7_pe6>; &dcmi_d4_pe4 &dcmi_d5_pd3 &dcmi_d6_pe5 &dcmi_d7_pe6>;
pinctrl-names = "default"; pinctrl-names = "default";
bus-width = <8>;
hsync-active = <0>;
vsync-active = <0>;
pixelclk-active = <1>;
capture-rate = <1>;
dmas = <&dma1 0 75 (STM32_DMA_PERIPH_TO_MEMORY | STM32_DMA_PERIPH_NO_INC | dmas = <&dma1 0 75 (STM32_DMA_PERIPH_TO_MEMORY | STM32_DMA_PERIPH_NO_INC |
STM32_DMA_MEM_INC | STM32_DMA_PERIPH_8BITS | STM32_DMA_MEM_32BITS | STM32_DMA_MEM_INC | STM32_DMA_PERIPH_8BITS | STM32_DMA_MEM_32BITS |
STM32_DMA_PRIORITY_HIGH) STM32_DMA_FIFO_1_4>; STM32_DMA_PRIORITY_HIGH) STM32_DMA_FIFO_1_4>;
port { port {
dcmi_ep_in: endpoint { dcmi_ep_in: endpoint {
remote-endpoint = <&ov2640_ep_out>; remote-endpoint-label = "ov2640_ep_out";
bus-width = <8>;
hsync-active = <0>;
vsync-active = <0>;
pclk-sample = <1>;
}; };
}; };
}; };
@ -40,64 +38,6 @@ properties:
interrupts: interrupts:
required: true required: true
sensor:
required: true
type: phandle
description: phandle of connected sensor device
bus-width:
type: int
required: true
enum:
- 8
- 10
- 12
- 14
default: 8
description: |
Number of data lines actively used, valid for the parallel busses.
hsync-active:
type: int
required: true
enum:
- 0
- 1
description: |
Polarity of horizontal synchronization (DCMI_HSYNC_Polarity).
0 Horizontal synchronization active Low.
1 Horizontal synchronization active High.
For example, if DCMI_HSYNC_Polarity is programmed active high:
When HSYNC is low, the data is valid.
When HSYNC is high, the data is not valid (horizontal blanking).
vsync-active:
type: int
required: true
enum:
- 0
- 1
description: |
Polarity of vertical synchronization (DCMI_VSYNC_Polarity).
0 Vertical synchronization active Low.
1 Vertical synchronization active High.
For example, if DCMI_VSYNC_Polarity is programmed active high:
When VSYNC is low, the data is valid.
When VSYNC is high, the data is not valid (vertical blanking).
pixelclk-active:
type: int
required: true
enum:
- 0
- 1
description: |
Polarity of pixel clock (DCMI_PIXCK_Polarity).
0 Pixel clock active on Falling edge.
1 Pixel clock active on Rising edge.
capture-rate: capture-rate:
type: int type: int
enum: enum:
@ -122,3 +62,7 @@ properties:
dmas = <&dma1 0 75 (STM32_DMA_PERIPH_TO_MEMORY | STM32_DMA_PERIPH_NO_INC | dmas = <&dma1 0 75 (STM32_DMA_PERIPH_TO_MEMORY | STM32_DMA_PERIPH_NO_INC |
STM32_DMA_MEM_INC | STM32_DMA_PERIPH_8BITS | STM32_DMA_MEM_32BITS | STM32_DMA_MEM_INC | STM32_DMA_PERIPH_8BITS | STM32_DMA_MEM_32BITS |
STM32_DMA_PRIORITY_HIGH) STM32_DMA_FIFO_1_4>; STM32_DMA_PRIORITY_HIGH) STM32_DMA_FIFO_1_4>;
child-binding:
child-binding:
include: video-interfaces.yaml