From patchwork Mon Aug 22 17:52:44 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shenwei Wang X-Patchwork-Id: 12951008 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 5DE84C28D13 for ; Mon, 22 Aug 2022 17:56:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=1Beji+1x9PUZ9h2iNkwLhcIIlq2NxcWkZ13tVNx4q5k=; b=okkB0Zc3mIn/5H TSe/VvFr8lt+Iv7Magai+U2tzDbyJ96saTRMGDKazAqBxuTg7J8bRKyJTXf9uUILsO/pduJOrE/7N xuht6BmuaBw+FA6x7zIi5VAf+kjpEHcVMOF1ntGzV7vvXGSzYBAnEweAKt/VPd+CFx45pT/Or44zr YVZ9HhC2MVwF4+6kC4tN9Xcygham2taG+wA8pdBUv5UFmps+irqDDkt3y33NXbg2Vsw9n06h1wC6O cmfJWFWOT3oNJNrmXc9f2Yc8PAUv+kJc2o6+KvAmhaBjIeXwNC8P+341b+lM97qOu7WAkW7c4Ce7s 0J5K6YrDMfsXwp7hkRLw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1oQBdJ-00DH0V-Ru; Mon, 22 Aug 2022 17:54:44 +0000 Received: from mail-eopbgr50040.outbound.protection.outlook.com ([40.107.5.40] helo=EUR03-VE1-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oQBcQ-00DGXe-8R for linux-arm-kernel@lists.infradead.org; Mon, 22 Aug 2022 17:53:54 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jNAib0wYHO4MVxEi2WiXIG04VQZGp+XXqVdl+3UbrKaBuA301L6UQJVMKvj6OXVz1lzrAqedwO2IcJ7Y6tMhvzhQXvfIJp9PFsOOSCI5uS9AZ/eT6Jg/6VKRVWKe6jQ/YyYo/neQXAcIRZBt+DSwLTA0RpUN+iBUgFKzDnyFtJj+I+E/BJoKO9b1e2j+OdTYQ+sTURC9Y5uLHBwabFN327KuVD5Nup5ELySAJhSRa5pTfmkLLIkKuqAkM1RbMGrzRSMwTP350cg6bGm7IXlK2WwoWTyXJyP6nCvWwuXFYaa+8xuKGeLLofEcjAs3/rXII+pxpeInGpk8nIKRcf32hA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=/n+n7zJPnpG8IGDf0oet+gswMFVi9N2XfM/ZsowdNJg=; b=JykcTWsJZ/w4JzFxVXto9XV6kaFWTAeV/SHQU2MUAXd00Jo3UD49os016DHV4jTcJ9KBLpTq9sBQgcUG5scJ6EXlF+VXX9G708CQLZ/Bbu+Xa/tXu/3Sy+253oxc3CjcM8KXZUxxwmbuNUn8+HyAbvYcsGctOvuZ+iSMl//CkYshA8R6YC4S0FImJpP65M15/3hl1a5LpnUjGmNrcy1x9G0GDcB2GGAxbLZ5e20pOVthv/oYnIu/JsSdM4bybyS4N0Ew+BYashYF4K+Od2Dd6BKHxMNCrVfJ2MSvYDYXYYXi5UHP6HgpWuJ1/h7enRCQQD3laPc+84qnsgHOqPwsAQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/n+n7zJPnpG8IGDf0oet+gswMFVi9N2XfM/ZsowdNJg=; b=cTapDhKMdn4fjB1Yk2tkNxIsVgO29VBZ01W99QLRyptPXANbtMqtOPN4hpirBJvR13AeIe0QIjhqqQpyi1zk07CcEpjJFfIP67FDlaYzKwSy/3iBhiZUEMxK+xP0QtTAkTxcSLDlexbMeOshmGzMF7MAN6qkUyU5mm/7QRfHkD0= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AM9PR04MB8274.eurprd04.prod.outlook.com (2603:10a6:20b:3e8::23) by VI1PR0402MB3790.eurprd04.prod.outlook.com (2603:10a6:803:24::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5546.22; Mon, 22 Aug 2022 17:53:41 +0000 Received: from AM9PR04MB8274.eurprd04.prod.outlook.com ([fe80::747c:397f:a003:dbca]) by AM9PR04MB8274.eurprd04.prod.outlook.com ([fe80::747c:397f:a003:dbca%4]) with mapi id 15.20.5546.024; Mon, 22 Aug 2022 17:53:41 +0000 From: Shenwei Wang To: Rob Herring , Krzysztof Kozlowski , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Peng Fan Cc: devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, imx@lists.linux.dev, NXP Linux Team , Shenwei Wang Subject: [PATCH v6 4/5] arm64: dts: freescale: add i.MX8DXL SoC support Date: Mon, 22 Aug 2022 12:52:44 -0500 Message-Id: <20220822175245.222691-5-shenwei.wang@nxp.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220822175245.222691-1-shenwei.wang@nxp.com> References: <20220822175245.222691-1-shenwei.wang@nxp.com> X-ClientProxiedBy: BY5PR03CA0011.namprd03.prod.outlook.com (2603:10b6:a03:1e0::21) To AM9PR04MB8274.eurprd04.prod.outlook.com (2603:10a6:20b:3e8::23) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 45d4a5b4-b6ae-40bb-a3f9-08da84673fae X-MS-TrafficTypeDiagnostic: VI1PR0402MB3790:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: WTsW9ByPypn2WY0XVS51FQ8dnaYO62yz66kb6TCGsz4kSat3RjOs7tTh/9R4ez67YM1YdPmRSadC+3cPOTe3qT9O+sKcV9PGg6aIthpy3MBSfDkxBzyVyd7tg15s0JP7wl1a18Yl3yqHOBi737WFGbauiYPE8OPOt+3GwYByr6lk166eoj6htV837H8CcUSU9ii9+F1yaCGqp/Mt+1zjFSnpFrUPVHqbtkuae8byX9v6kihbTnQOYc77FC09oiTdI/a1yRkaX9zELx04MqMUm+Jip/nC8GhATRmIsPnWxd9adfA1mEhNVXSY32MNOmQvt+eN518fOioN27wvaegiqb1sJuynv3ErpGTBURN3lhnBidyq19RTzwdRT1+dY7XgGO9g81KzceFrRgluqfyzdZft/wdRafBAX5h/jrJw4g4WkpDadAvQ94gE6rIPdWpqI6YOlkWQ1txUTl56CYUN5+bgS1zf2Nkn7PwLGCv+Nby4JoYQtXznFqn8viawGELg7iRmxNCuerNdwiB80hzbkUByCWGxc6qvf0PJbRAuZVHOhdEXZKpH6nBPEHn2WmAVWbvpYLRQUt3E9chUxrVopdFpLADYDpBbAT2iQ+M5JxzUdLeAg5E8PVn1EquLBU8+HNk2RQ4pub41cTheWdZ+4/TJrU4nR2JFnlGEug9ICx53ATNbpFdSwtMcy4tiWs5deOv+w25/0ZqC3+wDfGm0cOxc0WLijba88EPKusjyt7kN7crcSzSaUpqBFmuNCrTU X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM9PR04MB8274.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(4636009)(396003)(39860400002)(366004)(136003)(346002)(376002)(36756003)(54906003)(2616005)(110136005)(186003)(1076003)(38100700002)(86362001)(83380400001)(38350700002)(6636002)(6486002)(316002)(4326008)(8676002)(41300700001)(66556008)(66476007)(66946007)(478600001)(2906002)(52116002)(55236004)(8936002)(26005)(6506007)(30864003)(44832011)(6512007)(5660300002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: xtX9/VR/OMl2xC1XDPLC8L/3Zo9nEcD0dUSuC3BddjgaZVfMqg4c7w4gtwOT7KoIxiNrsatc2xgqzoFEOiKfgq8hmgewthurrsaqLE7CBWcK50IsaYEOQliWOI9oZPnYn6IwDj+U6dSICmumgRjeJpVNXxsPC4NKPsUAVdcKZzRGRbb5jq4luIaFjLr/71J5JZQKdCpY4tVt9lI6gG8dCKZ6nfpnKJ9z1sY2E+EMYsEi1UNIHtZNsoA5KsMwP4023HnUbhML1gFEMX7Q8hkEwpM5CxIxiXVS3J/99nkowz2vo09sQ8huqTZ49puWdzEv7J1+fQMpBAa9eg+xpn8vnKOUxzlVWI1Q/5xUVDyaeOYNw7H+mJF0G/yYQ6/I2+cAxROXr8vw3ftoA8c8+LnxfzazplX0TbQdRKRx/ZsrxSj4ITGrvK4SOZufnBwhQQPv4qDjhpX8PT1z+rU5pYgDIsJE7wc+zps+l3MxuSLyMr89vMnlzzqFS8ZIOsMeiU0UCPGqBtYXlqALe75rg5dMnhRYeLAlJqB52AnpqyORAXqgigEfy+MQbWqB3MZa3AoYt3ym1V1RGisM5cZAypH7uHuHED8tC4AHac3YhZLyKsJkG7QDshb0zpHm/FkKM54P5NFg2QdUFGZzKpFTI/ODazK41hXKCISeEgyPsrui951wPS7JkioKbu6d6zpcl5eM0I54dTFHoXLXvbAjUsq4Hb/v4YxUdLvZkGa4XF7w+MvNZIeAL4mdXWcFn9+BvaI5eblGH4NWCsZR34gTHBsvgaCneqWwiK3YOGuwrA7RkiJmkPsn3f/KPkdvyz8nDJ5W3lod6FNKtMkKK+EJWNe1lhS3rDIg225Zo+a3aFv3mO6UYnhXJtojPrH8dvpg2u/0xS34xKwmw3Lc46saJs9XLQciFiVQwifFfZCB2jH6JftzrfVLMRT0pSg047SkCsAtTsu/Er5aFx8xacH1JKUgOhkhvyw7doMCOU/UW51mj2sZI1HVw+iIgT5ajpozitHgLB+yGNVMCCub1yZ49s0ZXQys3l5dGYNQVeXc6a9vplxw2cHujWNAZ7mX1YOx/gDC0lblfR7SS+E9i5PJP3n58/kfxzHgiceEyCh79V3XHgnbyyv9V97otdYxVyzb8WQ7T5DvNBvia6+5ffe/3ETGl6SXlkLsfeCKSK4fbSj3rZQtZvF6wWYoyP6YKCrh0W+XkFG/PP1MGUT9EFiQqlN0RlU+W3aX9HwbvO5IgsX40s8zfnIlAUZW7YePYPEWlcE6sdqHvXdpI597MdZERuCNVVlJkpvVxQxG4+eKUpRy25wSIsjuOsu+l5LFHRQUqPOg2YChRb/dzOcWTvqdVVbEmD07sMVkMMr7jcxM57h6h41aNrYseMUDbnVHpofVcJ2iS23lmTigsvlH1M3qfsRhDSy4/UDMAKmngBLxxvT0aFPnq31jygDDCHLoaGyw5pM3ItH1BIaaywnV3RHmHKI0BrhZDbMpBc9Q8gktqQpCRyZ5NN9MM/LBt07DmiHSk9kJQ3gtpp9qhijYoAnV6fzZGGux7dDpfDMWSZ64TNuCf2L89Yyf+lEG6tWy3B04OpbZ X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 45d4a5b4-b6ae-40bb-a3f9-08da84673fae X-MS-Exchange-CrossTenant-AuthSource: AM9PR04MB8274.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Aug 2022 17:53:41.3421 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: FEbYYVplLPazZ7KZt1zQ/fLKnwcbZrYVN/eSZF7dDpuBgA7DMfw7n0H5+ONsl/f3ZssxwAiHGbvP6ctcKqJIag== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0402MB3790 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220822_105351_170291_DC37AE7E X-CRM114-Status: GOOD ( 16.34 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org i.MX8DXL is a device targeting the automotive and industrial market segments. The chip is designed to achieve both high performance and low power consumption. It has a dual (2x) Cortex-A35 processor. This patch adds the basic support for i.MX8DXL SoC. Signed-off-by: Shenwei Wang --- .../boot/dts/freescale/imx8dxl-ss-adma.dtsi | 52 ++++ .../boot/dts/freescale/imx8dxl-ss-conn.dtsi | 142 +++++++++++ .../boot/dts/freescale/imx8dxl-ss-ddr.dtsi | 9 + .../boot/dts/freescale/imx8dxl-ss-lsio.dtsi | 74 ++++++ arch/arm64/boot/dts/freescale/imx8dxl.dtsi | 238 ++++++++++++++++++ 5 files changed, 515 insertions(+) create mode 100644 arch/arm64/boot/dts/freescale/imx8dxl-ss-adma.dtsi create mode 100644 arch/arm64/boot/dts/freescale/imx8dxl-ss-conn.dtsi create mode 100644 arch/arm64/boot/dts/freescale/imx8dxl-ss-ddr.dtsi create mode 100644 arch/arm64/boot/dts/freescale/imx8dxl-ss-lsio.dtsi create mode 100644 arch/arm64/boot/dts/freescale/imx8dxl.dtsi diff --git a/arch/arm64/boot/dts/freescale/imx8dxl-ss-adma.dtsi b/arch/arm64/boot/dts/freescale/imx8dxl-ss-adma.dtsi new file mode 100644 index 000000000000..795d1d472fae --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx8dxl-ss-adma.dtsi @@ -0,0 +1,52 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Copyright 2019~2020, 2022 NXP + */ + +&audio_ipg_clk { + clock-frequency = <160000000>; +}; + +&dma_ipg_clk { + clock-frequency = <160000000>; +}; + +&i2c0 { + compatible = "fsl,imx8dxl-lpi2c", "fsl,imx8qxp-lpi2c", "fsl,imx7ulp-lpi2c"; + interrupts = ; +}; + +&i2c1 { + compatible = "fsl,imx8dxl-lpi2c", "fsl,imx8qxp-lpi2c", "fsl,imx7ulp-lpi2c"; + interrupts = ; +}; + +&i2c2 { + compatible = "fsl,imx8qxp-lpi2c", "fsl,imx7ulp-lpi2c"; + interrupts = ; +}; + +&i2c3 { + compatible = "fsl,imx8qxp-lpi2c", "fsl,imx7ulp-lpi2c"; + interrupts = ; +}; + +&lpuart0 { + compatible = "fsl,imx8qxp-lpuart", "fsl,imx7ulp-lpuart"; + interrupts = ; +}; + +&lpuart1 { + compatible = "fsl,imx8qxp-lpuart", "fsl,imx7ulp-lpuart"; + interrupts = ; +}; + +&lpuart2 { + compatible = "fsl,imx8qxp-lpuart", "fsl,imx7ulp-lpuart"; + interrupts = ; +}; + +&lpuart3 { + compatible = "fsl,imx8qxp-lpuart", "fsl,imx7ulp-lpuart"; + interrupts = ; +}; diff --git a/arch/arm64/boot/dts/freescale/imx8dxl-ss-conn.dtsi b/arch/arm64/boot/dts/freescale/imx8dxl-ss-conn.dtsi new file mode 100644 index 000000000000..69c4849f2132 --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx8dxl-ss-conn.dtsi @@ -0,0 +1,142 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Copyright 2019~2020, 2022 NXP + */ + +/delete-node/ &enet1_lpcg; +/delete-node/ &fec2; + +&conn_subsys { + conn_enet0_root_clk: clock-conn-enet0-root { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <250000000>; + clock-output-names = "conn_enet0_root_clk"; + }; + + eqos: ethernet@5b050000 { + compatible = "nxp,imx8dxl-dwmac-eqos", "snps,dwmac-5.10a"; + reg = <0x5b050000 0x10000>; + interrupt-parent = <&gic>; + interrupts = , + ; + interrupt-names = "eth_wake_irq", "macirq"; + clocks = <&eqos_lpcg IMX_LPCG_CLK_4>, + <&eqos_lpcg IMX_LPCG_CLK_6>, + <&eqos_lpcg IMX_LPCG_CLK_0>, + <&eqos_lpcg IMX_LPCG_CLK_5>, + <&eqos_lpcg IMX_LPCG_CLK_2>; + clock-names = "stmmaceth", "pclk", "ptp_ref", "tx", "mem"; + assigned-clocks = <&clk IMX_SC_R_ENET_1 IMX_SC_PM_CLK_PER>; + assigned-clock-rates = <125000000>; + power-domains = <&pd IMX_SC_R_ENET_1>; + status = "disabled"; + }; + + usbotg2: usb@5b0e0000 { + compatible = "fsl,imx8dxl-usb", "fsl,imx7ulp-usb"; + reg = <0x5b0e0000 0x200>; + interrupt-parent = <&gic>; + interrupts = ; + fsl,usbphy = <&usbphy2>; + fsl,usbmisc = <&usbmisc2 0>; + /* + * usbotg1 and usbotg2 share one clcok. + * scu firmware disables the access to the clock and keeps + * it always on in case other core (M4) uses one of these. + */ + clocks = <&clk_dummy>; + ahb-burst-config = <0x0>; + tx-burst-size-dword = <0x10>; + rx-burst-size-dword = <0x10>; + #stream-id-cells = <1>; + power-domains = <&pd IMX_SC_R_USB_1>; + status = "disabled"; + + clk_dummy: clock-dummy { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <0>; + clock-output-names = "clk_dummy"; + }; + }; + + usbmisc2: usbmisc@5b0e0200 { + #index-cells = <1>; + compatible = "fsl,imx7ulp-usbmisc"; + reg = <0x5b0e0200 0x200>; + }; + + usbphy2: usbphy@0x5b110000 { + compatible = "fsl,imx8dxl-usbphy", "fsl,imx7ulp-usbphy"; + reg = <0x5b110000 0x1000>; + clocks = <&usb2_2_lpcg IMX_LPCG_CLK_7>; + power-domains = <&pd IMX_SC_R_USB_1_PHY>; + status = "disabled"; + }; + + eqos_lpcg: clock-controller@5b240000 { + compatible = "fsl,imx8qxp-lpcg"; + reg = <0x5b240000 0x10000>; + #clock-cells = <1>; + clocks = <&conn_enet0_root_clk>, + <&conn_axi_clk>, + <&conn_axi_clk>, + <&clk IMX_SC_R_ENET_1 IMX_SC_PM_CLK_PER>, + <&conn_ipg_clk>; + clock-indices = , , + , , + ; + clock-output-names = "eqos_ptp", + "eqos_mem_clk", + "eqos_aclk", + "eqos_clk", + "eqos_csr_clk"; + power-domains = <&pd IMX_SC_R_ENET_1>; + }; + + usb2_2_lpcg: clock-controller@5b280000 { + compatible = "fsl,imx8qxp-lpcg"; + reg = <0x5b280000 0x10000>; + #clock-cells = <1>; + clock-indices = ; + clocks = <&conn_ipg_clk>; + clock-output-names = "usboh3_2_phy_ipg_clk"; + power-domains = <&pd IMX_SC_R_USB_1_PHY>; + }; + +}; + +&enet0_lpcg { + clocks = <&conn_enet0_root_clk>, + <&conn_enet0_root_clk>, + <&conn_axi_clk>, + <&clk IMX_SC_R_ENET_0 IMX_SC_C_TXCLK>, + <&conn_ipg_clk>, + <&conn_ipg_clk>; +}; + +&fec1 { + compatible = "fsl,imx8qm-fec"; + interrupts = , + , + , + ; + assigned-clocks = <&clk IMX_SC_R_ENET_0 IMX_SC_C_CLKDIV>; + assigned-clock-rates = <125000000>; +}; + +&usdhc1 { + compatible = "fsl,imx8dxl-usdhc", "fsl,imx8qxp-usdhc"; + interrupts = ; +}; + +&usdhc2 { + compatible = "fsl,imx8dxl-usdhc", "fsl,imx8qxp-usdhc"; + interrupts = ; +}; + +&usdhc3 { + compatible = "fsl,imx8dxl-usdhc", "fsl,imx8qxp-usdhc"; + interrupts = ; +}; diff --git a/arch/arm64/boot/dts/freescale/imx8dxl-ss-ddr.dtsi b/arch/arm64/boot/dts/freescale/imx8dxl-ss-ddr.dtsi new file mode 100644 index 000000000000..550f513708d8 --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx8dxl-ss-ddr.dtsi @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Copyright 2020 NXP + */ + +&ddr_pmu0 { + compatible = "fsl,imx8-ddr-pmu"; + interrupts = ; +}; diff --git a/arch/arm64/boot/dts/freescale/imx8dxl-ss-lsio.dtsi b/arch/arm64/boot/dts/freescale/imx8dxl-ss-lsio.dtsi new file mode 100644 index 000000000000..815bd987b09b --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx8dxl-ss-lsio.dtsi @@ -0,0 +1,74 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Copyright 2019~2020, 2022 NXP + */ + +&lsio_gpio0 { + compatible = "fsl,imx8dxl-gpio", "fsl,imx35-gpio"; + interrupts = ; +}; + +&lsio_gpio1 { + compatible = "fsl,imx8dxl-gpio", "fsl,imx35-gpio"; + interrupts = ; +}; + +&lsio_gpio2 { + compatible = "fsl,imx8dxl-gpio", "fsl,imx35-gpio"; + interrupts = ; +}; + +&lsio_gpio3 { + compatible = "fsl,imx8dxl-gpio", "fsl,imx35-gpio"; + interrupts = ; +}; + +&lsio_gpio4 { + compatible = "fsl,imx8dxl-gpio", "fsl,imx35-gpio"; + interrupts = ; +}; + +&lsio_gpio5 { + compatible = "fsl,imx8dxl-gpio", "fsl,imx35-gpio"; + interrupts = ; +}; + +&lsio_gpio6 { + compatible = "fsl,imx8dxl-gpio", "fsl,imx35-gpio"; + interrupts = ; +}; + +&lsio_gpio7 { + compatible = "fsl,imx8dxl-gpio", "fsl,imx35-gpio"; + interrupts = ; +}; + +&lsio_mu0 { + compatible = "fsl,imx8qxp-mu", "fsl,imx6sx-mu"; + interrupts = ; +}; + +&lsio_mu1 { + compatible = "fsl,imx8-mu-scu", "fsl,imx8qxp-mu", "fsl,imx6sx-mu"; + interrupts = ; +}; + +&lsio_mu2 { + compatible = "fsl,imx8-mu-scu", "fsl,imx8qxp-mu", "fsl,imx6sx-mu"; + interrupts = ; +}; + +&lsio_mu3 { + compatible = "fsl,imx8-mu-scu", "fsl,imx8qxp-mu", "fsl,imx6sx-mu"; + interrupts = ; +}; + +&lsio_mu4 { + compatible = "fsl,imx8-mu-scu", "fsl,imx8qxp-mu", "fsl,imx6sx-mu"; + interrupts = ; +}; + +&lsio_mu5 { + compatible = "fsl,imx8qxp-mu", "fsl,imx6sx-mu"; + interrupts = ; +}; diff --git a/arch/arm64/boot/dts/freescale/imx8dxl.dtsi b/arch/arm64/boot/dts/freescale/imx8dxl.dtsi new file mode 100644 index 000000000000..5ddbda0b4def --- /dev/null +++ b/arch/arm64/boot/dts/freescale/imx8dxl.dtsi @@ -0,0 +1,238 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Copyright 2019~2020, 2022 NXP + */ + +#include +#include +#include +#include +#include +#include +#include + +/ { + interrupt-parent = <&gic>; + #address-cells = <2>; + #size-cells = <2>; + + aliases { + ethernet0 = &fec1; + ethernet1 = &eqos; + gpio0 = &lsio_gpio0; + gpio1 = &lsio_gpio1; + gpio2 = &lsio_gpio2; + gpio3 = &lsio_gpio3; + gpio4 = &lsio_gpio4; + gpio5 = &lsio_gpio5; + gpio6 = &lsio_gpio6; + gpio7 = &lsio_gpio7; + mu1 = &lsio_mu1; + }; + + cpus: cpus { + #address-cells = <2>; + #size-cells = <0>; + + /* We have 1 clusters with 2 Cortex-A35 cores */ + A35_0: cpu@0 { + device_type = "cpu"; + compatible = "arm,cortex-a35"; + reg = <0x0 0x0>; + enable-method = "psci"; + next-level-cache = <&A35_L2>; + clocks = <&clk IMX_SC_R_A35 IMX_SC_PM_CLK_CPU>; + #cooling-cells = <2>; + operating-points-v2 = <&a35_opp_table>; + }; + + A35_1: cpu@1 { + device_type = "cpu"; + compatible = "arm,cortex-a35"; + reg = <0x0 0x1>; + enable-method = "psci"; + next-level-cache = <&A35_L2>; + clocks = <&clk IMX_SC_R_A35 IMX_SC_PM_CLK_CPU>; + #cooling-cells = <2>; + operating-points-v2 = <&a35_opp_table>; + }; + + A35_L2: l2-cache0 { + compatible = "cache"; + }; + }; + + a35_opp_table: opp-table { + compatible = "operating-points-v2"; + opp-shared; + + opp-900000000 { + opp-hz = /bits/ 64 <900000000>; + opp-microvolt = <1000000>; + clock-latency-ns = <150000>; + }; + + opp-1200000000 { + opp-hz = /bits/ 64 <1200000000>; + opp-microvolt = <1100000>; + clock-latency-ns = <150000>; + opp-suspend; + }; + }; + + gic: interrupt-controller@51a00000 { + compatible = "arm,gic-v3"; + reg = <0x0 0x51a00000 0 0x10000>, /* GIC Dist */ + <0x0 0x51b00000 0 0xc0000>; /* GICR (RD_base + SGI_base) */ + #interrupt-cells = <3>; + interrupt-controller; + interrupts = ; + }; + + reserved-memory { + #address-cells = <2>; + #size-cells = <2>; + ranges; + + dsp_reserved: dsp@92400000 { + reg = <0 0x92400000 0 0x2000000>; + no-map; + }; + }; + + pmu { + compatible = "arm,armv8-pmuv3"; + interrupts = ; + }; + + psci { + compatible = "arm,psci-1.0"; + method = "smc"; + }; + + system-controller { + compatible = "fsl,imx-scu"; + mbox-names = "tx0", + "rx0", + "gip3"; + mboxes = <&lsio_mu1 0 0 + &lsio_mu1 1 0 + &lsio_mu1 3 3>; + + pd: power-controller { + compatible = "fsl,scu-pd"; + #power-domain-cells = <1>; + wakeup-irq = <160 163 235 236 237 228 229 230 231 238 + 239 240 166 169>; + }; + + clk: clock-controller { + compatible = "fsl,imx8dxl-clk", "fsl,scu-clk"; + #clock-cells = <2>; + clocks = <&xtal32k &xtal24m>; + clock-names = "xtal_32KHz", "xtal_24Mhz"; + }; + + iomuxc: pinctrl { + compatible = "fsl,imx8dxl-iomuxc"; + }; + + ocotp: ocotp { + compatible = "fsl,imx8qxp-scu-ocotp"; + #address-cells = <1>; + #size-cells = <1>; + + fec_mac0: mac@2c4 { + reg = <0x2c4 6>; + }; + + fec_mac1: mac@2c6 { + reg = <0x2c6 6>; + }; + }; + + rtc: rtc { + compatible = "fsl,imx8qxp-sc-rtc"; + }; + + sc_pwrkey: keys { + compatible = "fsl,imx8qxp-sc-key", "fsl,imx-sc-key"; + linux,keycode = ; + wakeup-source; + }; + + watchdog { + compatible = "fsl,imx-sc-wdt"; + timeout-sec = <60>; + }; + + tsens: thermal-sensor { + compatible = "fsl,imx-sc-thermal"; + #thermal-sensor-cells = <1>; + }; + }; + + timer { + compatible = "arm,armv8-timer"; + interrupts = , /* Physical Secure */ + , /* Physical Non-Secure */ + , /* Virtual */ + ; /* Hypervisor */ + }; + + thermal_zones: thermal-zones { + cpu-thermal0 { + polling-delay-passive = <250>; + polling-delay = <2000>; + thermal-sensors = <&tsens IMX_SC_R_SYSTEM>; + + trips { + cpu_alert0: trip0 { + temperature = <107000>; + hysteresis = <2000>; + type = "passive"; + }; + cpu_crit0: trip1 { + temperature = <127000>; + hysteresis = <2000>; + type = "critical"; + }; + }; + + cooling-maps { + map0 { + trip = <&cpu_alert0>; + cooling-device = + <&A35_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, + <&A35_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; + }; + }; + }; + }; + + /* The two values below cannot be changed by the board */ + xtal32k: clock-xtal32k { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <32768>; + clock-output-names = "xtal_32KHz"; + }; + + xtal24m: clock-xtal24m { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <24000000>; + clock-output-names = "xtal_24MHz"; + }; + + /* sorted in register address */ + #include "imx8-ss-adma.dtsi" + #include "imx8-ss-conn.dtsi" + #include "imx8-ss-ddr.dtsi" + #include "imx8-ss-lsio.dtsi" +}; + +#include "imx8dxl-ss-adma.dtsi" +#include "imx8dxl-ss-conn.dtsi" +#include "imx8dxl-ss-lsio.dtsi" +#include "imx8dxl-ss-ddr.dtsi"