diff mbox series

ARM: dts: imx: Enable PCIe and NVMe on Data Modul i.MX8M Mini eDM SBC

Message ID 20241129003548.253551-1-marex@denx.de
State Accepted
Commit 4835efca7a004fab62853f3e6bbd2854d1df503b
Delegated to: Fabio Estevam
Headers show
Series ARM: dts: imx: Enable PCIe and NVMe on Data Modul i.MX8M Mini eDM SBC | expand

Commit Message

Marek Vasut Nov. 29, 2024, 12:35 a.m. UTC
Enable PCIe/NVMe support on Data Modul i.MX8M Mini eDM SBC. Except for
the configuration options which are enabled, add slight adjustment
to board u-boot.dtsi, which is necessary as there is currently no
driver for the I2C PCIe clock generator. Since the generator is
strapped to be always on, it is possible to supplant the generator
functionality by fixed-clock.

Signed-off-by: Marek Vasut <marex@denx.de>
---
NOTE: Would be nice to have in v2025.01
---
Cc: "NXP i.MX U-Boot Team" <uboot-imx@nxp.com>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: Quentin Schulz <quentin.schulz@cherry.de>
Cc: Sean Anderson <seanga2@gmail.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Tom Rini <trini@konsulko.com>
Cc: u-boot@lists.denx.de
---
 .../arm/dts/imx8mm-data-modul-edm-sbc-u-boot.dtsi | 15 +++++++++++++++
 configs/imx8mm_data_modul_edm_sbc_defconfig       |  6 ++++++
 2 files changed, 21 insertions(+)

Comments

Fabio Estevam Nov. 30, 2024, 11:05 a.m. UTC | #1
On Thu, Nov 28, 2024 at 9:36 PM Marek Vasut <marex@denx.de> wrote:
>
> Enable PCIe/NVMe support on Data Modul i.MX8M Mini eDM SBC. Except for
> the configuration options which are enabled, add slight adjustment
> to board u-boot.dtsi, which is necessary as there is currently no
> driver for the I2C PCIe clock generator. Since the generator is
> strapped to be always on, it is possible to supplant the generator
> functionality by fixed-clock.
>
> Signed-off-by: Marek Vasut <marex@denx.de>
> ---
> NOTE: Would be nice to have in v2025.01

Applied it for master, thanks.
diff mbox series

Patch

diff --git a/arch/arm/dts/imx8mm-data-modul-edm-sbc-u-boot.dtsi b/arch/arm/dts/imx8mm-data-modul-edm-sbc-u-boot.dtsi
index f5e98bf7487..3a4f7d01b9e 100644
--- a/arch/arm/dts/imx8mm-data-modul-edm-sbc-u-boot.dtsi
+++ b/arch/arm/dts/imx8mm-data-modul-edm-sbc-u-boot.dtsi
@@ -16,6 +16,12 @@ 
 		dmo,ram-coding-gpios = <&gpio2 8 0>, <&gpio2 1 0>, <&gpio2 0 0>;
 	};
 
+	clk_pcie100: clk-pcie100 {
+		compatible = "fixed-clock";
+		#clock-cells = <0>;
+		clock-frequency = <100000000>;
+	};
+
 	wdt-reboot {
 		compatible = "wdt-reboot";
 		wdt = <&wdog1>;
@@ -35,6 +41,15 @@ 
 	bootph-pre-ram;
 };
 
+&pcie_phy {
+	clocks = <&clk_pcie100>;
+};
+
+&pcie0 {
+	clocks = <&clk IMX8MM_CLK_PCIE1_ROOT>, <&clk IMX8MM_CLK_PCIE1_AUX>,
+		 <&clk_pcie100>;
+};
+
 &pinctrl_hog_sbc {
 	bootph-pre-ram;
 };
diff --git a/configs/imx8mm_data_modul_edm_sbc_defconfig b/configs/imx8mm_data_modul_edm_sbc_defconfig
index 260cdd4a5e3..25795701d54 100644
--- a/configs/imx8mm_data_modul_edm_sbc_defconfig
+++ b/configs/imx8mm_data_modul_edm_sbc_defconfig
@@ -5,12 +5,18 @@  CONFIG_ARCH_IMX8M=y
 CONFIG_TARGET_IMX8MM_DATA_MODUL_EDM_SBC=y
 CONFIG_CI_UDC=y
 CONFIG_CLK_IMX8MM=y
+CONFIG_CMD_PCI=y
 CONFIG_DEFAULT_DEVICE_TREE="imx8mm-data-modul-edm-sbc"
 CONFIG_DEFAULT_FDT_FILE="imx8mm-data-modul-edm-sbc.dtb"
 CONFIG_DM_PMIC_BD71837=y
 CONFIG_DM_REGULATOR_BD71837=y
 CONFIG_IMX_CONFIG="board/data_modul/imx8mm_edm_sbc/imximage.cfg"
+CONFIG_NVME_PCI=y
+CONFIG_PCI=y
+CONFIG_PCIE_DW_IMX=y
+CONFIG_PHY=y
 CONFIG_PHYLIB=y
+CONFIG_PHY_IMX8M_PCIE=y
 CONFIG_PREBOOT="run dmo_preboot"
 CONFIG_SDP_LOADADDR=0x60000000
 CONFIG_SPL_BSS_MAX_SIZE=0x2000