summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-03-19board: beacon: imx8mn: Let clock system enable UART clockAdam Ford
Now that the UART driver can enable the required clocks, remove the hard-coded clock enable. Signed-off-by: Adam Ford <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2025-03-19board: beacon: imx8mm: Let clock system enable UART clockAdam Ford
Now that the UART driver can enable the required clocks, remove the hard-coded clock enable. This requires a small re-order of a couple functions. Signed-off-by: Adam Ford <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2025-03-19serial: mxc: Support bulk enabling clocksAdam Ford
Depending on the platform, there may be multiple clock sources required to enable a UART. Use the bulk functions to get and enable the clocks when the UART probes. This can facilitate the removal of functions to manually enable the clock. This is made dependent on CLK_CCF which is used on imx6q, imx8m[mnqp], several imxrt, imx9. If/when the UART clock registration is done for older boards, this limitation could be updated. Signed-off-by: Adam Ford <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2025-03-19clk: imx8mn: register UART clocksAdam Ford
In order to let the serial driver enable the clocks, the UART clocks must be registered first. Signed-off-by: Adam Ford <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2025-03-19clk: imx8mm: register UART clocksAdam Ford
In order to let the serial driver enable the clocks, the UART clocks must be registered first. Signed-off-by: Adam Ford <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2025-03-19clk: imx6q: Register UART clocksAdam Ford
In order to use the driver model and clock system to enable UART clocks from the serial driver, it's necessary to register the UART clocks. With the helper function to check for imx6qp vs other variants, the UART can register for both scenarios. Signed-off-by: Adam Ford <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2025-03-19clk: imx6q: Properly handle imx6qp ECSPI clk_selsAdam Ford
The ECSPI clock has the ability to select between pll3_60m and osc on the imx6qp, where it's fixed on other variants. Fix this by adding using a helper function to determine SoC variant and register the clock accordingly. Signed-off-by: Adam Ford <[email protected]> Reviewed-by: Michael Trimarchi <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2025-03-19board: ouya: add Ouya Game Console supportSvyatoslav Ryhel
The Ouya microconsole is build on Nvidia Tegra 3 (T33) SoC, featuring a quad-core 1.7 GHz ARM Cortex-A9 CPU and a ULP GeForce GPU, paired with 1GB of DDR3 RAM and 8GB of internal flash storage. Running a modified Android 4.1 (Jelly Bean) OS with a custom launcher, it aimed for open-source gaming via a digital storefront. This implementation is mostly based on upstream Linux device tree and fragments of work done by previous developers. Co-developed-by: Peter Geis <[email protected]> Signed-off-by: Peter Geis <[email protected]> Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-03-19ARM: tegra: dts: fix lock, io-reset and open-drain propertiesSvyatoslav Ryhel
Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-03-19pinctrl: tegra20: fix function naming mismatchesSvyatoslav Ryhel
The names used for displaya, displayb and i2c1 do not align with their corresponding Linux counterparts. This inconsistency can cause pins to be configured incorrectly, potentially breaking existing functionality. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-03-19pinctrl: tegra: adjust pin state listsSvyatoslav Ryhel
Modify the pin state lists for lock, io-reset, rcv-sel, and e-io-hv properties by repositioning the default value to the end. This change addresses conflicts with device tree representations of TEGRA_PIN_DISABLE and TEGRA_PIN_ENABLE. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-03-19pinctrl: tegra: adjust default values of pinsSvyatoslav Ryhel
The current default pin and drive values were more of temporary placeholders. They have to be replaced with accurate default values as specified in the TRM and header file. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-03-19ARM: tegra: tf700t: upgrade video bindingsSvyatoslav Ryhel
Align TF700T bindings with existing upstream device trees. OF_UPSTREAM migration is possible already but resulting size of binary exceeds maximum allowed size with full size trees. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-03-19ARM: tegra: p1801-t: configure HDMI bindingSvyatoslav Ryhel
Bind HDMI for ASUS AiO P1801-t to provide full panel support and improve usability. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-03-19ARM: tegra: endeavoru: upgrade video bindingsSvyatoslav Ryhel
Upgrade HTC One X device tree to comply possible upstream Linux device tree. Once Linux catches up, HTC One X can be switched to OF_UPSTREAM. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-03-19ARM: tegra: lg_x3: upgrade video bindingsSvyatoslav Ryhel
Upgrade LG P895 and P880 device tree bindings according to preliminary upstream Linux tree. Once Linux catches up, LG X3 can be switched to OF_UPSTREAM without regressions. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-03-19video: edid: guard standard timings EDID expansion behind kconfigSvyatoslav Ryhel
Since EDID only indicates supported standard timings, a large table with detailed timing information is necessary, consuming significant space. To mitigate this, the table is made configurable via kconfig, allowing it to be excluded when not needed. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-03-19video: backlight: lm3533: set up backlight according to device treeSvyatoslav Ryhel
Configure backlight lm3533 child according to device tree description. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-03-19video: backlight: lm3533: configure core in the probeSvyatoslav Ryhel
Configure core stuff in the probe. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-03-19video: backlight: lm3533: add more flexibility with device treeSvyatoslav Ryhel
Configure LM3533 based on preliminary device tree configuration. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-03-19video: sharp-lq101r1sx01: add missing LPM flagSvyatoslav Ryhel
Add missing MIPI_DSI_MODE_LPM mode flag. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-03-19video: samsung-ltl106hl02: add missing LPM flagSvyatoslav Ryhel
Add missing MIPI_DSI_MODE_LPM mode flag. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-03-19video: renesas-r69328: add power suppliesSvyatoslav Ryhel
Convert enable GPIO into a set of supplies. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2025-03-19net: phy: ksz90x1: Simplify ksz9131_config_rgmii_delayPaul Barker
We can call phy_modify_mmd() instead of manually calling drv->readext() and drv->writeext(). Reviewed-by: Marek Vasut <[email protected]> Signed-off-by: Paul Barker <[email protected]>
2025-03-19net: phy: ksz90x1: Load skew values from device treePaul Barker
Various signal skew values may be set in the device tree for the ksz9131 Ethernet PHY. For example, the RZ/G2L board requires non-default values for rxc-skew-psec & txc-skew-psec. This is based on the ksz9131 phy driver in Linux v6.11. Reviewed-by: Marek Vasut <[email protected]> Signed-off-by: Paul Barker <[email protected]>
2025-03-19net: phy: ksz90x1: Handle ksz9131 LED errataPaul Barker
Micrel KSZ9131 PHY LED behavior is not correct when configured in Individual Mode, LED1 (Activity LED) is in the ON state when there is no-link. Workaround this by setting bit 9 of register 0x1e after verifying that the LED configuration is Individual Mode. This issue is described in KSZ9131RNX Silicon Errata DS80000693B [*] and according to that it will not be corrected in a future silicon revision. [*] https://ww1.microchip.com/downloads/en/DeviceDoc/KSZ9131RNX-Silicon-Errata-and-Data-Sheet-Clarification-80000863B.pdf Based on commit 0316c7e66bbd in the Linux kernel. Tested-by: Quentin Schulz <[email protected]> # RK3588 Tiger Signed-off-by: Paul Barker <[email protected]>
2025-03-19net: phy: Port set/clear bits from LinuxPaul Barker
To simply porting phy drivers from Linux to U-Boot, define phy_set_bits() and phy_clear_bits() functions with a similar API to those used in Linux. The U-Boot versions of these functions include the `devad` argument which is not present in the Linux versions, to keep them aligned with the other phy functions in U-Boot. Reviewed-by: Marek Vasut <[email protected]> Signed-off-by: Paul Barker <[email protected]>
2025-03-19net: ravb: Fix error handling in ravb_probePaul Barker
In ravb_probe(), we were missing a couple of things in the error handling path: * We must unregister the MDIO bus before freeing the corresponding struct mii_dev instance to avoid the potential for use-after-free bugs. * We must free the resources acquired by clk_get_bulk() even if the clocks have not yet been enabled. Fixes: 8ae51b6f324e ("net: ravb: Add Renesas Ethernet RAVB driver") Signed-off-by: Paul Barker <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2025-03-19renesas_rzg2l_smarc_defconfig: Enable USB supportPaul Barker
Enable support for USB 2.0, USB 1.1 and USB storage devices on the Renesas RZ/G2L EVK. Also enable the 'usb' command to support USB scanning and debugging. Signed-off-by: Paul Barker <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2025-03-19phy: rcar: Support RZ/G2L USB PHYPaul Barker
Extend the existing Renesas R-Car Gen3 USB 2.0 PHY driver to support the RZ/G2L and related SoCs. Also enable this driver by default for the RZ/G2L SoC family. Reviewed-by: Marek Vasut <[email protected]> Signed-off-by: Paul Barker <[email protected]>
2025-03-19reset: rzg2l-usbphy-ctrl: Connect up vbus regulatorPaul Barker
Bind the USB VBUS regulator driver under the USB PHY reset driver for the Renesas RZ/G2L and related SoCs. This additional bind is needed as the corresponding device tree node does not contain a compatible string. Reviewed-by: Marek Vasut <[email protected]> Signed-off-by: Paul Barker <[email protected]>
2025-03-19regulator: rzg2l-usbphy: Add new driverPaul Barker
Add a new regulator driver to control the USB VBUS supply on the Renesas RZ/G2L and related SoCs. Reviewed-by: Marek Vasut <[email protected]> Signed-off-by: Paul Barker <[email protected]>
2025-03-19reset: rzg2l-usbphy-ctrl: Add new driverPaul Barker
Add a new driver to control the USB 2.0 PHY reset controller on the Renesas RZ/G2L and related SoCs. Signed-off-by: Paul Barker <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2025-03-18Merge patch series "pxe: Precursor series for supporting read_all() in ↵Tom Rini
extlinux / PXE" Simon Glass <[email protected]> says: This series includes some patches related to allowing read_all() to be used with the extlinux / PXE bootmeths. These patches were split out from the stb4 series, since it will need to have additional patches for LWIP, to avoid breaking PXE booting when LWIP is used. Link: https://lore.kernel.org/r/[email protected]
2025-03-18net: Provide a function to run network operationsSimon Glass
Add a new netboot_run() function which can be used for simple network operations, such as loading a file. Put the implementation in an internal function, used by the existing code. Place this function into the net/ code, so that it does not need the command line to be available. Document which network operations are supported, i.e. a limited subset, for now. For the one board which uses lwip, it is not quite clear how to avoid using the cmdline interface. This will need some discussion. Signed-off-by: Simon Glass <[email protected]>
2025-03-18net: Drop #ifdef in parse_args()Simon Glass
Use IS_ENABLED() to avoid an extra build path. Signed-off-by: Simon Glass <[email protected]> Acked-by: Ilias Apalodimas <[email protected]>
2025-03-18net: Refactor part of netboot_common() into a functionSimon Glass
Move the core code for starting an netboot operation into a separate function, so that we can (with additional work) move towards calling it from outside the file. Signed-off-by: Simon Glass <[email protected]>
2025-03-18net: Return the size from parse_args()Simon Glass
Rather than setting global variables, return the size, if provided. For tftput, use the addr argument to store the save address, to avoid adding yet another parameter. Signed-off-by: Simon Glass <[email protected]>
2025-03-18net: Return the address and size from parse_addr_size()Simon Glass
Rather than updating the global, update the value of some parameters, so the action of the function is simpler. Signed-off-by: Simon Glass <[email protected]>
2025-03-18net: Return the load address from parse_args()Simon Glass
Rather than updating the global, update the value of a parameter, so the action of the function is simpler. Signed-off-by: Simon Glass <[email protected]>
2025-03-18net: Simplify parse_args()Simon Glass
This function repeats the same code in a few places, namely setting net_boot_file_name_explicit and copying of the filename to net_boot_file_name Move these two operations to the caller, with just the filename (or NULL) returned by parse_args() This makes things a little easier to follow. Signed-off-by: Simon Glass <[email protected]>
2025-03-18net: Tidy up the comments to parse_args()Simon Glass
This function is a bit vague as to what it does. Expand the comment a little, to specify which args are provided and which variables are updated. Signed-off-by: Simon Glass <[email protected]> Acked-by: Ilias Apalodimas <[email protected]>
2025-03-18net: Keep the bootstage functions togetherSimon Glass
Move the bootstage_mark() function just before net_loop(), so that the IPv6 code is not in the way. Signed-off-by: Simon Glass <[email protected]>
2025-03-18boot: pxe: Refactor label_run_boot() to avoid cmdlineSimon Glass
Adjust the remaining call in this function to use the bootm API. This will allow PXE to work without the command line. Signed-off-by: Simon Glass <[email protected]>
2025-03-18pxe_utils: Simplify default fdt in label_run_boot()Simon Glass
Tidy up this code a little to avoid two calls to env_get() for both fdt_addr and fdtcontroladdr Signed-off-by: Simon Glass <[email protected]> Suggested-by: Quentin Schulz <[email protected]>
2025-03-18boot: pxe: Use bootm_...() functions where possibleSimon Glass
Rather than building a command line for each operation, use the functions provided by the bootm API. Make sure that the bootm functions are available if pxe_utils is used. Since SYS_BOOTM_LEN is not present for the tools-only build, adjust the code to handle that. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2025-03-18boot: Support compressed booti images in bootmSimon Glass
A compressed booti image relies on the compression-format's header at the start to indicate which compression algorithm is used. We don't support this elsewhere in U-Boot, so assume that a compressed file is always a booti file. Once it is compressed, a check is made to make sure that it actually is. Simplify the implementation by adding a new function which returns the booti image-type if compression is detected. Signed-off-by: Simon Glass <[email protected]>
2025-03-18boot: Support booti format in bootmSimon Glass
At present the booti format is handled separately, in its own command. Provide a way to boot uncompressed booti images within the bootm code, so that eventually we can boot these images without CONFIG_CMDLINE Update bootm_init() to attach the images for all formats which use them. Add some debugging while we are here. Signed-off-by: Simon Glass <[email protected]>
2025-03-18boot: arm: riscv: sandbox: Add a format for the booti fileSimon Glass
Arm invented a new format for arm64 and something similar is also used with RISC-V. Add this to the list of supported formats and provide a way for the format to be detected on both architectures. Update the genimg_get_format() function to support this. Fix up switch() statements which don't currently mention this format. Booti does not support a ramdisk, so this can be ignored. Signed-off-by: Simon Glass <[email protected]>
2025-03-18boot: Convert IMAGE_FORMAT into an enumSimon Glass
Use an enum so it is clearer that these options are related. Update genimg_get_format(), tidy up the function comment and move it to the header file, since it is exported. Signed-off-by: Simon Glass <[email protected]>