dts: nordic: Change compatible property for EXMIF node
This is a follow-up to commit cdf45cb234077522b5cef2da084869af43d42dc1. Adjust the DTS node for the nRF EXMIF peripheral so that it is possible to handle the peripheral with the generic MSPI driver for DW SSI based controllers and use all its data lines in communication. Also adjust the related board files accordingly. Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
This commit is contained in:
parent
2e8c79f2ef
commit
271a41a4a5
7 changed files with 87 additions and 21 deletions
|
@ -73,12 +73,37 @@
|
||||||
/omit-if-no-ref/ exmif_default: exmif_default {
|
/omit-if-no-ref/ exmif_default: exmif_default {
|
||||||
group1 {
|
group1 {
|
||||||
psels = <NRF_PSEL(EXMIF_CK, 6, 0)>,
|
psels = <NRF_PSEL(EXMIF_CK, 6, 0)>,
|
||||||
|
<NRF_PSEL(EXMIF_CS0, 6, 3)>,
|
||||||
|
<NRF_PSEL(EXMIF_RWDS, 6, 2)>,
|
||||||
<NRF_PSEL(EXMIF_DQ0, 6, 7)>,
|
<NRF_PSEL(EXMIF_DQ0, 6, 7)>,
|
||||||
<NRF_PSEL(EXMIF_DQ1, 6, 5)>;
|
<NRF_PSEL(EXMIF_DQ1, 6, 5)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ2, 6, 10)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ3, 6, 9)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ4, 6, 11)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ5, 6, 8)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ6, 6, 6)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ7, 6, 4)>;
|
||||||
nordic,drive-mode = <NRF_DRIVE_H0H1>;
|
nordic,drive-mode = <NRF_DRIVE_H0H1>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/omit-if-no-ref/ exmif_sleep: exmif_sleep {
|
||||||
|
group1 {
|
||||||
|
low-power-enable;
|
||||||
|
psels = <NRF_PSEL(EXMIF_CK, 6, 0)>,
|
||||||
|
<NRF_PSEL(EXMIF_CS0, 6, 3)>,
|
||||||
|
<NRF_PSEL(EXMIF_RWDS, 6, 2)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ0, 6, 7)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ1, 6, 5)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ2, 6, 10)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ3, 6, 9)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ4, 6, 11)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ5, 6, 8)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ6, 6, 6)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ7, 6, 4)>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
/omit-if-no-ref/ can120_default: can120_default {
|
/omit-if-no-ref/ can120_default: can120_default {
|
||||||
group1 {
|
group1 {
|
||||||
psels = <NRF_PSEL(CAN_RX, 9, 4)>,
|
psels = <NRF_PSEL(CAN_RX, 9, 4)>,
|
||||||
|
|
|
@ -256,15 +256,15 @@ ipc0: &cpuapp_cpurad_ipc {
|
||||||
};
|
};
|
||||||
|
|
||||||
&exmif {
|
&exmif {
|
||||||
cs-gpios = <&gpio6 3 GPIO_ACTIVE_LOW>;
|
|
||||||
pinctrl-0 = <&exmif_default>;
|
pinctrl-0 = <&exmif_default>;
|
||||||
pinctrl-names = "default";
|
pinctrl-1 = <&exmif_sleep>;
|
||||||
|
pinctrl-names = "default", "sleep";
|
||||||
status = "okay";
|
status = "okay";
|
||||||
|
|
||||||
mx25uw63: mx25uw6345g@0 {
|
mx25uw63: mx25uw6345g@0 {
|
||||||
compatible = "jedec,spi-nor";
|
compatible = "jedec,mspi-nor";
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
reg = <0>;
|
reg = <0>;
|
||||||
spi-max-frequency = <DT_FREQ_M(48)>;
|
|
||||||
jedec-id = [c2 84 37];
|
jedec-id = [c2 84 37];
|
||||||
sfdp-bfp = [
|
sfdp-bfp = [
|
||||||
e5 20 8a ff ff ff ff 03 00 ff 00 ff 00 ff 00 ff
|
e5 20 8a ff ff ff ff 03 00 ff 00 ff 00 ff 00 ff
|
||||||
|
@ -277,6 +277,17 @@ ipc0: &cpuapp_cpurad_ipc {
|
||||||
has-dpd;
|
has-dpd;
|
||||||
t-enter-dpd = <10000>;
|
t-enter-dpd = <10000>;
|
||||||
t-exit-dpd = <30000>;
|
t-exit-dpd = <30000>;
|
||||||
|
reset-gpios = <&gpio6 12 GPIO_ACTIVE_LOW>;
|
||||||
|
t-reset-pulse = <10000>;
|
||||||
|
t-reset-recovery = <35000>;
|
||||||
|
|
||||||
|
mspi-max-frequency = <DT_FREQ_M(50)>;
|
||||||
|
mspi-io-mode = "MSPI_IO_MODE_OCTAL";
|
||||||
|
mspi-data-rate = "MSPI_DATA_RATE_SINGLE";
|
||||||
|
mspi-hardware-ce-num = <1>;
|
||||||
|
mspi-cpp-mode = "MSPI_CPP_MODE_0";
|
||||||
|
mspi-endian = "MSPI_BIG_ENDIAN";
|
||||||
|
mspi-ce-polarity = "MSPI_CE_ACTIVE_LOW";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -54,12 +54,37 @@
|
||||||
/omit-if-no-ref/ exmif_default: exmif_default {
|
/omit-if-no-ref/ exmif_default: exmif_default {
|
||||||
group1 {
|
group1 {
|
||||||
psels = <NRF_PSEL(EXMIF_CK, 6, 0)>,
|
psels = <NRF_PSEL(EXMIF_CK, 6, 0)>,
|
||||||
|
<NRF_PSEL(EXMIF_CS0, 6, 3)>,
|
||||||
|
<NRF_PSEL(EXMIF_RWDS, 6, 2)>,
|
||||||
<NRF_PSEL(EXMIF_DQ0, 6, 7)>,
|
<NRF_PSEL(EXMIF_DQ0, 6, 7)>,
|
||||||
<NRF_PSEL(EXMIF_DQ1, 6, 5)>;
|
<NRF_PSEL(EXMIF_DQ1, 6, 5)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ2, 6, 10)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ3, 6, 9)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ4, 6, 11)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ5, 6, 8)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ6, 6, 6)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ7, 6, 4)>;
|
||||||
nordic,drive-mode = <NRF_DRIVE_H0H1>;
|
nordic,drive-mode = <NRF_DRIVE_H0H1>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/omit-if-no-ref/ exmif_sleep: exmif_sleep {
|
||||||
|
group1 {
|
||||||
|
low-power-enable;
|
||||||
|
psels = <NRF_PSEL(EXMIF_CK, 6, 0)>,
|
||||||
|
<NRF_PSEL(EXMIF_CS0, 6, 3)>,
|
||||||
|
<NRF_PSEL(EXMIF_RWDS, 6, 2)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ0, 6, 7)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ1, 6, 5)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ2, 6, 10)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ3, 6, 9)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ4, 6, 11)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ5, 6, 8)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ6, 6, 6)>,
|
||||||
|
<NRF_PSEL(EXMIF_DQ7, 6, 4)>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
/omit-if-no-ref/ pwm130_default: pwm130_default {
|
/omit-if-no-ref/ pwm130_default: pwm130_default {
|
||||||
group1 {
|
group1 {
|
||||||
psels = <NRF_PSEL(PWM_OUT0, 9, 2)>;
|
psels = <NRF_PSEL(PWM_OUT0, 9, 2)>;
|
||||||
|
|
|
@ -242,15 +242,15 @@ ipc0: &cpuapp_cpurad_ipc {
|
||||||
};
|
};
|
||||||
|
|
||||||
&exmif {
|
&exmif {
|
||||||
cs-gpios = <&gpio6 3 GPIO_ACTIVE_LOW>;
|
|
||||||
pinctrl-0 = <&exmif_default>;
|
pinctrl-0 = <&exmif_default>;
|
||||||
pinctrl-names = "default";
|
pinctrl-1 = <&exmif_sleep>;
|
||||||
|
pinctrl-names = "default", "sleep";
|
||||||
status = "okay";
|
status = "okay";
|
||||||
|
|
||||||
mx25uw63: mx25uw6345g@0 {
|
mx25uw63: mx25uw6345g@0 {
|
||||||
compatible = "jedec,spi-nor";
|
compatible = "jedec,mspi-nor";
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
reg = <0>;
|
reg = <0>;
|
||||||
spi-max-frequency = <DT_FREQ_M(48)>;
|
|
||||||
jedec-id = [c2 84 37];
|
jedec-id = [c2 84 37];
|
||||||
sfdp-bfp = [
|
sfdp-bfp = [
|
||||||
e5 20 8a ff ff ff ff 03 00 ff 00 ff 00 ff 00 ff
|
e5 20 8a ff ff ff ff 03 00 ff 00 ff 00 ff 00 ff
|
||||||
|
@ -263,6 +263,17 @@ ipc0: &cpuapp_cpurad_ipc {
|
||||||
has-dpd;
|
has-dpd;
|
||||||
t-enter-dpd = <10000>;
|
t-enter-dpd = <10000>;
|
||||||
t-exit-dpd = <30000>;
|
t-exit-dpd = <30000>;
|
||||||
|
reset-gpios = <&gpio6 12 GPIO_ACTIVE_LOW>;
|
||||||
|
t-reset-pulse = <10000>;
|
||||||
|
t-reset-recovery = <35000>;
|
||||||
|
|
||||||
|
mspi-max-frequency = <DT_FREQ_M(50)>;
|
||||||
|
mspi-io-mode = "MSPI_IO_MODE_OCTAL";
|
||||||
|
mspi-data-rate = "MSPI_DATA_RATE_SINGLE";
|
||||||
|
mspi-hardware-ce-num = <1>;
|
||||||
|
mspi-cpp-mode = "MSPI_CPP_MODE_0";
|
||||||
|
mspi-endian = "MSPI_BIG_ENDIAN";
|
||||||
|
mspi-ce-polarity = "MSPI_CE_ACTIVE_LOW";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -5,8 +5,4 @@ description: Nordic External Memory Interface (EXMIF)
|
||||||
|
|
||||||
compatible: "nordic,nrf-exmif"
|
compatible: "nordic,nrf-exmif"
|
||||||
|
|
||||||
include: snps,designware-spi.yaml
|
include: snps,designware-ssi.yaml
|
||||||
|
|
||||||
properties:
|
|
||||||
reg:
|
|
||||||
required: true
|
|
|
@ -510,8 +510,8 @@
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
||||||
exmif: spi@95000 {
|
exmif: exmif@95000 {
|
||||||
compatible = "nordic,nrf-exmif";
|
compatible = "nordic,nrf-exmif", "snps,designware-ssi";
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
#size-cells = <0>;
|
#size-cells = <0>;
|
||||||
reg = <0x95000 0x500 0x95500 0xb00>;
|
reg = <0x95000 0x500 0x95500 0xb00>;
|
||||||
|
@ -520,7 +520,6 @@
|
||||||
power-domains = <&gpd NRF_GPD_FAST_ACTIVE0>;
|
power-domains = <&gpd NRF_GPD_FAST_ACTIVE0>;
|
||||||
clock-frequency = <DT_FREQ_M(400)>;
|
clock-frequency = <DT_FREQ_M(400)>;
|
||||||
fifo-depth = <32>;
|
fifo-depth = <32>;
|
||||||
max-xfer-size = <16>;
|
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -375,8 +375,8 @@
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
||||||
exmif: spi@95000 {
|
exmif: exmif@95000 {
|
||||||
compatible = "nordic,nrf-exmif";
|
compatible = "nordic,nrf-exmif", "snps,designware-ssi";
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
#size-cells = <0>;
|
#size-cells = <0>;
|
||||||
reg = <0x95000 0x500 0x95500 0xb00>;
|
reg = <0x95000 0x500 0x95500 0xb00>;
|
||||||
|
@ -384,7 +384,6 @@
|
||||||
interrupts = <149 NRF_DEFAULT_IRQ_PRIORITY>;
|
interrupts = <149 NRF_DEFAULT_IRQ_PRIORITY>;
|
||||||
clock-frequency = <DT_FREQ_M(400)>;
|
clock-frequency = <DT_FREQ_M(400)>;
|
||||||
fifo-depth = <32>;
|
fifo-depth = <32>;
|
||||||
max-xfer-size = <16>;
|
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue