Add the yaml bindings for Mobileye SoCs. Currently only EyeQ5 is supported Signed-off-by: Gregory CLEMENT <gregory.clement@xxxxxxxxxxx> --- .../devicetree/bindings/mips/mobileye.yaml | 36 +++++++++ include/dt-bindings/soc/mobileye,eyeq5.h | 77 +++++++++++++++++++ 2 files changed, 113 insertions(+) create mode 100644 Documentation/devicetree/bindings/mips/mobileye.yaml create mode 100644 include/dt-bindings/soc/mobileye,eyeq5.h diff --git a/Documentation/devicetree/bindings/mips/mobileye.yaml b/Documentation/devicetree/bindings/mips/mobileye.yaml new file mode 100644 index 000000000000..f47767bc2c8f --- /dev/null +++ b/Documentation/devicetree/bindings/mips/mobileye.yaml @@ -0,0 +1,36 @@ +# SPDX-License-Identifier: GPL-2.0-or-later OR BSD-2-Clause +# Copyright 2023 Mobileye Vision Technologies Ltd. +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/mips/mobileye.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Mobileye SoC series + +maintainers: + - Vladimir Kondratiev <vladimir.kondratiev@xxxxxxxxx> + - Gregory CLEMENT <gregory.clement@xxxxxxxxxxx> + - Théo Lebrun <theo.lebrun@xxxxxxxxxxx> + +description: | + Boards with a Mobileye SoC shall have the following properties. + +properties: + $nodename: + const: '/' + + compatible: + oneOf: + - description: Boards with Mobileye EyeQ5 SoC + items: + - enum: + - mobileye,eyeq5-epm5 + - const: mobileye,eyeq5 + + - description: Boards with Mobileye EyeQ6 SoC + items: + - const: mobileye,eyeq6 + +additionalProperties: true + +... diff --git a/include/dt-bindings/soc/mobileye,eyeq5.h b/include/dt-bindings/soc/mobileye,eyeq5.h new file mode 100644 index 000000000000..7d8cb97b45bf --- /dev/null +++ b/include/dt-bindings/soc/mobileye,eyeq5.h @@ -0,0 +1,77 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright 2023 Mobileye Vision Technologies Ltd. + */ +#ifndef _DT_BINDINGS_SOC_MOBILEYE_EYEQ5_H +#define _DT_BINDINGS_SOC_MOBILEYE_EYEQ5_H + +/* EQ5 interrupts */ +#define NUM_INT_I2C_A 1 +#define NUM_INT_I2C_B 2 +#define NUM_INT_I2C_C 3 +#define NUM_INT_I2C_D 4 +#define NUM_INT_I2C_E 5 + +#define NUM_INT_UART 6 /* same for all UARTs - A, B, C */ +#define NUM_INT_PCIE0_INT0 7 +#define NUM_INT_PCIE0_INT1 8 + +#define NUM_INT_CAN 9 /* same for all CANs A, B, C */ + +#define NUM_INT_EMMC 10 +/* empty 11 */ +#define NUM_INT_SPIA_B 12 +#define NUM_INT_SPIC_D 13 + +#define NUM_INT_GPIO 14 + +#define NUM_INT_TIMER_0 15 +#define NUM_INT_TIMER_1 16 +#define NUM_INT_TIMER_2 17 +#define NUM_INT_TIMER_3 18 +#define NUM_INT_TIMER_4_ETIMER0_1 19 +#define NUM_INT_OQSPI 20 +#define NUM_INT_DDR_CTRL 21 +#define NUM_INT_NOC 22 + +#define NUM_INT_GEM0 23 +#define NUM_INT_GEM1 24 + +#define NUM_INT_VDI_0_VC0 25 +#define NUM_INT_VDI_0_VC1 26 +#define NUM_INT_VDI_0_VC2 27 +#define NUM_INT_VDI_0_VC3 28 +#define NUM_INT_VDI_0_ERR 29 +#define NUM_INT_VDI_1_VC0 30 +#define NUM_INT_VDI_1_VC1 31 +#define NUM_INT_VDI_1_VC2 32 +#define NUM_INT_VDI_1_VC3 33 +#define NUM_INT_VDI_1_ERR 34 + +#define NUM_INT_MPC0 35 +#define NUM_INT_MPC1 36 +#define NUM_INT_MPC2 37 +#define NUM_INT_MPC3 38 +#define NUM_INT_MPC4 39 +#define NUM_INT_VMP0 40 +#define NUM_INT_VMP1 41 +#define NUM_INT_VMP2 42 +#define NUM_INT_VMP3 43 +#define NUM_INT_PMA0 44 +#define NUM_INT_PMA1 45 +#define NUM_INT_PMAC0 46 +#define NUM_INT_PMAC1 47 + +#define NUM_INT_PCIE1_INT0 48 +#define NUM_INT_PCIE1_INT1 49 + +#define NUM_INT_HSM_C3 50 + +#define NUM_INT_MJPEG 51 + +#define NUM_INT_FCMU_OLB 52 +#define NUM_INT_FCMU_NMI 53 +#define NUM_INT_WDDOG_TIMER 54 +#define NUM_INT_WDDOG_TIMER_1 55 + +#endif /* _DT_BINDINGS_SOC_MOBILEYE_EYEQ5_H */ -- 2.40.1