summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-01-12pinctrl: mediatek: support mediatek,pctl-regmap propertyDavid Lechner
Add support for the mediatek,pctl-regmap devicetree property to the common MediaTek pinctrl driver. In upstream devicetrees from Linux, the pinctrl nodes may be on the interrupt controller register address space rather than the pinctrl register address space. In this case, there is a syscon node linking to the actual pinctrl registers. This uses a common property name of mediatek,pctl-regmap for the phandle to the syscon node. The logic here is that if this property is present, we look up the syscon node and use it's address as the base address of the pinctrl registers and ignore the pinctrl node's own reg property. (Support for interrupts could be added later if needed.) There is also at least one SoC in Linux that has two syscon phandles in this property. This implementation support parsing this, but doesn't do anything with the second syscon yet (the 2nd syscon is for interrupts which we are saving for later). Signed-off-by: David Lechner <[email protected]>
2026-01-12Merge patch series "clk: mediatek: mt8365: fix clocks"Tom Rini
David Lechner <[email protected]> says: There were a number of bugs in the clock definitions for the mt8365 clock drivers. This series aims to fix the obvious issues. This builds on [1] that implements the clk dump command to inspect the clock trees at runtime. Using that revealed quite a few mistakes in the clock definitions. Additionally, the topckgen-cg hack is removed for mt8365 since it would require an extra devicetree node using the same address space as the topckgen node. This would not be accepted upstream in Linux, so we shouldn't do it in U-Boot either. mt85{12,16,18} also have this hack. I didn't attempt to remove it from those platforms since I don't have hardware to test on. Patches have been runtime tested on mt8365_evk hardware and compile- tested on other platforms using: ./tools/buildman/buildman --boards=mt7986a_bpir3_sd,mt7620_rfb,mt7986_rfb,mt7987_emmc_rfb,mt7987_rfb,mt7622_rfb,mt7987_sd_rfb,mt7623a_unielec_u7623_02,mt7988_rfb,mt7623n_bpir2,mt7988_sd_rfb,mt7628_rfb,mt8183_pumpkin,mt7629_rfb,mt8365_evk,mt7981_emmc_rfb,mt8512_bm1_emmc,mt7981_rfb,mt8516_pumpkin,mt7981_sd_rfb,mt8518_ap1_emmc -b HEAD -c 9 [1]: https://lore.kernel.org/u-boot/[email protected]/ Link: https://lore.kernel.org/r/[email protected]
2026-01-12clk: mediatek: mt8365: fix missing topckgen IDsDavid Lechner
Use a ID map to add clocks for the missing CLK_TOP_CLK32K and CLK_TOP_CLK26M that were not included in the devicetree definitions. This fixes getting the rate of any clock that had one of these as a parent. CLK_TOP_UNIVPLL does not appear to be a real clock, so it is omitted now since we can do that with the ID map as well. Signed-off-by: David Lechner <[email protected]>
2026-01-12clk: mediatek: mt8365: remove separate topckgen-cg driverDavid Lechner
Remove the separate topckgen-cg driver for handling clock gates in the topckgen address space. The devicetree bindings for this were not acceptable upstream because it was creating a separate clock controller using the same address space as the main topckgen clock controller. The gates are moved to the topckgen tree instead. Signed-off-by: David Lechner <[email protected]>
2026-01-12clk: mediatek: allow gates in topckgen driversDavid Lechner
Add handling for gates in the topckgen clk drivers. This avoids the need to have separate topckgen-cg drivers and devicetree nodes for the same address space and clock ID range. Signed-off-by: David Lechner <[email protected]>
2026-01-12clk: mediatek: mt8365: split struct mtk_clk_treeDavid Lechner
Split the struct mtk_clk_tree for MT8365 into separate structures for the apmixedsys, topckgen and infracfg clock controllers. This is needed to support moving the topckgen gates into the struct mtk_clk_tree. Since apmixedsys can also have gates, we need separate structures. Signed-off-by: David Lechner <[email protected]>
2026-01-12clk: mediatek: mt8365: fix some clock parentsDavid Lechner
Fix a number of clock parent definitions for MT8365 clocks. Most of these are just informational or don't make a function change. The clocks with the new PLL_FACTOR2 macro and the change in apu_parents are fixing actual bugs. Signed-off-by: David Lechner <[email protected]>
2026-01-12clk: mediatek: fix fixed clock parentsDavid Lechner
Add a flags field to struct mtk_fixed_clk to allow properly resolving the parent clock. All chip-specific clocks are updated to populate this field correctly. The parent is currently only used for printing debug information, so there are no functional bugs being fixed. Signed-off-by: David Lechner <[email protected]>
2026-01-12clk: mediatek: add separate gates_offs for cg gatesDavid Lechner
Add a gates_offs field to struct mtk_cg_priv and use that instead of struct mtk_clk_tree.gates_offs. Prior to this change, struct mtk_clk_tree.gates_offs could be the offset of struct mtk_clk_tree.gates or struct mtk_cg_priv.gates depending on the context. This was confusing and error-prone. For example, in mt8365 there is one set of gates that needs an offset and one that does not that share the same struct mtk_clk_tree. This is fixed in this patch by giving the correct offset for each gate separately. Signed-off-by: David Lechner <[email protected]>
2026-01-12clk: mediatek: mt8365: fix missing and out of order clocksDavid Lechner
Fix a few missing clocks and even more clocks in the incorrect order. Since the clocks are looked up by index, having them out of order or skipping an ID will lead to incorrect clocks being used. Signed-off-by: David Lechner <[email protected]>
2026-01-12mt8365_evk_defconfig: enable clk commandDavid Lechner
Enable CONFIG_CMD_CLK in the mt8365_evk_defconfig to allow using the clk dump command for debugging clock configurations. Reviewed-by: Macpaul Lin <[email protected]> Signed-off-by: David Lechner <[email protected]>
2026-01-12Merge patch series "clk: mediatek: implement of_xlate and dump"Tom Rini
David Lechner <[email protected]> says: I started looking into fixing some bugs in the mt8365 clock driver and realized that there was no way to inspect or debug the clock trees. I set out to implement the dump function to help with this. The driver architecture didn't make this easy since there was no way to know the number of elements in each of the clock arrays. The first few patches in this series are adding fields to the data structures to hold this information. Once that was fixed, I was still getting crashes due to other bugs. To work around this, I implemented the of_xlate function to validate clk IDs as early as possible and return errors instead of crashing when requested IDs are invalid. This also makes use of the new size fields to prevent out of bounds array accesses. There are a couple of drivers that remap IDs, so there are a few extra patches to handle that as well. Then finally, I was able to implement the dump function to print out the clock tree information without crashing. In the v1 cover letter, there is an example of the output (it is quite long and doesn't need to be repeated here). Link: https://lore.kernel.org/r/[email protected]
2026-01-12clk: mediatek: implement dump callbacksDavid Lechner
Implement dump callbacks for Mediatek clocks. On these platforms, there are 100s of clocks, so it can be easy to miss mistakes. The dump callbacks will be useful for debugging and verifying clock configs. Signed-off-by: David Lechner <[email protected]>
2026-01-12clk: mediatek: mt7623: set unmapped IDs to -1David Lechner
Add range initializers to the id_offs_map arrays in the mt7623 clk driver to set unmapped IDs to -1. This prevents accidental usage of unmapped IDs that would otherwise map to 0. mtk_common_clk_of_xlate() checks these values for < 0 and returns -ENOENT in that case. A range initializer covering the entire array is used since it is less error-prone than manually looking up the value of each macro in the existing initializers and checking for gaps. It is placed first so that the specific initializers override it. Signed-off-by: David Lechner <[email protected]>
2026-01-12clk: mediatek: clarify mapped vs. unmapped IDDavid Lechner
Update documentation comments to clarify the difference between which .id fields are mapped (only struct clk.id) vs. unmapped (all struct mtk_*.id and .parent fields). The unmapped IDs are the ones defined in the devicetree bindings, while the mapped IDs are the ones used as the index into the various clk arrays. Also fix spelling of "parent" while we are touching this. Signed-off-by: David Lechner <[email protected]>
2026-01-12clk: mediatek: add of_xlate opsDavid Lechner
Add driver-specific of_xlate ops for MediaTek clocks. This provides better checking of the args passed from the devicetree. Compared to the default of_xlate implementation, this will return -EINVAL if there are zero args (id is always required) and -ENOENT if the id is out of range for the clock type. This will protect against out of bounds array accesses later on when the clk->id is used to index into the clock data arrays. If there is a id_offs_map, then we have to do that translation first before checking the id to see if it is in range. There is no sense in doing the mapping multiple times, so we save the mapped ID in clk->id and remove mtk_clk_get_id(). mtk_clk_find_parent_rate() also had to be updated since it creates a temporary struct clk to represent the parent clock. It now has do the translation in case the parent clock also uses an id_offs_map. Signed-off-by: David Lechner <[email protected]>
2026-01-12clk: mediatek: organize infrasys functionsDavid Lechner
Move all infrasys ops and related functions next to each other in the file for better organization. Generally all ops functions are grouped together like this for the other ops types (apmixedsys, topckgen, etc). However the infrasys functions were mixed in with the other sections making them harder to find. This will also give a logical place to add any future infrasys-specific functions. Signed-off-by: David Lechner <[email protected]>
2026-01-12clk: mediatek: add array size field for id_offs_mapDavid Lechner
Add id_offs_map_size field to struct mtk_clk_tree and populate it for all existing drivers. Currently, there is no bounds checking when accessing the id_offs_map array. Adding this field will allow for bounds checking in the future. Signed-off-by: David Lechner <[email protected]>
2026-01-12clk: mediatek: add array size fields to cg gatesDavid Lechner
Add num_gates field to struct mtk_cg_priv and populate it for all existing drivers. Currently, there is no bounds checking when accessing the gates array. Adding this field will allow for bounds checking in the future. Signed-off-by: David Lechner <[email protected]>
2026-01-12clk: mediatek: add array size fields to clk treesDavid Lechner
Add num_plls, num_fclks, num_fdivs, num_muxes, and num_gates fields to the mtk_clk_tree struct and populate them in the clk trees for all existing drivers. Currently, there is no bounds checking when accessing the arrays in the clk tree structs. Adding these fields will allow for bounds checking in the future. Signed-off-by: David Lechner <[email protected]>
2026-01-12phy: zynqmp: Only wait for PLL lock "primary" instancesSean Anderson
For PCIe and DisplayPort, the phy instance represents the controller's logical lane. Wait for the instance 0 phy's PLL to lock as other instances will never lock. We do this in xpsgtr_wait_pll_lock so callers don't have to determine the correct lane themselves. The original comment is wrong about cumulative wait times. Since we are just polling a bit, all subsequent waiters will finish immediately. Signed-off-by: Sean Anderson <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Vinod Koul <[email protected]> [ Linux commit 235d8b663ab9e6cc13f8374abfffa559f50b57b6 ] Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2026-01-12phy: zynqmp: Store instance instead of typeSean Anderson
The phy "type" is just the combination of protocol and instance, and is never used apart from that. Store the instance directly, instead of converting to a type first. No functional change intended. Signed-off-by: Sean Anderson <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Vinod Koul <[email protected]> [ Linux commit 6959d2367bc3503ac4ba3eb4ec6584a43150d6b3 ] Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2026-01-12phy: zynqmp: Enable reference clock correctlySean Anderson
Lanes can use other lanes' reference clocks, as determined by refclk. Use refclk to determine the clock to enable/disable instead of always using the lane's own reference clock. This ensures the clock selected in xpsgtr_configure_pll is the one enabled. For the other half of the equation, always program REF_CLK_SEL even when we are selecting the lane's own clock. This ensures that Linux's idea of the reference clock matches the hardware. We use the "local" clock mux for this instead of going through the ref clock network. Signed-off-by: Sean Anderson <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Vinod Koul <[email protected]> [ Linux commit 687d6bccb28238fcfa65f7c1badfdfeac498c428 ] Fixes: 1d78d683496 ("phy: zynqmp: Add serdes/psgtr driver") Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2026-01-12phy: zynqmp: Allow variation in refclk rateSean Anderson
Due to limited available frequency ratios, the reference clock rate may not be exactly the same as the required rate. Allow a small (100 ppm) deviation. Signed-off-by: Sean Anderson <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Vinod Koul <[email protected]> [ Linux commit 76009ee76e05e30e29aade02e788aebe9ce9ffd2 ] Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Michal Simek <[email protected]>
2026-01-12board: zynqmp: add cmd for getting boot auth stateNeal Frager
Add command for checking if boot was authenticated. Signed-off-by: Igor Opaniuk <[email protected]> Signed-off-by: Neal Frager <[email protected]> Reviewed-by: Tomas Melin <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/[email protected]
2026-01-12arch: dts: zynqmp: align cpu_opp_table with linuxNeal Frager
Align the cpp_opp_table and pss_ref_clk values with Linux according to the following patch submission: https://lists.openwall.net/linux-kernel/2025/11/11/424 Signed-off-by: Neal Frager <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/[email protected]
2026-01-12arm64: xilinx: Fix DT coding style violationsMichal Simek
All these violations have been found by https://github.com/kylebonnici/dts-linter but not all of them are taken. Adding newlines or long lines changes are not taken. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/f1811d2e9303bb63ddfa809cbebf2a7fa52afa0d.1767787961.git.michal.simek@amd.com
2026-01-12arm64: zynqmp: Remove ina260 IIO descriptionMichal Simek
Kernel has hwmon driver that's why there is no reason to wire iio to hwmon converter. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/138720bf2ff976974f5ce3566446ecfd93b9259d.1767787961.git.michal.simek@amd.com
2026-01-12PCI: xilinx-nwl: Avoid crashing if configuring when the link is downSean Anderson
The ECAM will return a slave error if we access non-root devices while the link is down. Add a check for this like Linux does so we don't crash. Fixes: 2f5ad77cfea ("PCI: zynqmp: Add ZynqMP NWL PCIe root port driver") Signed-off-by: Sean Anderson <[email protected]> Reviewed-by: Stefan Roese <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/[email protected]
2026-01-12board: zynqmp: allow env in fat/ext when booting out of qspiNeal Frager
Allow saving the environment in fat and in ext4 when bootmode is qspi. Signed-off-by: Ricardo Salveti <[email protected]> Signed-off-by: Neal Frager <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/[email protected]
2026-01-12amd: versal2: Align distro boot variables with default memory mapMichal Simek
By default Versal Gen 2 is using memory map where TF-A is placed to DDR and there is also some space allocated for OP-TEE that's why move default variable setting out of this location to avoid using it when distro boot is used for booting. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/988a6f38ed9cfbb9757b76a16cb9cfec4601de85.1767685538.git.michal.simek@amd.com
2026-01-12ufs: amd-versal2: Fix reset names with bindingMichal Simek
Align reset names with DT binding. Reviewed-by: Neil Armstrong <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/e1082054610fe73d4487d12f4274315030592c77.1765813212.git.michal.simek@amd.com
2026-01-12ufs: amd-versal2: Fix clock name with bindingMichal Simek
Align clockt name with DT binding. Reviewed-by: Neil Armstrong <[email protected]> Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/eadc8d159b6d822077549722c9ec5a96a4d16c2a.1765973221.git.michal.simek@amd.com
2026-01-12arm64: zynqmp: Enable pci root port driverMichal Simek
zcu102 has PCIe x1 enabled by default that's why enable PCIe root port driver also with e1000 networking card for validation. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/bc09405d9a2df190f807bdf750ed47b86e6b83b2.1766153383.git.michal.simek@amd.com
2026-01-09Merge patch series "Enable / require DEVRES for devm_.alloc usage outside xPL"Tom Rini
Tom Rini <[email protected]> says: As seen by a number of patches fixing memory leaks, U-Boot has a problem with developer expectations around devm_kmalloc and friends. Namely, whereas in Linux these memory allocations will be freed automatically in most cases, in U-Boot this is only true if DEVRES is enabled. Now, intentionally, in xPL phases, we do not (and do not offer as an option) enabling DEVRES. However in full U-Boot this is left either to the user, or some drivers have select'd DEVRES on their own. This inconsistency is a problem. This series goes and deals with two small issues that were shown by having all drivers that use devm_.alloc to allocate memory also select DEVRES and then we make DEVRES no longer be a prompted option and instead select'd as needed. We do not make this unconditional as it would result in growing the resulting binary on the many platforms which have no users of the devm_.alloc family of functions. Link: https://lore.kernel.org/r/[email protected]
2026-01-09dm: core: Default to using DEVRES outside of xPLTom Rini
The devm alloc functions that we have may follow the Linux kernel model where allocations are (almost always) automatically free()'d. However, quite often we don't enable, in full U-Boot, the tracking and free()'ing functionality. This in turn leads to memory leaks because the driver author expects that since the functions have the same name as in the Linux Kernel they have the same behavior. In turn we then get functionally correct commits such as commit 00e1fed93c8c ("firmware: ti_sci: Fix memory leaks in devm_ti_sci_get_of_resource") that manually add these calls. Rather than manually tracking allocations and implementing free()s, rework things so that we follow expectations by enabling the DEVRES functionality (outside of xPL phases). This turns DEVRES from a prompted symbol to a symbol that must be select'd, and we now remove our non-managed alloc/free functions from outside of xPL builds. Reviewed-by: Michael Trimarchi <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2026-01-09x86: Increase SYS_MALLOC_F_LEN to 0x1000Tom Rini
A few x86 platforms use a SYS_MALLOC_F_LEN value of 0x1000 or higher. With the impending move to having DEVRES enabled by default, we will need a little more room here. Raise the default value. Reviewed-by: Bin Meng <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2026-01-09Gitlab CI: Add BeagleBone Black to sage labTom Rini
This adds support for a BeagleBone Black platform to the sage lab. We test with both the legacy network stack and lwIP. Signed-off-by: Tom Rini <[email protected]>
2026-01-09configs: am62[ap]x_evm_r5: enable SUPPORT_EMMC_BOOTBryan Brattlof
When unifying the SD/eMMC boot behavior between the different AM62* reference boards we missed enabling SUPPORT_EMMC_BOOT. This causes the SPL in tiboot3.bin to look for the tispl.bin in the UDA partition in the eMMC and fail. Enable SUPPORT_EMMC_BOOT at the tiboot3 stage to load the next boot binary from the active boot partition when in RAW MMC boot modes. Fixes: 3b7893145e36 ("mach-k3: add eMMC FS boot support for am62[ap]") Signed-off-by: Bryan Brattlof <[email protected]>
2026-01-09usb: ci_udc: cosmetics: EP and requests debug infoPetr Beneš
Make a note in an unexpected situation, e.g. queuing a request on a disabled endpoint, enabling an enabled endpoint... Reviewed-by: Mattijs Korpershoek <[email protected]> Signed-off-by: Petr Beneš <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2026-01-09usb: ci_udc: Check ci_ep->desc before usePetr Beneš
There are two places where ci_ep->desc could be accessed despite it is not valid at that moment. Either the endpoint has not been enabled yet or it has been disabled meanwhile (The ethernet gadged behaves this way at least.). That results in dereferencing a null pointer. Moreover, the patch gets rid of possible outstanding requests if the endpoint's state changes to disabled. Signed-off-by: Petr Beneš <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2026-01-09boot: fix missing dependency for BOOTMETH_ANDROIDQuentin Schulz
The code depends on set_avendor_bootimg_addr and set_abootimg_addr functions which are only defined in cmd/abootimg.c, only built when CMD_ABOOTIMG=y so let's add a dependency. It should be "depends on" to be properly implemented, but we get a circular dependency otherwise: boot/Kconfig:566:error: recursive dependency detected! boot/Kconfig:566: symbol BOOTMETH_ANDROID depends on CMD_ABOOTIMG cmd/Kconfig:504: symbol CMD_ABOOTIMG depends on ANDROID_BOOT_IMAGE boot/Kconfig:7: symbol ANDROID_BOOT_IMAGE is selected by BOOTMETH_ANDROID so instead we do a select. It is safe because CMD_ABOOTIMG depends on ANDROID_BOOT_IMAGE which we select here as well. Fixes: 125d9f3306ea ("bootstd: Add a bootmeth for Android") Signed-off-by: Quentin Schulz <[email protected]> Reviewed-by: Kory Maincent <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Mattijs Korpershoek <[email protected]>
2026-01-08Merge branch 'master' of git://source.denx.de/u-boot-usbTom Rini
- DWC3 for exynos7870 - Avoid a noisy message on xhci controllers
2026-01-08Merge tag 'mmc-for-2026.04-rc1' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-mmc CI: https://source.denx.de/u-boot/custodians/u-boot-mmc/-/pipelines/28960 - Revert "Use max-frequency from device tree with default handling" - Select CRC16 MMC_SPI_CRC_ON - Add 1ms delay with 1ms margin after mmc power on to follow spec
2026-01-08Revert "mmc: mmc-uclass: Use max-frequency from device tree with default ↵Tanmay Kathpalia
handling" This reverts commit aebb523a23818a8ee4199c9532b51e3d4020696f. The change to use dev_read_u32_default() with a default value of 0 causes regression for host controller drivers that hardcode f_max before calling mmc_of_parse(). When the "max-frequency" property is not specified in the device tree, dev_read_u32_default() returns 0, which overwrites the previously configured f_max value set by the driver. This effectively resets the maximum frequency to 0, breaking MMC functionality for those controllers. Revert to the original dev_read_u32() behavior which only updates cfg->f_max when the "max-frequency" property is explicitly present in the device tree, preserving driver-configured values otherwise. Signed-off-by: Tanmay Kathpalia <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-01-08usb: dwc3-generic: add support for exynos7870Kaustabh Chakraborty
Exynos7870's DWC3 glue layer is quite simple, consisting of a few clocks, which is handled by this driver. Add the compatible string in here. Reviewed-by: Marek Vasut <[email protected]> Signed-off-by: Kaustabh Chakraborty <[email protected]>
2026-01-08usb: dwc3-generic: allow fallback of dr_mode property to "otg"Kaustabh Chakraborty
Documentation [1] states that the default value of the dr_mode property is "otg". It also isn't marked a mandatory node, so it may or may not be set. So, accordingly if dr_mode is not mentioned in the devicetree node, OTG mode must be assumed. In this driver however, this case is not handled. If dr_mode is not mentioned, USB_DR_MODE_UNKNOWN is set. The logic implemented raises an error, instead of falling back to USB_DR_MODE_OTG. Correct this to conform to the specification. Link: https://git.kernel.org/pub/scm/linux/kernel/git/devicetree/devicetree-rebasing.git/tree/Bindings/usb/usb-drd.yaml?h=v6.18-dts [1] Reviewed-by: Marek Vasut <[email protected]> Signed-off-by: Kaustabh Chakraborty <[email protected]>
2026-01-08usb: xhci: avoid noisy 'Starting the controller' message.Heinrich Schuchardt
We should avoid overwhelming users with non-essential messages. The message 'Starting the controller' is not written for EHCI. We should not write it for XHCI either. Adjust the Python test accordingly. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]>
2026-01-08mmc: mmc_spi: Select CRC16 if CRC checking is enabledDaniel Palmer
Currently CRC16 is not selected when CRC checking is enabled and if it wasn't enabled in the config otherwise the build will fail because of references to crc16_ccitt() that doesn't exist. Signed-off-by: Daniel Palmer <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-01-08mmc: Fix missing 1 ms delay after mmc power upChristoph Stoidner
mmc/sd specification requires a 1 ms delay (stable supply voltage) after vdd was enabled and before issuing first command. For most sdcard/soc combinations, the missing delay seems to be not a problem because the processing time between enabling vdd and the first command is often hundreds of microseconds or more. However, in our specific case, some sdcards were not detected by u-boot: * soc: NXP i.MX 93 * sdcards: SanDisk Ultra, 64GB micro SDXC 1, MediaRange, 8GB, SDHC * measured time between vdd and first command: approx. 784us * symptom: both sdcards did not respond at all to first commands, u-boot mmc subsystem ran into timeout and stops to initialize the cards Signed-off-by: Christoph Stoidner <[email protected]> Cc: Peng Fan <[email protected]> Cc: Jaehoon Chung <[email protected]> Signed-off-by: Peng Fan <[email protected]>