| # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/memory-controllers/st,stm32-fmc2-ebi-props.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Peripheral properties for ST FMC2 Controller |
| |
| maintainers: |
| - Christophe Kerello <christophe.kerello@foss.st.com> |
| - Marek Vasut <marex@denx.de> |
| |
| properties: |
| st,fmc2-ebi-cs-transaction-type: |
| description: | |
| Select one of the transactions type supported |
| 0: Asynchronous mode 1 SRAM/FRAM. |
| 1: Asynchronous mode 1 PSRAM. |
| 2: Asynchronous mode A SRAM/FRAM. |
| 3: Asynchronous mode A PSRAM. |
| 4: Asynchronous mode 2 NOR. |
| 5: Asynchronous mode B NOR. |
| 6: Asynchronous mode C NOR. |
| 7: Asynchronous mode D NOR. |
| 8: Synchronous read synchronous write PSRAM. |
| 9: Synchronous read asynchronous write PSRAM. |
| 10: Synchronous read synchronous write NOR. |
| 11: Synchronous read asynchronous write NOR. |
| $ref: /schemas/types.yaml#/definitions/uint32 |
| minimum: 0 |
| maximum: 11 |
| |
| st,fmc2-ebi-cs-cclk-enable: |
| description: Continuous clock enable (first bank must be configured |
| in synchronous mode). The FMC_CLK is generated continuously |
| during asynchronous and synchronous access. By default, the |
| FMC_CLK is only generated during synchronous access. |
| $ref: /schemas/types.yaml#/definitions/flag |
| |
| st,fmc2-ebi-cs-mux-enable: |
| description: Address/Data multiplexed on databus (valid only with |
| NOR and PSRAM transactions type). By default, Address/Data |
| are not multiplexed. |
| $ref: /schemas/types.yaml#/definitions/flag |
| |
| st,fmc2-ebi-cs-buswidth: |
| description: Data bus width |
| $ref: /schemas/types.yaml#/definitions/uint32 |
| enum: [ 8, 16 ] |
| default: 16 |
| |
| st,fmc2-ebi-cs-waitpol-high: |
| description: Wait signal polarity (NWAIT signal active high). |
| By default, NWAIT is active low. |
| $ref: /schemas/types.yaml#/definitions/flag |
| |
| st,fmc2-ebi-cs-waitcfg-enable: |
| description: The NWAIT signal indicates wheither the data from the |
| device are valid or if a wait state must be inserted when accessing |
| the device in synchronous mode. By default, the NWAIT signal is |
| active one data cycle before wait state. |
| $ref: /schemas/types.yaml#/definitions/flag |
| |
| st,fmc2-ebi-cs-wait-enable: |
| description: The NWAIT signal is enabled (its level is taken into |
| account after the programmed latency period to insert wait states |
| if asserted). By default, the NWAIT signal is disabled. |
| $ref: /schemas/types.yaml#/definitions/flag |
| |
| st,fmc2-ebi-cs-asyncwait-enable: |
| description: The NWAIT signal is taken into account during asynchronous |
| transactions. By default, the NWAIT signal is not taken into account |
| during asynchronous transactions. |
| $ref: /schemas/types.yaml#/definitions/flag |
| |
| st,fmc2-ebi-cs-cpsize: |
| description: CRAM page size. The controller splits the burst access |
| when the memory page is reached. By default, no burst split when |
| crossing page boundary. |
| $ref: /schemas/types.yaml#/definitions/uint32 |
| enum: [ 0, 128, 256, 512, 1024 ] |
| default: 0 |
| |
| st,fmc2-ebi-cs-byte-lane-setup-ns: |
| description: This property configures the byte lane setup timing |
| defined in nanoseconds from NBLx low to Chip Select NEx low. |
| |
| st,fmc2-ebi-cs-address-setup-ns: |
| description: This property defines the duration of the address setup |
| phase in nanoseconds used for asynchronous read/write transactions. |
| |
| st,fmc2-ebi-cs-address-hold-ns: |
| description: This property defines the duration of the address hold |
| phase in nanoseconds used for asynchronous multiplexed read/write |
| transactions. |
| |
| st,fmc2-ebi-cs-data-setup-ns: |
| description: This property defines the duration of the data setup phase |
| in nanoseconds used for asynchronous read/write transactions. |
| |
| st,fmc2-ebi-cs-bus-turnaround-ns: |
| description: This property defines the delay in nanoseconds between the |
| end of current read/write transaction and the next transaction. |
| |
| st,fmc2-ebi-cs-data-hold-ns: |
| description: This property defines the duration of the data hold phase |
| in nanoseconds used for asynchronous read/write transactions. |
| |
| st,fmc2-ebi-cs-clk-period-ns: |
| description: This property defines the FMC_CLK output signal period in |
| nanoseconds. |
| |
| st,fmc2-ebi-cs-data-latency-ns: |
| description: This property defines the data latency before reading or |
| writing the first data in nanoseconds. |
| |
| st,fmc2-ebi-cs-write-address-setup-ns: |
| description: This property defines the duration of the address setup |
| phase in nanoseconds used for asynchronous write transactions. |
| |
| st,fmc2-ebi-cs-write-address-hold-ns: |
| description: This property defines the duration of the address hold |
| phase in nanoseconds used for asynchronous multiplexed write |
| transactions. |
| |
| st,fmc2-ebi-cs-write-data-setup-ns: |
| description: This property defines the duration of the data setup |
| phase in nanoseconds used for asynchronous write transactions. |
| |
| st,fmc2-ebi-cs-write-bus-turnaround-ns: |
| description: This property defines the delay between the end of current |
| write transaction and the next transaction in nanoseconds. |
| |
| st,fmc2-ebi-cs-write-data-hold-ns: |
| description: This property defines the duration of the data hold phase |
| in nanoseconds used for asynchronous write transactions. |
| |
| st,fmc2-ebi-cs-max-low-pulse-ns: |
| description: This property defines the maximum chip select low pulse |
| duration in nanoseconds for synchronous transactions. When this timing |
| reaches 0, the controller splits the current access, toggles NE to |
| allow device refresh and restarts a new access. |
| |
| additionalProperties: true |