aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2022-08-08CI: Azure: Merge PowerPC jobs in to oneTEST/move-azure-to-ubuntu-22.04Tom Rini1-14/+2
At this point given the number of PowerPC platforms we have, a single job to build them all fits within the time limit we have in Azure. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-08-08CI: Azure: Move to Ubuntu 22.04 imageTom Rini1-1/+1
As per https://github.com/actions/runner-images/issues/6002 the Ubuntu 18.04 image is deprecated and will be removed by December 1, 2022. Move to the Ubuntu 22.04 image as our base for launching our containers from. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-08-08HACK: Only want Azure for this commitTom Rini1-448/+0
Signed-off-by: Tom Rini <trini@konsulko.com>
2022-08-08Merge branch '2022-08-08-networking-updates'Tom Rini24-309/+1199
After checking with Ramon, take a number of reviewed network patches. This includes: - A number of dwc_eth_qos updates, mpc8xx_fec DM migration, NPCM7xx EMAC driver. - Other assorted minor updates
2022-08-08net: dwc_eth_qos: Add eqos_get_enetaddr callback for stm32Patrice Chotard1-0/+1
Add .eqos_get_enetaddr callback defined as eqos_null_ops() to avoid illegal access. Fixes: a624251461bf ("net: dwc_eth_qos: introduce eqos hook eqos_get_enetaddr") Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2022-08-08net: dwc_eth_qos: Add eqos_get_enetaddr callback for tegra186Patrice Chotard1-0/+1
Add .eqos_get_enetaddr callback defined as eqos_null_ops() to avoid illegal access. Fixes: a624251461bf ("net: dwc_eth_qos: introduce eqos hook eqos_get_enetaddr") Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2022-08-08ARM: dts: uniphier: Change phy-mode to RGMII-ID to enable delay pinsKunihiko Hayashi3-4/+4
UniPhier LD20, PXs2 and PXs3 boards have ethernet phy that has RX/TX delays of RGMII interface using pull-ups on the RXDLY and TXDLY pins. So should set the phy-mode to "rgmii-id" to show that RX/TX delays are enabled. Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2022-08-08net: ave: Add capability of rgmii-id modeKunihiko Hayashi1-1/+13
This allows you to specify the type of rgmii-id that will enable phy internal delay in ethernet phy-mode. This adds all RGMII cases to all of get_pinmode() except LD11, because LD11 SoC doesn't support RGMII due to the constraint of the hardware. When RGMII phy mode is specified in the devicetree for LD11, the driver will abort with an error. Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2022-08-08net: phy: possible NULL dereference in fixed_phy_create()Heinrich Schuchardt1-3/+3
We check if phydev is NULL. Only but if it is non-NULL we set one component of phydev. But even if it is NULL we set another. We should not dereference NULL in either case. Fixes: e24b58f5ed4f ("net: phy: don't require PHY interface mode during PHY creation") Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Marek Behún <kabel@kernel.org>
2022-08-08net: dwc_eth_qos: cosmetic: reorder include filesPatrick Delaunay1-1/+1
Reorder include files in the U-Boot expected order. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2022-08-08net: phy: Remove inline definitions from convinience functionsRamon Fried2-180/+183
The convinience functions are not that small and they caused bloated text segments because of their usage. There was no need to inline them in the first place, as they're not part of a fastpath. Signed-off-by: Ramon Fried <rfried.dev@gmail.com> Reviewed-by: Michael Trimarchi <michael@amarulasolutions.com> Reviewed-by: Marek Behún <kabel@kernel.org> Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
2022-08-08net: ftgmac100: use bus name in mdio error messagesZev Weiss1-2/+2
Previously we'd been using a device name retrieved via ftgmac100_data->phydev, but the mdio read/write functions may be called before that member is initialized in ftgmac100_phy_init(), leading to a NULL pointer dereference while printing the error message issued if the mdio access fails. We can instead use bus->name, which is already available at that point. Signed-off-by: Zev Weiss <zev@bewilderbeest.net> Fixes: 538e75d3fc54 ("net: ftgmac100: add MDIO bus and phylib support") Reviewed-by: Cédric Le Goater <clg@kaod.org>
2022-08-08net: nuvoton : Add NPCM7xx EMAC driverJim Liu3-0/+751
NPCM750 provides identical ethernet MAC controllers for WAN/LAN applications. Signed-off-by: Jim Liu <JJLIU0@nuvoton.com> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2022-08-08net: mpc8xx_fec: Migrate to DM_ETHChristophe Leroy6-104/+104
Migrate mpc8xx_fec driver to DM_ETH. Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2022-08-08net: dwc_eth_qos: remove use of DWC_NET_PHYADDRRasmus Villemoes4-7/+0
Only two boards in the tree set the macro DWC_NET_PHYADDR. Both have CONFIG_DM_ETH_PHY=y, so should set the phy address in DT if necessary. The imx8mp_evk does set the correct address in device tree. The other board seems to be a copy-paste-adapt from an old version of the imx8mp_evk config header, given the "#ifdef CONFIG_DWC_ETH_QOS" block that has been removed from imx8mp_evk header in commit 127fb454955. Its device tree doesn't even enable (i.e., set 'status = "okay"') the &eqos node. But the other ethernet device, &fec, does get enabled, and does have a phy sitting at address 4 (and it also has a corresponding legacy #define CONFIG_FEC_MXC_PHYADDR 4). So I believe it should be completely safe to remove it from there as well. Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk> Reviewed-by: Ramon Fried <rfried.dev@gmail.com> [trini: Re-apply to top of tree, update imx93_evk.h] Signed-off-by: Tom Rini <trini@konsulko.com>
2022-08-08net: dwc_eth_qos: lift parsing of max-speed DT property to common codeRasmus Villemoes1-2/+2
I have an iMX8MP with a ti,dp83867 phy in front of the eqos interface. The phy is Gbit capable - however, the C and D differential pairs are not physically routed to the RJ45 connector. So I need to prevent the phy from advertising 1000Mbps. The necessary code is almost already there in the form of a phy_set_supported() call in eqos_start(), but the max-speed DT property is currently only parsed in eqos_probe_resources_stm32(). Lift that parsing to eqos_probe(). Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2022-08-08net: dwc_eth_qos: fix double resource leak in eqos_remove()Rasmus Villemoes1-1/+1
Not only does eqos_remove() fail to free the buffers that have been allocated by eqos_probe_resources_core(), it repeats those allocations and thus drops twice as much memory on the floor. Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2022-08-08net: dm9000: Correctly handle empty FIFOMarek Vasut1-2/+2
Assign packet pointer only in case the MAC reports anything in the FIFO. In case the MAC indicates empty FIFO, return 0 to pass that information to the network stack. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Joe Hershberger <joe.hershberger@ni.com> Cc: Ramon Fried <rfried.dev@gmail.com> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2022-08-08net: phy: marvell: Add support for 88E1240 PHYStefan Roese1-0/+21
This patch adds basic support for the Marvell 88E1240 PHY. This will be used by the upcoming ethernet support addition for the Marvell MIPS Octeon EBB7304 platform. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Ramon Fried <rfried.dev@gmail.com> Cc: Joe Hershberger <joe.hershberger@ni.com> Cc: Aaron Williams <awilliams@marvell.com> Cc: Chandrakala Chavva <cchavva@marvell.com> Reviewed-by: Marek Behún <marek.behun@nic.cz>
2022-08-08net: phy: marvell: Support reg config via "marvell, reg-init" DT propertyStefan Roese1-0/+100
This patch adds support for the "marvell,reg-init" DT property, which is used to describe board specific Marvell PHY register configurations in the board dts file. This DT property is supported in the Linux Kernel since a longer time. Adding it to U-Boot now, enables the boards which describe the register settings in their DT files here as well. I've included calling this marvell_of_reg_init() to all foo_config() functions in this patch as well. If CONFIG_DM_ETH is not set, there is no ofnode, or no "marvell,reg-init" property, the PHY initialization is unchanged. The function marvell_of_reg_init() is a port of the Linux version. Please note that I explicitly did not add error checking and handling to the U-Boot version, as this is basically not done for phy_read/write in this Marvell PHY code. This will be used by the upcoming ethernet support on the MIPS Octeon EBB 7304 board. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Ramon Fried <rfried.dev@gmail.com> Cc: Joe Hershberger <joe.hershberger@ni.com> Cc: Aaron Williams <awilliams@marvell.com> Cc: Chandrakala Chavva <cchavva@marvell.com> Cc: Marek Behún <marek.behun@nic.cz> Reviewed-by: Marek Behún <marek.behun@nic.cz>
2022-08-08net: bootp: Make root path (option 17) length configurableAndre Kalb3-2/+10
to adjust the root path length. Eg to 256 from Linux Kernel Signed-off-by: Andre Kalb <andre.kalb@sma.de> Reviewed-by: Ramon Fried <rfried.dev@gmail.com> [trini: Guard extern so that !CONFIG_NET platforms will build] Signed-off-by: Tom Rini <trini@konsulko.com>
2022-08-05Merge branch '2022-08-05-buildman-integrate-boardscfg'Tom Rini20-1006/+960
To quote Simon: This series drops the need for the genboardscfg.py script, so that the boards.cfg file is produced (and consumed) entirely within buildman. The file is not entirely removed since it does have some uses and we need some sort of cache for the information. The genboardscfg.py script is effectively incorporated in buildman. It also improves operation from an IDE with a new -I option and fixes up some of the pylint warnings in buildman. Finally, this series also fixes a bug which allows use to drop support for CONFIG_SYS_EXTRA_OPTIONS which is long-standing desire. It also fixes a minor bug that causes 'Invalid line' spam when checking for function bloat with the -B option.
2022-08-05buildman: Drop a TODO that is doneWIP/2022-08-05-buildman-integrate-boardscfgSimon Glass1-3/+0
Buildman now uses worktrees when available, instead of doing a full clone. This was done in this commit: 76de29fc4f buildman: Use git worktrees instead of git clones when possible Drop the TODO. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-08-05buildman: Drop a Python 2.7 commentSimon Glass1-1/+0
This is well out of date, but it is still reasonable to use a list. Drop the comment. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-08-05buildman: Allow lines without a symbolSimon Glass1-11/+9
The 'nm' tool can produce lines without a symbol, for example: 00000004 t Silently skip these and anything else without three fields. Drop the warning since there is nothing the user can do about it. Signed-off-by: Simon Glass <sjg@chromium.org> Reported-by: Tom Rini <trini@konsulko.com>
2022-08-05Drop genboardscfg.pySimon Glass2-445/+0
Now that buildman can generate this with the -R option, drop the script. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com>
2022-08-05gitlab/azure: Use buildman instead of genboardscfgSimon Glass2-2/+2
Use the equivalent buildman functionality to check maintainer info. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
2022-08-05buildman: Return an error if there are maintainer warningsSimon Glass3-11/+24
Detect warnings about missing maintain info and return result code 2 in that case. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-08-05Revert "Revert "global: Remove CONFIG_SYS_EXTRA_OPTIONS support""Simon Glass6-111/+4
This is not needed now that CONFIG_SYS_TARGET_NAME is correctly determined when scanning Kconfig. This reverts commit 25b8acee2ea11a9edc100c42a61f5d6187eb6167. Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2022-08-05buildman: Replace the Options column with config nameSimon Glass2-17/+10
This appears in boards.cfg but we want to remove it. Drop support for generating it and reading it. Detect an old boards.cfg file that has this field and regenerate it, to avoid problems. Instead, add the config name in that place. This fixes a subtle bug in the generation code, since it uses 'target' for the config name and then overwrites the value in scan() by setting params['target'] to the name of the defconfig. The defconfig name is not the same as the SYS_CONFIG_NAME variable. With this change, we still have the config name and it can be searched by buildman, e.g. with: buildman -nv sun5i Signed-off-by: Simon Glass <sjg@chromium.org> Reported-by: Tom Rini <trini@konsulko.com>
2022-08-05buildman: Tidy up pylint problems in boards moduleSimon Glass1-148/+204
Fix all the pylint warnings. Also tidy up the comments so that they show type information, as required. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-08-05buildman: Incorporate the genboardscfg.py toolSimon Glass4-15/+426
Bring this tool into buildman, so we don't have to run it separately. The board.cfg file is still produced as part of the build, to save time when doing another build in the same working directory. If it is out of date with respect to the Kconfig, it is updated. Time to regenerate on a recent single-thread machine is 4.6s (1.3s on a 32-thread machine), so we do need some sort of cache if we want buildman to be useful on incremental builds. We could use Python's pickle format but: - it seems useful to allow boards.cfg to be regenerated, at least for a while, in case other tools use it - it is possible to grep the file easily, e.g. to find boards which use a particular SoC (similar to 'buildman -nv <soc>' Signed-off-by: Simon Glass <sjg@chromium.org> Suggested-by: Tom Rini <trini@konsulko.com>
2022-08-05buildman: Split out Boards into its own fileSimon Glass5-288/+301
Use a separate file for the Boards class so that its name matches the module name. Fix up the function names to match the pylint style and fix some other warnings. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-08-05buildman: Convert camel case in board.pySimon Glass4-42/+42
Convert this file to snake case and update all files which use it. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-08-05buildman: Drop use of 'board' in board moduleSimon Glass1-8/+8
Use brds instead so that we can reserve 'boards' and 'board' as module names. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-08-05buildman: Drop use of 'boards' in controlSimon Glass3-20/+19
Use brds instead so that we can reserve 'boards' for a module name. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-08-05buildman: Fix use of 'boards' in testSimon Glass1-21/+21
We want to create a module called 'boards' so avoid use of this variable name in this module. Change the global to be capitalised, as required by Python style. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-08-05buildman: Fix use of 'boards' in func_testSimon Glass1-19/+19
We want to create a module called 'boards' so avoid use of this variable name in this module. Change the global to be capitalised, as required by Python style. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-08-05buildman: Avoid using board as a variableSimon Glass6-56/+55
We have a module called 'board'. Sometimes buildman uses 'brd' as an instance variable but sometimes it uses 'board', which is confusing and can mess with the module handling. Update the code to use 'brd' consistently, making it easier for tools to determine when the module is being referenced. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-08-05buildman: Support running from an IDESimon Glass4-29/+63
Add a flag to allow buildman to behave properly for use from an IDE. This shows error/warning output on stderr and drops all summary and progress information. This should normally only be used when building a single board. Fix up a confusing comment for GetResultSummary() while we are here, since we want to use the Outcome object to access the unprocessed error lines from the build. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-08-05buildman: Drop -I optionSimon Glass2-6/+0
This has been deprecated with a notice that it will be removed after April 2021. Drop it now. Signed-off-by: Simon Glass <sjg@chromium.org>
2022-08-05Merge tag 'tpm-030822' of https://source.denx.de/u-boot/custodians/u-boot-tpmWIP/05Aug2022Tom Rini13-82/+213
EFI_RNG_PROTOCOL with a TPM
2022-08-04configs: Resync with savedefconfigWIP/04Aug2022Tom Rini3-23/+12
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2022-08-04Merge branch '2022-08-04-Kconfig-migrations'Tom Rini412-1433/+758
- Further migrations to Kconfig and associated dead code removal.
2022-08-04Convert CONFIG_SYS_FSL_DDR_INTLV_256B to KconfigTom Rini26-8/+29
This converts the following to Kconfig: CONFIG_SYS_FSL_DDR_INTLV_256B Signed-off-by: Tom Rini <trini@konsulko.com>
2022-08-04Convert CONFIG_SYS_FSL_CORES_PER_CLUSTER to KconfigTom Rini3-7/+8
This converts the following to Kconfig: CONFIG_SYS_FSL_CORES_PER_CLUSTER As part of this, correct the dependencies on SYS_FSL_THREADS_PER_CORE. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-08-04Convert CONFIG_FSL_MEMAC et al to KconfigTom Rini44-23/+77
This converts the following to Kconfig: CONFIG_FSL_MEMAC CONFIG_SYS_MEMAC_LITTLE_ENDIAN Signed-off-by: Tom Rini <trini@konsulko.com>
2022-08-04Convert CONFIG_SYS_FSL_CCSR_GUR_BE et al to KconfigTom Rini8-45/+43
This converts the following to Kconfig: CONFIG_SYS_FSL_CCSR_GUR_BE CONFIG_SYS_FSL_CCSR_SCFG_BE CONFIG_SYS_FSL_ESDHC_BE CONFIG_SYS_FSL_IFC_BE CONFIG_SYS_FSL_PEX_LUT_BE CONFIG_SYS_FSL_CCSR_GUR_LE CONFIG_SYS_FSL_CCSR_SCFG_LE CONFIG_SYS_FSL_ESDHC_LE CONFIG_SYS_FSL_IFC_LE CONFIG_SYS_FSL_PEX_LUT_LE Signed-off-by: Tom Rini <trini@konsulko.com>
2022-08-04Convert CONFIG_FSL_CORENET to KconfigTom Rini43-51/+17
This converts the following to Kconfig: CONFIG_FSL_CORENET Signed-off-by: Tom Rini <trini@konsulko.com>
2022-08-04configs: Remove a number of unreferenced CONFIG options.Tom Rini28-130/+6
There are a large number of options under CONFIG_SYS (but some of these are elsewhere, spotted while cleaning CONFIG_SYS) that are never referenced, or only used slightly later in the config file. Remove or restructure these. Signed-off-by: Tom Rini <trini@konsulko.com>