From andrew at codeconstruct.com.au Tue Jul 1 10:16:50 2025 From: andrew at codeconstruct.com.au (Andrew Jeffery) Date: Tue, 01 Jul 2025 09:46:50 +0930 Subject: [PATCH v5] ARM: dts: aspeed: yosemite4: add gpio name for uart mux sel In-Reply-To: <20250630073138.3315947-1-marshall_zhan@wiwynn.com> References: <20250630073138.3315947-1-marshall_zhan@wiwynn.com> Message-ID: <175132901095.54792.12200042730026640443.b4-ty@codeconstruct.com.au> On Mon, 30 Jun 2025 15:31:37 +0800, Marshall Zhan wrote: > Add gpio line name to support multiplexed console > > Thanks, I've applied this to be picked up through the BMC tree. -- Andrew Jeffery From jammy_huang at aspeedtech.com Wed Jul 2 11:19:54 2025 From: jammy_huang at aspeedtech.com (Jammy Huang) Date: Wed, 2 Jul 2025 09:19:54 +0800 Subject: [PATCH v6 0/2] ASPEED: Add mailbox driver for AST2700 series Message-ID: <20250702011956.47479-1-jammy_huang@aspeedtech.com> Add mailbox controller driver for AST27XX SoCs, which provides independent tx/rx mailbox between different processors. There are 4 channels for each tx/rx mailbox and each channel has an 32-byte FIFO. v6 changes: - Update document 1. Update description to preserve paragraphs. 2. Update for property, reg. 3. Add reg-names. 4. Add 'Reviewed-by' from Krok. - Update driver 1. Use devm_platform_ioremap_resource_byname since we add reg-names now. 2. Update error code for ch not enabled. v5 changes: - Update document 1. Separate reg from 1 to 2. 1st is tx controller; 2nd is rx. 2. Remove 'Reviewed-by' since the patch has changed. - Update driver, no functional changes. 1. Update since there is 2 reg base now. 2. Refine reg definitions 3. Add spinlock to protect registers 4. Use bool as return value for ast2700_mbox_tx_done 5. Rename variable from drv_data to dev_data. v4 changes: - Update driver, no functional changes. 1. Remove unused variable, rx_buff, in struct ast2700_mbox. 2. Remove unneeded cast on device_get_match_data. 3. Remove the usage of writel/readl_relaxed. 4. Improve readability. v3 changes: - Correct document 1. Use 32-bit addressing in dts example property, reg. v2 changes: - Update document 1. Correct error in dts example. 2. Drop description for mbox-cell per suggestion previously. Jammy Huang (2): dt-bindings: mailbox: Add ASPEED AST2700 series SoC mailbox: aspeed: add mailbox driver for AST27XX series SoC .../mailbox/aspeed,ast2700-mailbox.yaml | 68 +++++ drivers/mailbox/Kconfig | 8 + drivers/mailbox/Makefile | 2 + drivers/mailbox/ast2700-mailbox.c | 240 ++++++++++++++++++ 4 files changed, 318 insertions(+) create mode 100644 Documentation/devicetree/bindings/mailbox/aspeed,ast2700-mailbox.yaml create mode 100644 drivers/mailbox/ast2700-mailbox.c base-commit: ec7714e4947909190ffb3041a03311a975350fe0 -- 2.25.1 From jammy_huang at aspeedtech.com Wed Jul 2 11:19:55 2025 From: jammy_huang at aspeedtech.com (Jammy Huang) Date: Wed, 2 Jul 2025 09:19:55 +0800 Subject: [PATCH v6 1/2] dt-bindings: mailbox: Add ASPEED AST2700 series SoC In-Reply-To: <20250702011956.47479-1-jammy_huang@aspeedtech.com> References: <20250702011956.47479-1-jammy_huang@aspeedtech.com> Message-ID: <20250702011956.47479-2-jammy_huang@aspeedtech.com> Introduce the mailbox module for AST27XX series SoC, which is responsible for interchanging messages between asymmetric processors. Signed-off-by: Jammy Huang Reviewed-by: Krzysztof Kozlowski --- .../mailbox/aspeed,ast2700-mailbox.yaml | 68 +++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 Documentation/devicetree/bindings/mailbox/aspeed,ast2700-mailbox.yaml diff --git a/Documentation/devicetree/bindings/mailbox/aspeed,ast2700-mailbox.yaml b/Documentation/devicetree/bindings/mailbox/aspeed,ast2700-mailbox.yaml new file mode 100644 index 000000000000..600e2d63fccd --- /dev/null +++ b/Documentation/devicetree/bindings/mailbox/aspeed,ast2700-mailbox.yaml @@ -0,0 +1,68 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/mailbox/aspeed,ast2700-mailbox.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: ASPEED AST2700 mailbox controller + +maintainers: + - Jammy Huang + +description: > + ASPEED AST2700 has multiple processors that need to communicate with each + other. The mailbox controller provides a way for these processors to send + messages to each other. It is a hardware-based inter-processor communication + mechanism that allows processors to send and receive messages through + dedicated channels. + + The mailbox's tx/rx are independent, meaning that one processor can send a + message while another processor is receiving a message simultaneously. + There are 4 channels available for both tx and rx operations. Each channel + has a FIFO buffer that can hold messages of a fixed size (32 bytes in this + case). + + The mailbox controller also supports interrupt generation, allowing + processors to notify each other when a message is available or when an event + occurs. + +properties: + compatible: + const: aspeed,ast2700-mailbox + + reg: + items: + - description: TX control register + - description: RX control register + + reg-names: + items: + - const: tx + - const: rx + + interrupts: + maxItems: 1 + + "#mbox-cells": + const: 1 + +required: + - compatible + - reg + - reg-names + - interrupts + - "#mbox-cells" + +additionalProperties: false + +examples: + - | + #include + + mailbox at 12c1c200 { + compatible = "aspeed,ast2700-mailbox"; + reg = <0x12c1c200 0x100>, <0x12c1c300 0x100>; + reg-names = "tx", "rx"; + interrupts = ; + #mbox-cells = <1>; + }; -- 2.25.1 From jammy_huang at aspeedtech.com Wed Jul 2 11:19:56 2025 From: jammy_huang at aspeedtech.com (Jammy Huang) Date: Wed, 2 Jul 2025 09:19:56 +0800 Subject: [PATCH v6 2/2] mailbox: aspeed: add mailbox driver for AST27XX series SoC In-Reply-To: <20250702011956.47479-1-jammy_huang@aspeedtech.com> References: <20250702011956.47479-1-jammy_huang@aspeedtech.com> Message-ID: <20250702011956.47479-3-jammy_huang@aspeedtech.com> Add mailbox controller driver for AST27XX SoCs, which provides independent tx/rx mailbox between different processors. There are 4 channels for each tx/rx mailbox and each channel has an 32-byte FIFO. Signed-off-by: Jammy Huang --- drivers/mailbox/Kconfig | 8 + drivers/mailbox/Makefile | 2 + drivers/mailbox/ast2700-mailbox.c | 240 ++++++++++++++++++++++++++++++ 3 files changed, 250 insertions(+) create mode 100644 drivers/mailbox/ast2700-mailbox.c diff --git a/drivers/mailbox/Kconfig b/drivers/mailbox/Kconfig index 68eeed660a4a..1c38cd570091 100644 --- a/drivers/mailbox/Kconfig +++ b/drivers/mailbox/Kconfig @@ -340,4 +340,12 @@ config THEAD_TH1520_MBOX kernel is running, and E902 core used for power management among other things. +config AST2700_MBOX + tristate "ASPEED AST2700 IPC driver" + depends on ARCH_ASPEED || COMPILE_TEST + help + Mailbox driver implementation for ASPEED AST27XX SoCs. This driver + can be used to send message between different processors in SoC. + The driver provides mailbox support for sending interrupts to the + clients. Say Y here if you want to build this driver. endif diff --git a/drivers/mailbox/Makefile b/drivers/mailbox/Makefile index 13a3448b3271..9a9add9a7548 100644 --- a/drivers/mailbox/Makefile +++ b/drivers/mailbox/Makefile @@ -72,3 +72,5 @@ obj-$(CONFIG_QCOM_CPUCP_MBOX) += qcom-cpucp-mbox.o obj-$(CONFIG_QCOM_IPCC) += qcom-ipcc.o obj-$(CONFIG_THEAD_TH1520_MBOX) += mailbox-th1520.o + +obj-$(CONFIG_AST2700_MBOX) += ast2700-mailbox.o diff --git a/drivers/mailbox/ast2700-mailbox.c b/drivers/mailbox/ast2700-mailbox.c new file mode 100644 index 000000000000..6d9269e89979 --- /dev/null +++ b/drivers/mailbox/ast2700-mailbox.c @@ -0,0 +1,240 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* + * Copyright Aspeed Technology Inc. (C) 2025. All rights reserved + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +/* Each bit in the register represents an IPC ID */ +#define IPCR_TX_TRIG 0x00 +#define IPCR_ENABLE 0x04 +#define IPCR_STATUS 0x08 +#define RX_IRQ(n) BIT(n) +#define RX_IRQ_MASK 0xf +#define IPCR_DATA 0x10 + +struct ast2700_mbox_data { + u8 num_chans; + u8 msg_size; +}; + +struct ast2700_mbox { + struct mbox_controller mbox; + u8 msg_size; + void __iomem *tx_regs; + void __iomem *rx_regs; + spinlock_t lock; +}; + +static inline int ch_num(struct mbox_chan *chan) +{ + return chan - chan->mbox->chans; +} + +static inline bool ast2700_mbox_tx_done(struct ast2700_mbox *mb, int idx) +{ + return !(readl(mb->tx_regs + IPCR_STATUS) & BIT(idx)); +} + +static irqreturn_t ast2700_mbox_irq(int irq, void *p) +{ + struct ast2700_mbox *mb = p; + void __iomem *data_reg; + int num_words; + u32 *word_data; + u32 status; + int n; + + /* Only examine channels that are currently enabled. */ + status = readl(mb->rx_regs + IPCR_ENABLE) & + readl(mb->rx_regs + IPCR_STATUS); + + if (!(status & RX_IRQ_MASK)) + return IRQ_NONE; + + for (n = 0; n < mb->mbox.num_chans; ++n) { + struct mbox_chan *chan = &mb->mbox.chans[n]; + + if (!(status & RX_IRQ(n))) + continue; + + /* Read the message data */ + for (data_reg = mb->rx_regs + IPCR_DATA + mb->msg_size * n, + word_data = chan->con_priv, + num_words = (mb->msg_size / sizeof(u32)); + num_words; + num_words--, data_reg += sizeof(u32), word_data++) + *word_data = readl(data_reg); + + mbox_chan_received_data(chan, chan->con_priv); + + /* The IRQ can be cleared only once the FIFO is empty. */ + writel(RX_IRQ(n), mb->rx_regs + IPCR_STATUS); + } + + return IRQ_HANDLED; +} + +static int ast2700_mbox_send_data(struct mbox_chan *chan, void *data) +{ + struct ast2700_mbox *mb = dev_get_drvdata(chan->mbox->dev); + void __iomem *data_reg; + u32 *word_data; + int num_words; + int idx = ch_num(chan); + + if (!(readl(mb->tx_regs + IPCR_ENABLE) & BIT(idx))) { + dev_warn(mb->mbox.dev, "%s: Ch-%d not enabled yet\n", __func__, idx); + return -ENODEV; + } + + if (!(ast2700_mbox_tx_done(mb, idx))) { + dev_warn(mb->mbox.dev, "%s: Ch-%d last data has not finished\n", __func__, idx); + return -EBUSY; + } + + /* Write the message data */ + for (data_reg = mb->tx_regs + IPCR_DATA + mb->msg_size * idx, + word_data = (u32 *)data, + num_words = (mb->msg_size / sizeof(u32)); + num_words; + num_words--, data_reg += sizeof(u32), word_data++) + writel(*word_data, data_reg); + + writel(BIT(idx), mb->tx_regs + IPCR_TX_TRIG); + dev_dbg(mb->mbox.dev, "%s: Ch-%d sent\n", __func__, idx); + + return 0; +} + +static int ast2700_mbox_startup(struct mbox_chan *chan) +{ + struct ast2700_mbox *mb = dev_get_drvdata(chan->mbox->dev); + int idx = ch_num(chan); + void __iomem *reg = mb->rx_regs + IPCR_ENABLE; + unsigned long flags; + + spin_lock_irqsave(&mb->lock, flags); + writel(readl(reg) | BIT(idx), reg); + spin_unlock_irqrestore(&mb->lock, flags); + + return 0; +} + +static void ast2700_mbox_shutdown(struct mbox_chan *chan) +{ + struct ast2700_mbox *mb = dev_get_drvdata(chan->mbox->dev); + int idx = ch_num(chan); + void __iomem *reg = mb->rx_regs + IPCR_ENABLE; + unsigned long flags; + + spin_lock_irqsave(&mb->lock, flags); + writel(readl(reg) & ~BIT(idx), reg); + spin_unlock_irqrestore(&mb->lock, flags); +} + +static bool ast2700_mbox_last_tx_done(struct mbox_chan *chan) +{ + struct ast2700_mbox *mb = dev_get_drvdata(chan->mbox->dev); + int idx = ch_num(chan); + + return ast2700_mbox_tx_done(mb, idx); +} + +static const struct mbox_chan_ops ast2700_mbox_chan_ops = { + .send_data = ast2700_mbox_send_data, + .startup = ast2700_mbox_startup, + .shutdown = ast2700_mbox_shutdown, + .last_tx_done = ast2700_mbox_last_tx_done, +}; + +static int ast2700_mbox_probe(struct platform_device *pdev) +{ + struct ast2700_mbox *mb; + const struct ast2700_mbox_data *dev_data; + struct device *dev = &pdev->dev; + int irq, ret; + + if (!pdev->dev.of_node) + return -ENODEV; + + dev_data = device_get_match_data(&pdev->dev); + + mb = devm_kzalloc(dev, sizeof(*mb), GFP_KERNEL); + if (!mb) + return -ENOMEM; + + mb->mbox.chans = devm_kcalloc(&pdev->dev, dev_data->num_chans, + sizeof(*mb->mbox.chans), GFP_KERNEL); + if (!mb->mbox.chans) + return -ENOMEM; + + /* con_priv of each channel is used to store the message received */ + for (int i = 0; i < dev_data->num_chans; i++) { + mb->mbox.chans[i].con_priv = devm_kcalloc(dev, dev_data->msg_size, + sizeof(u8), GFP_KERNEL); + if (!mb->mbox.chans[i].con_priv) + return -ENOMEM; + } + + platform_set_drvdata(pdev, mb); + + mb->tx_regs = devm_platform_ioremap_resource_byname(pdev, "tx"); + if (IS_ERR(mb->tx_regs)) + return PTR_ERR(mb->tx_regs); + + mb->rx_regs = devm_platform_ioremap_resource_byname(pdev, "rx"); + if (IS_ERR(mb->rx_regs)) + return PTR_ERR(mb->rx_regs); + + mb->msg_size = dev_data->msg_size; + mb->mbox.dev = dev; + mb->mbox.num_chans = dev_data->num_chans; + mb->mbox.ops = &ast2700_mbox_chan_ops; + mb->mbox.txdone_irq = false; + mb->mbox.txdone_poll = true; + mb->mbox.txpoll_period = 5; + spin_lock_init(&mb->lock); + + irq = platform_get_irq(pdev, 0); + if (irq < 0) + return irq; + + ret = devm_request_irq(dev, irq, ast2700_mbox_irq, 0, dev_name(dev), mb); + if (ret) + return ret; + + return devm_mbox_controller_register(dev, &mb->mbox); +} + +static const struct ast2700_mbox_data ast2700_dev_data = { + .num_chans = 4, + .msg_size = 0x20, +}; + +static const struct of_device_id ast2700_mbox_of_match[] = { + { .compatible = "aspeed,ast2700-mailbox", .data = &ast2700_dev_data }, + {} +}; +MODULE_DEVICE_TABLE(of, ast2700_mbox_of_match); + +static struct platform_driver ast2700_mbox_driver = { + .driver = { + .name = "ast2700-mailbox", + .of_match_table = ast2700_mbox_of_match, + }, + .probe = ast2700_mbox_probe, +}; +module_platform_driver(ast2700_mbox_driver); + +MODULE_AUTHOR("Jammy Huang "); +MODULE_DESCRIPTION("ASPEED AST2700 IPC driver"); +MODULE_LICENSE("GPL"); -- 2.25.1 From andrew at codeconstruct.com.au Wed Jul 2 11:23:54 2025 From: andrew at codeconstruct.com.au (Andrew Jeffery) Date: Wed, 02 Jul 2025 10:53:54 +0930 Subject: [PATCH] MAINTAINERS: Switch ASPEED tree to shared BMC repository Message-ID: <20250702-bmc-tree-update-v1-1-c270cd8af0ab@codeconstruct.com.au> We now have a shared repo with write access provided to M:s for the ASPEED SoCs. Cc: Joel Stanley Signed-off-by: Andrew Jeffery --- Hello SoC maintainers, Joel and I are chipping away at the workflow for shared maintenance of ASPEED and Nuvoton BMC SoCs. The latest is this shared tree from which we'll do future pull-requests. Andrew --- MAINTAINERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MAINTAINERS b/MAINTAINERS index a92290fffa163f9fe8fe3f04bf66426f9a894409..a4b8e52ace9fff3c7f43b67b288c5a2c8ec3efa4 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -2408,7 +2408,7 @@ L: linux-arm-kernel at lists.infradead.org (moderated for non-subscribers) L: linux-aspeed at lists.ozlabs.org (moderated for non-subscribers) S: Supported Q: https://patchwork.ozlabs.org/project/linux-aspeed/list/ -T: git git://git.kernel.org/pub/scm/linux/kernel/git/joel/bmc.git +T: git git://git.kernel.org/pub/scm/linux/kernel/git/bmc/linux.git F: Documentation/devicetree/bindings/arm/aspeed/ F: arch/arm/boot/dts/aspeed/ F: arch/arm/mach-aspeed/ --- base-commit: 19272b37aa4f83ca52bdf9c16d5d81bdd1354494 change-id: 20250702-bmc-tree-update-72b2cde4806f Best regards, -- Andrew Jeffery From andrew at codeconstruct.com.au Wed Jul 2 11:31:54 2025 From: andrew at codeconstruct.com.au (Andrew Jeffery) Date: Wed, 02 Jul 2025 11:01:54 +0930 Subject: Add bmc/linux for-next to linux-next Message-ID: <2ae27beb3fa9266e8f73cfa10d8299465d872183.camel@codeconstruct.com.au> Hi Stephen, Could you add the following to linux-next? Repo: https://git.kernel.org/pub/scm/linux/kernel/git/bmc/linux.git Branch: for-next This aligns with the recent patch to MAINTAINERS for the ASPEED tree: https://lore.kernel.org/all/20250702-bmc-tree-update-v1-1-c270cd8af0ab at codeconstruct.com.au/ Cheers, Andrew From sfr at canb.auug.org.au Wed Jul 2 11:49:41 2025 From: sfr at canb.auug.org.au (Stephen Rothwell) Date: Wed, 2 Jul 2025 11:49:41 +1000 Subject: Add bmc/linux for-next to linux-next In-Reply-To: <2ae27beb3fa9266e8f73cfa10d8299465d872183.camel@codeconstruct.com.au> References: <2ae27beb3fa9266e8f73cfa10d8299465d872183.camel@codeconstruct.com.au> Message-ID: <20250702114941.5bfe1e5a@canb.auug.org.au> Hi Andrew, On Wed, 02 Jul 2025 11:01:54 +0930 Andrew Jeffery wrote: > > Could you add the following to linux-next? > > Repo: https://git.kernel.org/pub/scm/linux/kernel/git/bmc/linux.git > Branch: for-next > > This aligns with the recent patch to MAINTAINERS for the ASPEED tree: > > https://lore.kernel.org/all/20250702-bmc-tree-update-v1-1-c270cd8af0ab at codeconstruct.com.au/ So, does this replace the aspeed tree (git://git.kernel.org/pub/scm/linux/kernel/git/joel/bmc.git branch for-next)? Or sit along side it? Either way, who should be the contact(s) for this tree? -- Cheers, Stephen Rothwell -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 488 bytes Desc: OpenPGP digital signature URL: From andrew at codeconstruct.com.au Wed Jul 2 11:58:06 2025 From: andrew at codeconstruct.com.au (Andrew Jeffery) Date: Wed, 02 Jul 2025 11:28:06 +0930 Subject: Add bmc/linux for-next to linux-next In-Reply-To: <20250702114941.5bfe1e5a@canb.auug.org.au> References: <2ae27beb3fa9266e8f73cfa10d8299465d872183.camel@codeconstruct.com.au> <20250702114941.5bfe1e5a@canb.auug.org.au> Message-ID: <8b035557ad025d31ab347349ebf9b91ff668498a.camel@codeconstruct.com.au> Hi Stephen, On Wed, 2025-07-02 at 11:49 +1000, Stephen Rothwell wrote: > Hi Andrew, > > On Wed, 02 Jul 2025 11:01:54 +0930 Andrew Jeffery wrote: > > > > Could you add the following to linux-next? > > > > ?? Repo: https://git.kernel.org/pub/scm/linux/kernel/git/bmc/linux.git > > ?? Branch: for-next > > > > This aligns with the recent patch to MAINTAINERS for the ASPEED tree: > > > > https://lore.kernel.org/all/20250702-bmc-tree-update-v1-1-c270cd8af0ab at codeconstruct.com.au/ > > So, does this replace the aspeed tree > (git://git.kernel.org/pub/scm/linux/kernel/git/joel/bmc.git branch > for-next)?? Or sit along side it? It can replace joel/bmc.git, however, it should be fine to sit along- side until Joel confirms removal of his tree with you. I've been doing the BMC SoC patch wrangling recently, and he hasn't been updating his tree with the branches I put together until I poke him about it. In this case I'll just hassling him to update his tree, which should remove any opportunity for conflicts or the like. > > Either way, who should be the contact(s) for this tree? > Both myself and Joel. Cheers, Andrew From sfr at canb.auug.org.au Wed Jul 2 12:06:00 2025 From: sfr at canb.auug.org.au (Stephen Rothwell) Date: Wed, 2 Jul 2025 12:06:00 +1000 Subject: Add bmc/linux for-next to linux-next In-Reply-To: <8b035557ad025d31ab347349ebf9b91ff668498a.camel@codeconstruct.com.au> References: <2ae27beb3fa9266e8f73cfa10d8299465d872183.camel@codeconstruct.com.au> <20250702114941.5bfe1e5a@canb.auug.org.au> <8b035557ad025d31ab347349ebf9b91ff668498a.camel@codeconstruct.com.au> Message-ID: <20250702120600.33f3d49d@canb.auug.org.au> Hi Andrew, On Wed, 02 Jul 2025 11:28:06 +0930 Andrew Jeffery wrote: > > On Wed, 2025-07-02 at 11:49 +1000, Stephen Rothwell wrote: > > > > On Wed, 02 Jul 2025 11:01:54 +0930 Andrew Jeffery wrote: > > > > > > Could you add the following to linux-next? > > > > > > ?? Repo: https://git.kernel.org/pub/scm/linux/kernel/git/bmc/linux.git > > > ?? Branch: for-next > > > > > > This aligns with the recent patch to MAINTAINERS for the ASPEED tree: > > > > > > https://lore.kernel.org/all/20250702-bmc-tree-update-v1-1-c270cd8af0ab at codeconstruct.com.au/ > > > > So, does this replace the aspeed tree > > (git://git.kernel.org/pub/scm/linux/kernel/git/joel/bmc.git branch > > for-next)?? Or sit along side it? > > It can replace joel/bmc.git, however, it should be fine to sit along- > side until Joel confirms removal of his tree with you. I've been doing > the BMC SoC patch wrangling recently, and he hasn't been updating his > tree with the branches I put together until I poke him about it. In > this case I'll just hassling him to update his tree, which should > remove any opportunity for conflicts or the like. > > > Either way, who should be the contact(s) for this tree? > > Both myself and Joel. Added from today. Thanks for adding your subsystem tree as a participant of linux-next. As you may know, this is not a judgement of your code. The purpose of linux-next is for integration testing and to lower the impact of conflicts between subsystems in the next merge window. You will need to ensure that the patches/commits in your tree/series have been: * submitted under GPL v2 (or later) and include the Contributor's Signed-off-by, * posted to the relevant mailing list, * reviewed by you (or another maintainer of your subsystem tree), * successfully unit tested, and * destined for the current or next Linux merge window. Basically, this should be just what you would send to Linus (or ask him to fetch). It is allowed to be rebased if you deem it necessary. -- Cheers, Stephen Rothwell sfr at canb.auug.org.au -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 488 bytes Desc: OpenPGP digital signature URL: From rentao.bupt at gmail.com Wed Jul 2 15:04:11 2025 From: rentao.bupt at gmail.com (rentao.bupt at gmail.com) Date: Tue, 1 Jul 2025 22:04:11 -0700 Subject: [PATCH 0/5] ARM: dts: aspeed: Add Meta Darwin dts Message-ID: <20250702050421.13729-1-rentao.bupt@gmail.com> From: Tao Ren The patch series introduces the initial device tree for Meta/Facebook Darwin AST2600 BMC. Patch #1 extends data0 partition in facebook-bmc-flash-layout-128.dtsi. Patch #2, #3 and #4 move eMMC out of ast2600-facebook-netbmc-common.dtsi because eMMC is removed from future Meta Network BMC platforms. Patch #5 adds the initial dts for Meta Darwin BMC. Tao Ren (5): ARM: dts: aspeed: Expand data0 partition in facebook-bmc-flash-layout-128.dtsi ARM: dts: aspeed: Remove eMMC from ast2600-facebook-netbmc-common.dtsi ARM: dts: aspeed: elbert: Enable eMMC device ARM: dts: aspeed: fuji: Enable eMMC device ARM: dts: aspeed: Add Facebook Darwin (AST2600) BMC arch/arm/boot/dts/aspeed/Makefile | 1 + .../dts/aspeed/aspeed-bmc-facebook-darwin.dts | 92 +++++++++++++++++++ .../dts/aspeed/aspeed-bmc-facebook-elbert.dts | 12 +++ .../dts/aspeed/aspeed-bmc-facebook-fuji.dts | 12 +++ .../ast2600-facebook-netbmc-common.dtsi | 12 --- .../aspeed/facebook-bmc-flash-layout-128.dtsi | 10 +- 6 files changed, 122 insertions(+), 17 deletions(-) create mode 100644 arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dts -- 2.47.1 From rentao.bupt at gmail.com Wed Jul 2 15:04:12 2025 From: rentao.bupt at gmail.com (rentao.bupt at gmail.com) Date: Tue, 1 Jul 2025 22:04:12 -0700 Subject: [PATCH 1/5] ARM: dts: aspeed: Expand data0 partition in facebook-bmc-flash-layout-128.dtsi In-Reply-To: <20250702050421.13729-1-rentao.bupt@gmail.com> References: <20250702050421.13729-1-rentao.bupt@gmail.com> Message-ID: <20250702050421.13729-2-rentao.bupt@gmail.com> From: Tao Ren Expand data0 partition to 64MB in facebook-bmc-flash-layout-128.dtsi for larger persistent storage. Signed-off-by: Tao Ren --- .../boot/dts/aspeed/facebook-bmc-flash-layout-128.dtsi | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/arch/arm/boot/dts/aspeed/facebook-bmc-flash-layout-128.dtsi b/arch/arm/boot/dts/aspeed/facebook-bmc-flash-layout-128.dtsi index 7f3652dea550..efd92232cda2 100644 --- a/arch/arm/boot/dts/aspeed/facebook-bmc-flash-layout-128.dtsi +++ b/arch/arm/boot/dts/aspeed/facebook-bmc-flash-layout-128.dtsi @@ -32,19 +32,19 @@ image-meta at f0000 { }; /* - * FIT image: 119 MB. + * FIT image: 63 MB. */ fit at 100000 { - reg = <0x100000 0x7700000>; + reg = <0x100000 0x3f00000>; label = "fit"; }; /* - * "data0" partition (8MB) is used by Facebook BMC platforms as + * "data0" partition (64MB) is used by Facebook BMC platforms as * persistent data store. */ - data0 at 7800000 { - reg = <0x7800000 0x800000>; + data0 at 4000000 { + reg = <0x4000000 0x4000000>; label = "data0"; }; -- 2.47.1 From rentao.bupt at gmail.com Wed Jul 2 15:04:13 2025 From: rentao.bupt at gmail.com (rentao.bupt at gmail.com) Date: Tue, 1 Jul 2025 22:04:13 -0700 Subject: [PATCH 2/5] ARM: dts: aspeed: Remove eMMC from ast2600-facebook-netbmc-common.dtsi In-Reply-To: <20250702050421.13729-1-rentao.bupt@gmail.com> References: <20250702050421.13729-1-rentao.bupt@gmail.com> Message-ID: <20250702050421.13729-3-rentao.bupt@gmail.com> From: Tao Ren Remove eMMC device entries from ast2600-facebook-netbmc-common.dtsi because eMMC will be removed from future Meta/Facebook AST2600 network OpenBMC platforms. Signed-off-by: Tao Ren --- .../dts/aspeed/ast2600-facebook-netbmc-common.dtsi | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/arch/arm/boot/dts/aspeed/ast2600-facebook-netbmc-common.dtsi b/arch/arm/boot/dts/aspeed/ast2600-facebook-netbmc-common.dtsi index 00e5887c926f..83c9789d45b1 100644 --- a/arch/arm/boot/dts/aspeed/ast2600-facebook-netbmc-common.dtsi +++ b/arch/arm/boot/dts/aspeed/ast2600-facebook-netbmc-common.dtsi @@ -152,18 +152,6 @@ &vhub { status = "okay"; }; -&emmc_controller { - status = "okay"; -}; - -&emmc { - status = "okay"; - - non-removable; - max-frequency = <25000000>; - bus-width = <4>; -}; - &rtc { status = "okay"; }; -- 2.47.1 From rentao.bupt at gmail.com Wed Jul 2 15:04:14 2025 From: rentao.bupt at gmail.com (rentao.bupt at gmail.com) Date: Tue, 1 Jul 2025 22:04:14 -0700 Subject: [PATCH 3/5] ARM: dts: aspeed: elbert: Enable eMMC device In-Reply-To: <20250702050421.13729-1-rentao.bupt@gmail.com> References: <20250702050421.13729-1-rentao.bupt@gmail.com> Message-ID: <20250702050421.13729-4-rentao.bupt@gmail.com> From: Tao Ren Enable eMMC device in Elbert dts because the eMMC entries were removed from ast2600-facebook-netbmc-common.dtsi. Signed-off-by: Tao Ren --- .../boot/dts/aspeed/aspeed-bmc-facebook-elbert.dts | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-elbert.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-elbert.dts index 74f3c67e0eff..ff1009ea1c49 100644 --- a/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-elbert.dts +++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-elbert.dts @@ -201,3 +201,15 @@ fixed-link { full-duplex; }; }; + +&emmc_controller { + status = "okay"; +}; + +&emmc { + status = "okay"; + + non-removable; + max-frequency = <25000000>; + bus-width = <4>; +}; -- 2.47.1 From rentao.bupt at gmail.com Wed Jul 2 15:04:15 2025 From: rentao.bupt at gmail.com (rentao.bupt at gmail.com) Date: Tue, 1 Jul 2025 22:04:15 -0700 Subject: [PATCH 4/5] ARM: dts: aspeed: fuji: Enable eMMC device In-Reply-To: <20250702050421.13729-1-rentao.bupt@gmail.com> References: <20250702050421.13729-1-rentao.bupt@gmail.com> Message-ID: <20250702050421.13729-5-rentao.bupt@gmail.com> From: Tao Ren Enable eMMC device in Fuji dts because the eMMC entries were removed from ast2600-facebook-netbmc-common.dtsi. Signed-off-by: Tao Ren --- .../arm/boot/dts/aspeed/aspeed-bmc-facebook-fuji.dts | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-fuji.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-fuji.dts index f23c26a3441d..8602ede3ec7e 100644 --- a/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-fuji.dts +++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-fuji.dts @@ -1249,3 +1249,15 @@ &mac3 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_rgmii4_default>; }; + +&emmc_controller { + status = "okay"; +}; + +&emmc { + status = "okay"; + + non-removable; + max-frequency = <25000000>; + bus-width = <4>; +}; -- 2.47.1 From rentao.bupt at gmail.com Wed Jul 2 15:04:16 2025 From: rentao.bupt at gmail.com (rentao.bupt at gmail.com) Date: Tue, 1 Jul 2025 22:04:16 -0700 Subject: [PATCH 5/5] ARM: dts: aspeed: Add Facebook Darwin (AST2600) BMC In-Reply-To: <20250702050421.13729-1-rentao.bupt@gmail.com> References: <20250702050421.13729-1-rentao.bupt@gmail.com> Message-ID: <20250702050421.13729-6-rentao.bupt@gmail.com> From: Tao Ren Add initial device tree for the Meta (Facebook) Darwin AST2600 BMC. Darwin is Meta's rack switch platform with an AST2600 BMC integrated for health monitoring purpose. Signed-off-by: Tao Ren --- arch/arm/boot/dts/aspeed/Makefile | 1 + .../dts/aspeed/aspeed-bmc-facebook-darwin.dts | 92 +++++++++++++++++++ 2 files changed, 93 insertions(+) create mode 100644 arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dts diff --git a/arch/arm/boot/dts/aspeed/Makefile b/arch/arm/boot/dts/aspeed/Makefile index 2e5f4833a073..debbfc0151f8 100644 --- a/arch/arm/boot/dts/aspeed/Makefile +++ b/arch/arm/boot/dts/aspeed/Makefile @@ -20,6 +20,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \ aspeed-bmc-facebook-bletchley.dtb \ aspeed-bmc-facebook-catalina.dtb \ aspeed-bmc-facebook-cmm.dtb \ + aspeed-bmc-facebook-darwin.dtb \ aspeed-bmc-facebook-elbert.dtb \ aspeed-bmc-facebook-fuji.dtb \ aspeed-bmc-facebook-galaxy100.dtb \ diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dts new file mode 100644 index 000000000000..f902230dada3 --- /dev/null +++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dts @@ -0,0 +1,92 @@ +// SPDX-License-Identifier: GPL-2.0+ +// Copyright (c) 2021 Facebook Inc. + +/dts-v1/; + +#include "ast2600-facebook-netbmc-common.dtsi" + +/ { + model = "Facebook Darwin BMC"; + compatible = "facebook,darwin-bmc", "aspeed,ast2600"; + + aliases { + serial0 = &uart5; + serial1 = &uart1; + serial2 = &uart2; + serial3 = &uart3; + }; + + chosen { + stdout-path = &uart5; + }; + + iio-hwmon { + compatible = "iio-hwmon"; + io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>, + <&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>, + <&adc1 0>, <&adc1 1>, <&adc1 2>, <&adc1 3>, + <&adc1 4>, <&adc1 5>, <&adc1 6>, <&adc1 7>; + }; + + spi_gpio: spi { + num-chipselects = <1>; + cs-gpios = <&gpio0 ASPEED_GPIO(X, 0) GPIO_ACTIVE_LOW>; + }; +}; + +/* + * BMC's "mac3" controller is connected to BCM53134P's IMP_RGMII port + * directly (fixed link, no PHY in between). + * Note: BMC's "mdio0" controller is connected to BCM53134P's MDIO + * interface, and the MDIO channel will be enabled in dts later (when + * "bcm53xx" driver's probe failure is solved on the platform). + */ +&mac3 { + status = "okay"; + phy-mode = "rgmii"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_rgmii4_default>; + fixed-link { + speed = <1000>; + full-duplex; + }; +}; + +&i2c0 { + eeprom at 50 { + compatible = "atmel,24c512"; + reg = <0x50>; + }; +}; + +&adc0 { + ref_voltage = <2500>; + status = "okay"; + + pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default + &pinctrl_adc2_default &pinctrl_adc3_default + &pinctrl_adc4_default &pinctrl_adc5_default + &pinctrl_adc6_default &pinctrl_adc7_default>; +}; + +&adc1 { + ref_voltage = <2500>; + status = "okay"; + + pinctrl-0 = <&pinctrl_adc8_default &pinctrl_adc9_default + &pinctrl_adc10_default &pinctrl_adc11_default + &pinctrl_adc12_default &pinctrl_adc13_default + &pinctrl_adc14_default &pinctrl_adc15_default>; +}; + +&emmc_controller { + status = "okay"; +}; + +&emmc { + status = "okay"; + + non-removable; + max-frequency = <25000000>; + bus-width = <4>; +}; -- 2.47.1 From andrew at lunn.ch Wed Jul 2 17:40:40 2025 From: andrew at lunn.ch (Andrew Lunn) Date: Wed, 2 Jul 2025 09:40:40 +0200 Subject: [PATCH 5/5] ARM: dts: aspeed: Add Facebook Darwin (AST2600) BMC In-Reply-To: <20250702050421.13729-6-rentao.bupt@gmail.com> References: <20250702050421.13729-1-rentao.bupt@gmail.com> <20250702050421.13729-6-rentao.bupt@gmail.com> Message-ID: On Tue, Jul 01, 2025 at 10:04:16PM -0700, rentao.bupt at gmail.com wrote: > From: Tao Ren > > Add initial device tree for the Meta (Facebook) Darwin AST2600 BMC. > > Darwin is Meta's rack switch platform with an AST2600 BMC integrated for > health monitoring purpose. > > Signed-off-by: Tao Ren > --- > arch/arm/boot/dts/aspeed/Makefile | 1 + > .../dts/aspeed/aspeed-bmc-facebook-darwin.dts | 92 +++++++++++++++++++ > 2 files changed, 93 insertions(+) > create mode 100644 arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dts > > diff --git a/arch/arm/boot/dts/aspeed/Makefile b/arch/arm/boot/dts/aspeed/Makefile > index 2e5f4833a073..debbfc0151f8 100644 > --- a/arch/arm/boot/dts/aspeed/Makefile > +++ b/arch/arm/boot/dts/aspeed/Makefile > @@ -20,6 +20,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \ > aspeed-bmc-facebook-bletchley.dtb \ > aspeed-bmc-facebook-catalina.dtb \ > aspeed-bmc-facebook-cmm.dtb \ > + aspeed-bmc-facebook-darwin.dtb \ > aspeed-bmc-facebook-elbert.dtb \ > aspeed-bmc-facebook-fuji.dtb \ > aspeed-bmc-facebook-galaxy100.dtb \ > diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dts > new file mode 100644 > index 000000000000..f902230dada3 > --- /dev/null > +++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dts > @@ -0,0 +1,92 @@ > +// SPDX-License-Identifier: GPL-2.0+ > +// Copyright (c) 2021 Facebook Inc. > + > +/dts-v1/; > + > +#include "ast2600-facebook-netbmc-common.dtsi" > + > +/ { > + model = "Facebook Darwin BMC"; > + compatible = "facebook,darwin-bmc", "aspeed,ast2600"; > + > + aliases { > + serial0 = &uart5; > + serial1 = &uart1; > + serial2 = &uart2; > + serial3 = &uart3; > + }; > + > + chosen { > + stdout-path = &uart5; > + }; > + > + iio-hwmon { > + compatible = "iio-hwmon"; > + io-channels = <&adc0 0>, <&adc0 1>, <&adc0 2>, <&adc0 3>, > + <&adc0 4>, <&adc0 5>, <&adc0 6>, <&adc0 7>, > + <&adc1 0>, <&adc1 1>, <&adc1 2>, <&adc1 3>, > + <&adc1 4>, <&adc1 5>, <&adc1 6>, <&adc1 7>; > + }; > + > + spi_gpio: spi { > + num-chipselects = <1>; > + cs-gpios = <&gpio0 ASPEED_GPIO(X, 0) GPIO_ACTIVE_LOW>; > + }; > +}; > + > +/* > + * BMC's "mac3" controller is connected to BCM53134P's IMP_RGMII port > + * directly (fixed link, no PHY in between). > + * Note: BMC's "mdio0" controller is connected to BCM53134P's MDIO > + * interface, and the MDIO channel will be enabled in dts later (when > + * "bcm53xx" driver's probe failure is solved on the platform). > + */ > +&mac3 { > + status = "okay"; > + phy-mode = "rgmii"; How do RGMII delays work? Connections to switches have to be handled different to PHYs, to avoid double delays. But is there extra long clock lines? Or are you expecting the switch to add the delays? Andrew From krzk at kernel.org Wed Jul 2 17:50:56 2025 From: krzk at kernel.org (Krzysztof Kozlowski) Date: Wed, 2 Jul 2025 09:50:56 +0200 Subject: [PATCH 5/5] ARM: dts: aspeed: Add Facebook Darwin (AST2600) BMC In-Reply-To: <20250702050421.13729-6-rentao.bupt@gmail.com> References: <20250702050421.13729-1-rentao.bupt@gmail.com> <20250702050421.13729-6-rentao.bupt@gmail.com> Message-ID: <34b0f5e2-0341-41cb-8915-8f1606e14827@kernel.org> On 02/07/2025 07:04, rentao.bupt at gmail.com wrote: > diff --git a/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dts b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dts > new file mode 100644 > index 000000000000..f902230dada3 > --- /dev/null > +++ b/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dts > @@ -0,0 +1,92 @@ > +// SPDX-License-Identifier: GPL-2.0+ > +// Copyright (c) 2021 Facebook Inc. > + > +/dts-v1/; > + > +#include "ast2600-facebook-netbmc-common.dtsi" > + > +/ { > + model = "Facebook Darwin BMC"; > + compatible = "facebook,darwin-bmc", "aspeed,ast2600"; Please run scripts/checkpatch.pl on the patches and fix reported warnings. After that, run also 'scripts/checkpatch.pl --strict' on the patches and (probably) fix more warnings. Some warnings can be ignored, especially from --strict run, but the code here looks like it needs a fix. Feel free to get in touch if the warning is not clear. It does not look like you tested the DTS against bindings. Please run `make dtbs_check W=1` (see Documentation/devicetree/bindings/writing-schema.rst or https://www.linaro.org/blog/tips-and-tricks-for-validating-devicetree-sources-with-the-devicetree-schema/ for instructions). Maybe you need to update your dtschema and yamllint. Don't rely on distro packages for dtschema and be sure you are using the latest released dtschema. Best regards, Krzysztof From robh at kernel.org Thu Jul 3 01:04:06 2025 From: robh at kernel.org (Rob Herring (Arm)) Date: Wed, 02 Jul 2025 10:04:06 -0500 Subject: [PATCH 0/5] ARM: dts: aspeed: Add Meta Darwin dts In-Reply-To: <20250702050421.13729-1-rentao.bupt@gmail.com> References: <20250702050421.13729-1-rentao.bupt@gmail.com> Message-ID: <175146850009.1675461.3391275598675831917.robh@kernel.org> On Tue, 01 Jul 2025 22:04:11 -0700, rentao.bupt at gmail.com wrote: > From: Tao Ren > > The patch series introduces the initial device tree for Meta/Facebook > Darwin AST2600 BMC. > > Patch #1 extends data0 partition in facebook-bmc-flash-layout-128.dtsi. > > Patch #2, #3 and #4 move eMMC out of ast2600-facebook-netbmc-common.dtsi > because eMMC is removed from future Meta Network BMC platforms. > > Patch #5 adds the initial dts for Meta Darwin BMC. > > Tao Ren (5): > ARM: dts: aspeed: Expand data0 partition in > facebook-bmc-flash-layout-128.dtsi > ARM: dts: aspeed: Remove eMMC from ast2600-facebook-netbmc-common.dtsi > ARM: dts: aspeed: elbert: Enable eMMC device > ARM: dts: aspeed: fuji: Enable eMMC device > ARM: dts: aspeed: Add Facebook Darwin (AST2600) BMC > > arch/arm/boot/dts/aspeed/Makefile | 1 + > .../dts/aspeed/aspeed-bmc-facebook-darwin.dts | 92 +++++++++++++++++++ > .../dts/aspeed/aspeed-bmc-facebook-elbert.dts | 12 +++ > .../dts/aspeed/aspeed-bmc-facebook-fuji.dts | 12 +++ > .../ast2600-facebook-netbmc-common.dtsi | 12 --- > .../aspeed/facebook-bmc-flash-layout-128.dtsi | 10 +- > 6 files changed, 122 insertions(+), 17 deletions(-) > create mode 100644 arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dts > > -- > 2.47.1 > > > My bot found new DTB warnings on the .dts files added or changed in this series. Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings are fixed by another series. Ultimately, it is up to the platform maintainer whether these warnings are acceptable or not. No need to reply unless the platform maintainer has comments. If you already ran DT checks and didn't see these error(s), then make sure dt-schema is up to date: pip3 install dtschema --upgrade This patch series was applied (using b4) to base: Base: attempting to guess base-commit... Base: remotes/gl-ci/linus-45-gdf3f9755452c (exact match) If this is not the correct base, please add 'base-commit' tag (or use b4 which does this automatically) New warnings running 'make CHECK_DTBS=y for arch/arm/boot/dts/aspeed/' for 20250702050421.13729-1-rentao.bupt at gmail.com: arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: / (facebook,darwin-bmc): compatible: 'oneOf' conditional failed, one must be fixed: 'facebook,darwin-bmc' is not one of ['delta,ahe50dc-bmc', 'facebook,galaxy100-bmc', 'facebook,wedge100-bmc', 'facebook,wedge40-bmc', 'microsoft,olympus-bmc', 'quanta,q71l-bmc', 'tyan,palmetto-bmc', 'yadro,vesnin-bmc'] 'facebook,darwin-bmc' is not one of ['amd,daytonax-bmc', 'amd,ethanolx-bmc', 'ampere,mtjade-bmc', 'aspeed,ast2500-evb', 'asrock,e3c246d4i-bmc', 'asrock,e3c256d4i-bmc', 'asrock,romed8hm3-bmc', 'asrock,spc621d8hm3-bmc', 'asrock,x570d4u-bmc', 'bytedance,g220a-bmc', 'facebook,cmm-bmc', 'facebook,minipack-bmc', 'facebook,tiogapass-bmc', 'facebook,yamp-bmc', 'facebook,yosemitev2-bmc', 'facebook,wedge400-bmc', 'hxt,stardragon4800-rep2-bmc', 'ibm,mihawk-bmc', 'ibm,mowgli-bmc', 'ibm,romulus-bmc', 'ibm,swift-bmc', 'ibm,witherspoon-bmc', 'ingrasys,zaius-bmc', 'inspur,fp5280g2-bmc', 'inspur,nf5280m6-bmc', 'inspur,on5263m5-bmc', 'intel,s2600wf-bmc', 'inventec,lanyang-bmc', 'lenovo,hr630-bmc', 'lenovo,hr855xg2-bmc', 'portwell,neptune-bmc', 'qcom,centriq2400-rep-bmc', 'supermicro,x11spi-bmc', 'tyan,s7106-bmc', 'tyan,s8036-bmc', 'yadro,nicole-bmc', 'yadro,vegman-n110-bmc', 'yadro,vegman-rx20-bmc', 'yadro,vegman-sx20-bmc'] 'facebook,darwin-bmc' is not one of ['ampere,mtjefferson-bmc', 'ampere,mtmitchell-bmc', 'aspeed,ast2600-evb', 'aspeed,ast2600-evb-a1', 'asus,x4tf-bmc', 'facebook,bletchley-bmc', 'facebook,catalina-bmc', 'facebook,cloudripper-bmc', 'facebook,elbert-bmc', 'facebook,fuji-bmc', 'facebook,greatlakes-bmc', 'facebook,harma-bmc', 'facebook,minerva-cmc', 'facebook,yosemite4-bmc', 'ibm,blueridge-bmc', 'ibm,everest-bmc', 'ibm,fuji-bmc', 'ibm,rainier-bmc', 'ibm,sbp1-bmc', 'ibm,system1-bmc', 'ibm,tacoma-bmc', 'inventec,starscream-bmc', 'inventec,transformer-bmc', 'jabil,rbp-bmc', 'qcom,dc-scm-v1-bmc', 'quanta,s6q-bmc', 'ufispace,ncplite-bmc'] 'aspeed,ast2400' was expected 'aspeed,ast2500' was expected from schema $id: http://devicetree.org/schemas/arm/aspeed/aspeed.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: /: failed to match any schema with compatible: ['facebook,darwin-bmc', 'aspeed,ast2600'] arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: timer (arm,armv7-timer): 'clocks' does not match any of the regexes: '^pinctrl-[0-9]+$' from schema $id: http://devicetree.org/schemas/timer/arm,arch_timer.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: /sdram at 1e6e0000: failed to match any schema with compatible: ['aspeed,ast2600-sdram-edac', 'syscon'] arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: bus at 1e600000 (aspeed,ast2600-ahbc): compatible: ['aspeed,ast2600-ahbc', 'syscon'] is too long from schema $id: http://devicetree.org/schemas/bus/aspeed,ast2600-ahbc.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: syscon at 1e6e2000 (aspeed,ast2600-scu): 'smp-memram at 180' does not match any of the regexes: '^interrupt-controller@[0-9a-f]+$', '^p2a-control@[0-9a-f]+$', '^pinctrl(@[0-9a-f]+)?$', '^pinctrl-[0-9]+$', '^silicon-id@[0-9a-f]+$' from schema $id: http://devicetree.org/schemas/mfd/aspeed,ast2x00-scu.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: /ahb/apb/syscon at 1e6e2000/smp-memram at 180: failed to match any schema with compatible: ['aspeed,ast2600-smpmem'] arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: /ahb/apb/display at 1e6e6000: failed to match any schema with compatible: ['aspeed,ast2600-gfx', 'syscon'] arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: adc at 1e6e9000 (aspeed,ast2600-adc0): 'interrupts', 'ref_voltage' do not match any of the regexes: '^pinctrl-[0-9]+$' from schema $id: http://devicetree.org/schemas/iio/adc/aspeed,ast2600-adc.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: adc at 1e6e9100 (aspeed,ast2600-adc1): 'interrupts', 'ref_voltage' do not match any of the regexes: '^pinctrl-[0-9]+$' from schema $id: http://devicetree.org/schemas/iio/adc/aspeed,ast2600-adc.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: crypto at 1e6fa000 (aspeed,ast2600-acry): 'aspeed,ahbc' does not match any of the regexes: '^pinctrl-[0-9]+$' from schema $id: http://devicetree.org/schemas/crypto/aspeed,ast2600-acry.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: /ahb/apb/timer at 1e782000: failed to match any schema with compatible: ['aspeed,ast2600-timer'] arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: lpc at 1e789000 (aspeed,ast2600-lpc-v2): reg-io-width: 4 is not of type 'object' from schema $id: http://devicetree.org/schemas/mfd/aspeed-lpc.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: lpc at 1e789000 (aspeed,ast2600-lpc-v2): lpc-snoop at 80: 'clocks' does not match any of the regexes: '^pinctrl-[0-9]+$' from schema $id: http://devicetree.org/schemas/mfd/aspeed-lpc.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: kcs at 24 (aspeed,ast2500-kcs-bmc-v2): 'clocks' does not match any of the regexes: '^pinctrl-[0-9]+$' from schema $id: http://devicetree.org/schemas/ipmi/aspeed,ast2400-kcs-bmc.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: kcs at 28 (aspeed,ast2500-kcs-bmc-v2): 'clocks' does not match any of the regexes: '^pinctrl-[0-9]+$' from schema $id: http://devicetree.org/schemas/ipmi/aspeed,ast2400-kcs-bmc.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: kcs at 2c (aspeed,ast2500-kcs-bmc-v2): 'clocks' does not match any of the regexes: '^pinctrl-[0-9]+$' from schema $id: http://devicetree.org/schemas/ipmi/aspeed,ast2400-kcs-bmc.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: kcs at 114 (aspeed,ast2500-kcs-bmc-v2): 'clocks' does not match any of the regexes: '^pinctrl-[0-9]+$' from schema $id: http://devicetree.org/schemas/ipmi/aspeed,ast2400-kcs-bmc.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: /ahb/apb/lpc at 1e789000/lhc at a0: failed to match any schema with compatible: ['aspeed,ast2600-lhc'] arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: /ahb/apb/lpc at 1e789000/ibt at 140: failed to match any schema with compatible: ['aspeed,ast2600-ibt-bmc'] arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: sdc at 1e740000 (aspeed,ast2600-sd-controller): sdhci at 1e740100:compatible: ['aspeed,ast2600-sdhci', 'sdhci'] is too long from schema $id: http://devicetree.org/schemas/mmc/aspeed,sdhci.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: sdc at 1e740000 (aspeed,ast2600-sd-controller): sdhci at 1e740200:compatible: ['aspeed,ast2600-sdhci', 'sdhci'] is too long from schema $id: http://devicetree.org/schemas/mmc/aspeed,sdhci.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: /ahb/apb/sdc at 1e740000/sdhci at 1e740100: failed to match any schema with compatible: ['aspeed,ast2600-sdhci', 'sdhci'] arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: /ahb/apb/sdc at 1e740000/sdhci at 1e740200: failed to match any schema with compatible: ['aspeed,ast2600-sdhci', 'sdhci'] arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: fsi at 1e79b000 (aspeed,ast2600-fsi-master): compatible: ['aspeed,ast2600-fsi-master', 'fsi-master'] is too long from schema $id: http://devicetree.org/schemas/fsi/aspeed,ast2600-fsi-master.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: /ahb/apb/fsi at 1e79b000: failed to match any schema with compatible: ['aspeed,ast2600-fsi-master', 'fsi-master'] arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: fsi at 1e79b100 (aspeed,ast2600-fsi-master): compatible: ['aspeed,ast2600-fsi-master', 'fsi-master'] is too long from schema $id: http://devicetree.org/schemas/fsi/aspeed,ast2600-fsi-master.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: /ahb/apb/fsi at 1e79b100: failed to match any schema with compatible: ['aspeed,ast2600-fsi-master', 'fsi-master'] arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: /ahb/apb/dma-controller at 1e79e000: failed to match any schema with compatible: ['aspeed,ast2600-udma'] arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: spi (spi-gpio): gpio-miso: False schema does not allow [64, 189, 0] from schema $id: http://devicetree.org/schemas/spi/spi-gpio.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: spi (spi-gpio): gpio-mosi: False schema does not allow [64, 188, 0] from schema $id: http://devicetree.org/schemas/spi/spi-gpio.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: spi (spi-gpio): gpio-sck: False schema does not allow [64, 187, 0] from schema $id: http://devicetree.org/schemas/spi/spi-gpio.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: spi (spi-gpio): 'sck-gpios' is a required property from schema $id: http://devicetree.org/schemas/spi/spi-gpio.yaml# arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-darwin.dtb: spi (spi-gpio): Unevaluated properties are not allowed ('gpio-miso', 'gpio-mosi', 'gpio-sck' were unexpected) from schema $id: http://devicetree.org/schemas/spi/spi-gpio.yaml#