summaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2023-02-02ARM: dts: rmobile: Synchronize DTs with Linux 6.1.7Marek Vasut
Synchronize R-Car device trees with Linux 6.1.7, commit 21e996306a6afaae88295858de0ffb8955173a15 . The following script has been used for the synchronization: $ for i in $(cd arch/arm/dts/ ; ls -1 r8a* | grep -v 'u-boot.dts' ; sed -n '/#include/ s@.*"\(.*\)"@\1@p' $(ls -1 r8a* | grep -v 'u-boot.dts')) ; do if [ -e /linux-2.6/arch/arm64/boot/dts/renesas/$i ] ; then cp /linux-2.6/arch/arm64/boot/dts/renesas/$i arch/arm/dts/ ; elif [ -e /linux-2.6/arch/arm/boot/dts/$i ] ; then cp /linux-2.6/arch/arm/boot/dts/$i arch/arm/dts/ else echo "NOT FOUND: $i" fi done $ git add $( ( cd arch/arm/dts/ ; ls -1 r8a* | grep -v 'u-boot.dts' ; sed -n '/#include/ s@.*"\(.*\)"@\1@p' $(ls -1 r8a* | grep -v 'u-boot.dts')) | tr " " "\n" | sed 's@^@arch/arm/dts/@g' ) Move the include/dt-bindings/{clk,clock}/versaclock.h header used by the renesas boards to match Linux 6.1.y as well. Keep arch/arm/dts/r8a774c0-u-boot.dtsi sdhi3 node as it is now used by the arch/arm/dts/r8a774c0-cat874.dts board. Pick s@spi-flash@flash@ change in arch/arm/dts/r8a779a0-falcon-u-boot.dts from "ARM: dts: Synchronize R-Car V3U DTs with Linux 5.18.3" . Adjust R8A77990 Ebisu CONFIG_SYS_MMC_ENV_DEV from 2 to 0 to reflect the card enumeration in ebisu.dtsi /aliases DT node . Adjust R8A7795 and R8A7796 ULCB CONFIG_SYS_MMC_ENV_DEV from 1 to 0 to reflect the card enumeration in ulcb.dtsi /aliases DT node . Signed-off-by: Marek Vasut <[email protected]> Signed-off-by: Tam Nguyen <[email protected]> # r8a779a0-falcon-u-boot.dts Signed-off-by: Hai Pham <[email protected]> # r8a779a0-falcon-u-boot.dts
2023-02-02ARM: dts: rmobile: Synchronize DT headers with Linux 6.1.7Marek Vasut
Synchronize R-Car device tree headers with Linux 6.1.7, commit 21e996306a6afaae88295858de0ffb8955173a15 . This is only a copyright and SPDX identifier update, no functional change. The following script has been used for the synchronization: $ for i in $(cd include/dt-bindings/clock/ ; ls -1 r8a*) ; do cp /linux-2.6/include/dt-bindings/clock/$i include/dt-bindings/clock/ ; done $ for i in $(cd include/dt-bindings/power/ ; ls -1 r8a*) ; do cp /linux-2.6/include/dt-bindings/power/$i include/dt-bindings/power/ ; done Signed-off-by: Marek Vasut <[email protected]>
2023-02-01Merge tag 'u-boot-imx-20230201' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx For 2023.04 ----------- - several conversion to DM_SERIAL and DM_I2C - fixes for Toradex boards - PSCI CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/14965
2023-02-01board: sifive: unmatched: enable booting on a second NVME deviceAurelien Jarno
The HiFive Unmatched board has a M2 slot for NVME and a PCIe slot that can also be used for NVME. Enable support for a second NVME device, so that software RAID-1 configurations can be supported at the u-boot level. Signed-off-by: Aurelien Jarno <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2023-01-31Merge https://source.denx.de/u-boot/custodians/u-boot-mmcTom Rini
2023-01-31Merge https://source.denx.de/u-boot/custodians/u-boot-pmicTom Rini
2023-01-31configs: imx8mp_evk: revert to old ram settingsManoj Sai
The 'commit 864ac2cf383e ("board: imx8mp: Add Engicam i.Core MX8M Plus EDIMM2.2 Starter Kit")' has changed the imx8mp evk ram settings from 6GB ram to 2GB. This changeset reverts the above change. Signed-off-by: Manoj Sai <[email protected]> Reported-by : Peter Bergin <[email protected]> Reviewed-by: Peng Fan <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-01-31Merge tag 'u-boot-amlogic-20230131' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-amlogic - jethub j100: add rescue boot from microSD - move meson sm command to cmd/meson and add efusedump sub-command - switch dwc2 otg to DM for G12A, GXL & AXG - Add new boards: - Odroid Go Ultra - Odroid-N2L
2023-01-31include/configs: mx6/mx7: drop dangling commentsPeter Robinson
Cleanup some dangling comments left by automated migration processes that are no longer value. Signed-off-by: Peter Robinson <[email protected]> Acked-by: Peng Fan <[email protected]>
2023-01-31power: act8846_pmic: fix number of registersJohn Keeping
The highest register on ACT8846 is 0xf5, so set the number of registers to 0xf6, ensuring that the pmic read/write commands are able to access all of the supported registers (and many that are not valid, since the register space is quite sparse). Signed-off-by: John Keeping <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]>
2023-01-31mmc: sdhci: Enable HS400 support if available in capsAshok Reddy Soma
HS400 is indicated in bit63 of capability register in few IP's. Add a quirk to check this and add HS400 to host capabilities. Signed-off-by: Ashok Reddy Soma <[email protected]>
2023-01-31mmc: sdhci: Check and call config_dll callback functionsAshok Reddy Soma
Check if the low level driver supports config_dll callback function and call it if it does. Call with dll disable before calling set_clock and with dll enable after it. Signed-off-by: Ashok Reddy Soma <[email protected]>
2023-01-31cmd: mmc: Expand bkops handlingMarek Vasut
Add more capable "bkops" command which allows enabling and disabling both manual and automatic bkops. The existing 'mmc bkops-enable' subcommand is poorly named to cover all the possibilities, hence the new-ish subcommand. Note that both commands are wrappers around the same common code. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Jaehoon Chung <[email protected]>
2023-01-31pico-imx7d: Convert to DM_I2C and DM_PMICFabio Estevam
The conversion to DM_I2C is mandatory, so convert to it and also to DM_PMIC. Signed-off-by: Fabio Estevam <[email protected]>
2023-01-30imx8mm-phg: Add board supportFabio Estevam
Add the board support for the i.MX8MM Cloos PHG board. This board uses a imx8mm-tqma8mqml SoM from TQ-Group. imx8mm-phg.dts and imx8mm-tqma8mqml.dtsi are taken directly from Linux 6.2-rc3. Signed-off-by: Fabio Estevam <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2023-01-30pmic: pca9450: Make warm reset on WDOG_B assertionMarek Vasut
The default configuration of the PMIC behavior makes the PMIC power cycle most regulators on WDOG_B assertion. This power cycling causes the memory contents of OCRAM to be lost. Some systems neeeds some memory that survives reset and reboot, therefore this patch is created. The implementation is taken almost verbatim from Linux commit 2364a64d0673f ("regulator: pca9450: Make warm reset on WDOG_B assertion") Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Fabio Estevam <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2023-01-30apalis-imx8: add M4 boot environment helpersAndrejs Cainikovs
Add M4 boot environment functions for reference. Signed-off-by: Andrejs Cainikovs <[email protected]> Signed-off-by: Francesco Dolcini <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-01-30apalis-imx8: update env memory layoutMarcel Ziswiler
Update the distro config env memory layout for the Apalis iMX8 aka QuadMax: - kernel_comp_addr_r=0xf0000000 temporary area for uncompressing (ie FIT images or Image.gz booted using booti) - kernel_comp_size=0x08000000 - loadaddr=0x95400000 avoiding any reserved areas located before that - fdt_addr_r = loadaddr + 128MB - allows for 128MB kernel - scriptaddr = fdt_addr_r + 512KB - allows for 512KB fdt - ramdisk_addr_r = scriptaddr + 512KB - allows for 512KB script Basic idea of memory layout taken from commit fd5c7173ade4 ("imx8m{m,n}_venice: update env memory layout"). However, moved past any reserved areas to avoid any kind of conflicts. Note that for our regular BSP Layers and Reference Images for Yocto Project an updated distro boot script is required (see meta-toradex-bsp-common/recipes-bsp/u-boot/u-boot-distro-boot). Signed-off-by: Marcel Ziswiler <[email protected]> Signed-off-by: Francesco Dolcini <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-01-30apalis-imx8: update update_uboot confirmation messageMarcel Ziswiler
Update update_uboot confirmation message. Signed-off-by: Marcel Ziswiler <[email protected]> Signed-off-by: Francesco Dolcini <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-01-30apalis-imx8: drop obsolete environment variablesMarcel Ziswiler
Drop obsolete environment variables fdt_addr, finduuid, boot_file, mmcargs, mmcdev, mmcpart and panel. Signed-off-by: Marcel Ziswiler <[email protected]> Signed-off-by: Andrejs Cainikovs <[email protected]> Signed-off-by: Francesco Dolcini <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-01-30apalis-imx8: remove obsolete net usb startMarcel Ziswiler
Remove obsolete net USB start. While at it also add a comment about enabling distro-boot. Signed-off-by: Marcel Ziswiler <[email protected]> Signed-off-by: Francesco Dolcini <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-01-30apalis-imx8: remove obsolete sdhc related config definesMarcel Ziswiler
Remove obsolete SDHC related config defines. Nowadays, all SDHC related hardware configuration comes from the device tree. Signed-off-by: Marcel Ziswiler <[email protected]> Signed-off-by: Francesco Dolcini <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-01-30apalis-imx8: introduce setup setting setupargsMarcel Ziswiler
Introduce setup setting setupargs and move earlycon there. Signed-off-by: Marcel Ziswiler <[email protected]> Signed-off-by: Francesco Dolcini <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-01-30apalis/colibri-imx8/8x: remove global variable scriptOleksandr Suvorov
The distroboot script system scans boot_scripts variable and try to find and use to boot each script name mentioned there. Setting global variable "script" breaks this general mechanism of searching and running a distro boot script. Remove global variables "script" to fix working the general distro boot script mechanism. Signed-off-by: Oleksandr Suvorov <[email protected]> Signed-off-by: Marcel Ziswiler <[email protected]> Signed-off-by: Francesco Dolcini <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-01-30apalis-imx8: implement pcb version and soc variant handlingMarcel Ziswiler
Implement PCB version and SoC variant handling which automatically loads the correct device tree for the Linux kernel. Signed-off-by: Marcel Ziswiler <[email protected]> Signed-off-by: Andrejs Cainikovs <[email protected]> Signed-off-by: Francesco Dolcini <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2023-01-27Merge branch '2023-01-27-apple-soc-updates'Tom Rini
First, to quote the author: This series adds support for the PCIe controller found on Apple M1 and M2 machines and enables support for PCIe XHCI controllers. This makes the type-A USB ports on the M1 Mac mini work. Since the use of Apples DART IOMMU is mandatory (these PCIe DARTs don't support bypass mode), this adds DMA mapping operations to the IOMMU uclass and implements them for the Apple DART. It modifies the XHCI driver code to go map DMA buffers through the IOMMU if there is one. Since the M1 Mac mini now has two types of XHCI controllers with different number of ports (2 for the DWC3 controllers, 8 for the Fresco Logic PCIe controller) this uncovered an issue in with the way the hub descriptor is implemented in the XHCI driver. Second, Mark also fixes some Apple-specific instances of CONFIG_IS_ENABLED that should be IS_ENABLED.
2023-01-27Merge tag 'efi-2023-04-rc1-3' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request efi-2023-04-rc1-3 Documentation: * Improve the sl-mx8mm documenation * Clean up README, move some section to HTML * Man-pages for the mtime and sleep command * Description of reducible builds * Document dynamic event handlers UEFI: * Support scrolling in eficonfig command Other: * fix mtest on 64 bit systems
2023-01-27usb: xhci: Fix root hub descriptorMark Kettenis
When a system has multiple XHCI controllers, some of the properties described in the descriptor of the root hub (such as the number of ports) might differ between controllers. Fix this by switching from a single global hub descriptor to a hub descriptor per controller. Signed-off-by: Mark Kettenis <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2023-01-27usb: xhci: Implement DMA mappingMark Kettenis
An XHCI controller that sits behind an IOMMU needs to map and unmap its memory buffers to do DMA. Implement this by inroducing new xhci_dma_map() and xhci_dma_unmap() helper functions. The xhci_dma_map() function replaces the existing xhci_virt_to_bus() function in the sense that it returns the bus address in the case of simple address translation in the absence of an IOMMU. The xhci_bus_to_virt() function is eliminated by storing the CPU address of the allocated scratchpad memory in struct xhci_ctrl. Signed-off-by: Mark Kettenis <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2023-01-27iommu: Add DMA mapping operationsMark Kettenis
In order to support IOMMUs in non-bypass mode we need device ops to map and unmap DMA memory. The map operation enters a mapping for a region specified by CPU address and size into the translation table of the IOMMU and returns a DMA address suitable for programming the device to do DMA. The unmap operation removes this mapping from the translation table of the IOMMU. Signed-off-by: Mark Kettenis <[email protected]>
2023-01-27include: configs: Update env for selecting right dtbSinthu Raja
Now that single defconfig shall be used for booting J721S2 EVM and AM68 SK, the default device tree will not work for selecting dtb for kernel. Update the findfdt env to select right dtb based on board_name env variable. Signed-off-by: Sinthu Raja <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2023-01-27eficonfig: increase the number of menu entriesMasahisa Kojima
Current eficonfig has the maximum number of menu entries and it is 99. If there are more EFI load options and files in the system, eficonfig can not handle it. This commit increases this maximum number of menu entries to INT_MAX. Signed-off-by: Masahisa Kojima <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2023-01-27eficonfig: add vertical scroll supportMasahisa Kojima
The current eficonfig menu does not support vertical scroll, so it can not display the menu entries greater than the console row size. This commit add the vertial scroll support. The console size is retrieved by SIMPLE_TEXT_OUTPUT_PROTOCOL.QueryMode() service, then calculates the row size for menu entry by subtracting menu header and description row size from the console row size. "start" and "end" are added in the efimenu structure. "start" keeps the menu entry index at the top, "end" keeps the bottom menu entry index. item_data_print() menu function only draws the menu entry between "start" and "end". This commit also fixes the issue that "Save" and "Quit" entries can be moved by BKEY_PLUS in change boot order menu. Signed-off-by: Masahisa Kojima <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2023-01-27eficonfig: refactor eficonfig_process_common functionMasahisa Kojima
Current change boot order implementation does not call eficonfig_process_common() and call own menu functions for display_statusline, item_data_print and item_choice. Change boot order functionality should call eficonfig_process_common() to improve maintenanceability. This commit is a preparation to remove the change boot order specific implementation. The menu functions (display_statusline, item_data_print and item_choice) are added as argument of eficonfig_process_common(). The menu description string displayed at the bottom of the menu is also added as argument. Signed-off-by: Masahisa Kojima <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2023-01-27spl: doc: use correct name in jump_to_image_optee() descriptionOvidiu Panait
The actual function being documented is jump_to_image_optee(), not jump_to_image_linux(). Signed-off-by: Ovidiu Panait <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2023-01-27Merge tag 'xilinx-for-v2023.04-rc1' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-microblaze Xilinx chnages for v2023.04-rc1 makefile: - Add multi_dtb_fit dependency clk: - Handle error cases microblaze: - Disable falcon mode and cleanup code around xilinx: - Enable regular expression matching in board_fit_config_name_match() - Fix FRU handling for 0xC1 format - Fix Xilinx legacy format eeprom parsing zynqmp: - Some DT updates/cleanups - Fix IDcode for xck24 - Remove empty mini config files - Add support for k24 versal: - Remove empty mini config files versal_net: - Setup timer when runs in EL3 - Build u-boot.elf for mini configurations zynq-gem: - Add support for new compatible strings - Remove support for Avnet Ultrazedev SOM - Handle SGMII with PCS phy spi: - Add support for gigadevice parts misc: - Remove CONFIG_TARGET_VENUS ifdef - Add missing headers to remove sparse warnings
2023-01-26mtd: spi-nor: Add support for Infineon s25fs256tTakahiro Kuwano
Infineon S25FS256T is 256Mbit Quad SPI NOR flash. The key features and differences comparing to other Spansion/Cypress flash familes are: - 4-byte address mode by factory default - Quad mode is enabled by factory default - Supports mixture of 128KB and 64KB sectors by OTP configuration (this patch supports uniform 128KB only) Signed-off-by: Takahiro Kuwano <[email protected]> Reviewed-by: Jagan Teki <[email protected]>
2023-01-26mtd: spi-nor-core: Make CFRx reg fields genericTakahiro Kuwano
Cypress defines two flavors of configuration registers, volatile and non volatile, and both use the same bit fields. Rename the bitfields in the configuration registers so that they can be used for both flavors. Suggested-by: Tudor Ambarus <[email protected]> Signed-off-by: Takahiro Kuwano <[email protected]> Reviewed-by: Tudor Ambarus <[email protected]> Reviewed-by: Dhruva Gole <[email protected]> Reviewed-by: Jagan Teki <[email protected]>
2023-01-26mtd: spi-nor-core: Consider reserved bits in CFR5 registerTakahiro Kuwano
CFR5[6] is reserved bit and must be always 1. Set it to comply with flash requirements. While fixing SPINOR_REG_CYPRESS_CFR5V_OCT_DTR_EN definition, stop using magic numbers and describe the missing bit fields in CFR5 register. This is useful for both readability and future possible addition of Octal STR mode support. Fixes: ea9a22f7e79c ("mtd: spi-nor-core: Add support for Cypress Semper flash") Suggested-by: Tudor Ambarus <[email protected]> Signed-off-by: Takahiro Kuwano <[email protected]> Reviewed-by: Tudor Ambarus <[email protected]> Reviewed-by: Dhruva Gole <[email protected]> Reviewed-by: Jagan Teki <[email protected]>
2023-01-24Merge https://source.denx.de/u-boot/custodians/u-boot-sunxiTom Rini
This contains some fixes, and the first bunch of some clean up patches to get rid of legacy GPIO and PMIC code. Highlight is the DM AXP PMIC driver, which is required to convert some drivers over to use DM regulators, and also is required to get rid of some less optimal PMIC setup code in Trusted Firmware. This isn't enabled by any defconfig yet, but can be enabled manually and works. For the full glory some patches are still missing, and this requires more testing, which would be simpler if the core code is upstream.
2023-01-24arm64: versal: Remove xilinx_versal_mini_qspi.h configsMichal Simek
The commit eaf6ea6a1dc1 ("Migrate CUSTOM_SYS_INIT_SP_ADDR to Kconfig using system-constants.h") moved custom init stack pointer address to Kconfig which ends up in situation that xilinx_versal_mini_qspi.h is not needed anymore. That's why remove the file and move defconfigs directly to xilinx_versal_mini.h configuration. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/2d7276ab8d4cb1d245b64287fb59c79325513f22.1674041200.git.michal.simek@amd.com
2023-01-24arm64: zynqmp: Remove xilinx_zynqmp_mini_emmc/qspi.h configsMichal Simek
The commit eaf6ea6a1dc1 ("Migrate CUSTOM_SYS_INIT_SP_ADDR to Kconfig using system-constants.h") moved custom init stack pointer address to Kconfig which ends up in situation that xilinx_zynqmp_mini_emmc/qspi.h are not needed anymore. That's why remove files and move defconfigs directly to xilinx_zynqmp_mini.h configuration. Signed-off-by: Michal Simek <[email protected]> Link: https://lore.kernel.org/r/61ae40cf63aabd08adb386c870d3392b0b606fc9.1674040373.git.michal.simek@amd.com
2023-01-23rockchip: Convert rockpro64-rk3399 to use standard bootSimon Glass
Drop the use of scripts and rely on standard boot for all operation. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Kever Yang <[email protected]>
2023-01-23bootstd: Record the bootdevs used during scanningSimon Glass
Add a way to record the bootdevs used when scanning for bootflows. This is useful for testing. Enable this only with BOOTSTD_FULL and do the same for the progress reporting. Re-enable and update the affected tests now that we have this feature. For bootdev_test_order_default() there is no-longer any support for using the bootdev aliases to specify an ordering, so drop that part of the test. Signed-off-by: Simon Glass <[email protected]>
2023-01-23bootstd: Drop the old bootflow_scan_first()Simon Glass
This function is not used outside tests. Drop it and rename bootflow_scan_dev() since it is how we start a scan now. Signed-off-by: Simon Glass <[email protected]>
2023-01-23bootstd: Allow scanning a single bootdev labelSimon Glass
We want to support scanning a single label, like 'mmc' or 'usb0'. Add this feature by plumbing the label through to the iterator, setting a flag to indicate that only siblings of the initial device should be used. This means that scanning a bootdev by its name is not supported anymore. That feature doesn't seem very useful in practice, so it is no great loss. Add a test for bootdev_find_by_any() while we are here. Signed-off-by: Simon Glass <[email protected]>
2023-01-23bootstd: Switch bootdev scanning to use labelsSimon Glass
At present we set up the bootdev order at the start, then scan the bootdevs one by one. However this approach cannot be used with hunters, since the bootdevs may not exist until the hunter is used. Nor can we just run all the hunters at the start, since that violate's U-Boot's 'lazy init' requirement. It also increases boot time. So we need to adjust the algorithm to scan by labels instead. As a first step, drop the dev_order[] array in favour of a list of labels. Update the name of bootdev_setup_iter_order() to better reflect what it does. Update some related comments and log messages. Also disable a few tests until a later commit where we can use them. Signed-off-by: Simon Glass <[email protected]>
2023-01-23bootstd: Allow iterating to the next bootdev priortiySimon Glass
Add a function which moves to the next priority to be processed. This works by storing the current priority in the bootflow iterator. The logic to set this up is included in a subsequent commit. Signed-off-by: Simon Glass <[email protected]>
2023-01-23bootstd: Allow iterating to the next label in a listSimon Glass
Add a function which moves to the next label in a list of labels. This allows processing the boot_targets environment variable. This works using a new label list in the bootflow iterator. The logic to set this up is included in a subsequent commit. Signed-off-by: Simon Glass <[email protected]>
2023-01-23bootstd: Allow hunting for a bootdev by labelSimon Glass
Add a function to hunt for a bootdev label and find the bootdev produced by the hunter (or already present). Add a few extra flags so that we can distinguish between "mmc1", "mmc" and "1" which all need to be handled differently. Signed-off-by: Simon Glass <[email protected]>