summaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2023-04-07net: phy: nxp-tja11xx: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: nxp-c45-tja11xx: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: natsemi: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: meson-gxl: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: ksz90x1: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: ksz8xxx: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: marvell: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: lxt: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: et1011c: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: mv88e61xx: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: davicom: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: cortina: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: ca_phy: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: broadcom: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: b53: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: atheros: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: aquantia: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: adin: Convert to U_BOOT_PHY_DRIVER()Marek Vasut
Convert PHY driver to U_BOOT_PHY_DRIVER() macro and drop phy_register() init call. Converted using sed "s@^static struct phy_driver \(.*\)_driver = \+{@U_BOOT_PHY_DRIVER(\L\1) = {" Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: Iterate over both registered PHYs and struct phy_driver linker listMarek Vasut
Introduce U_BOOT_PHY_DRIVER() macro which is used to add struct phy_driver into a new linker list section containing all compiled in struct phy_driver drivers. This is so far empty until PHY drivers are converted over to this macro. Iterate over both drivers registered using soon to be legacy phy_register() as well as drivers in the new linker list when looking up a suitable PHY driver. This way, PHY drivers can be converted over to the new macro one driver at a time. The relocation of callbacks for linker list based drivers now happens in phy_init() call as the drivers are available at that point in time, and phy_register() is not called for those drivers. Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: Factor manual relocation into separate functionMarek Vasut
Create separate function to implement manual relocation of PHY driver functions and make use of that function. This is a preparatory patch for introduction of PHY driver definition using linker lists. No functional change. Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: teranetics: Staticize PHY driver entriesMarek Vasut
These struct phy_driver ... instances are local to this source code file, staticize them. No functional change. Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: cortina: Staticize PHY driver entriesMarek Vasut
These struct phy_driver ... instances are local to this source code file, staticize them. No functional change. Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: ca_phy: Staticize PHY driver entriesMarek Vasut
These struct phy_driver ... instances are local to this source code file, staticize them. No functional change. Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC)
2023-04-07net: phy: aquantia: Staticize PHY driver entriesMarek Vasut
These struct phy_driver ... instances are local to this source code file, staticize them. No functional change. Signed-off-by: Marek Vasut <[email protected]> Acked-by: Michal Simek <[email protected]> Tested-by: Michal Simek <[email protected]> #microblaze (MANUAL_RELOC) Reviewed-by: Ramon Fried <[email protected]>
2023-04-06serial-uclass: drop redundant code in serial_check_stdout()Rasmus Villemoes
As the updated comment says, this is already handled by fdt_path_offset_namelen() itself. Signed-off-by: Rasmus Villemoes <[email protected]>
2023-04-06ata: don't use SYS_SCSI_MAX_SCSI_ID for SATAHeinrich Schuchardt
CONFIG_SYS_SCSI_MAX_SCSI_ID is not defined if CONFIG_SCSI=n. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-04-06ata: fix requirements for CONFIG_AHCI_PCIHeinrich Schuchardt
Building with CONFIG_AHCI_PCI=y and CONFIG_SCSI_AHCI=n leads to drivers/ata/ahci-pci.o: in function `ahci_pci_probe': drivers/ata/ahci-pci.c:21: undefined reference to `ahci_probe_scsi_pci' Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-04-06spi: Kconfig: add dependency on CONFIG_MPC85xx for FSL_ESPI entryCorentin Guillevic
The Freescale ESPI driver (CONFIG_FSL_ESPI) relies to the MPC85xx platform (PowerPC) through arch/powerpc/include/asm/immap_85xx.h. The driver can't compile on another architecture/platform. Signed-off-by: Corentin Guillevic <[email protected]>
2023-04-06spi: mpc8xxx: Add support for SPI on mpc832xChristophe Leroy
On mpc832x, SPI can be either handled by CPU or QE. In order to work in CPU mode, bit 17 of SPMODE has to be set to 1, that bit is called OP. Also, data is located at a different place than the one expected by the driver today. In 8 bits mode with REV set, data to be transmitted is located in the most significant byte while received data is located in second byte. So perform the necessary shifts. In order to differentiate with other CPUs, a new compatible is added for mpc832x: fsl,mpc832x-spi Signed-off-by: Christophe Leroy <[email protected]> Cc: Rasmus Villemoes <[email protected]>
2023-04-06gpio: Add QUICC Engine GPIOs driverChristophe Leroy
The mpc832x has GPIOs handled by the QUICC Engine. The registers are different from the one for the non QE mpc83xx GPIOs. Implement a GPIO driver for those. Signed-off-by: Christophe Leroy <[email protected]>
2023-04-06clk: mpc83xx: Fix clocks for mpc832xChristophe Leroy
gd->arch.sdhc_clk only exists when CONFIG_FSL_ESDHC is set, so enclose it inside ifdefs. gd->arch.qe_clk and gd->arch.brg_clk must be populated when CONFIG_QE is set. Signed-off-by: Christophe Leroy <[email protected]>
2023-04-06watchdog: mpc8xxx: Add support for mpc83xxChristophe Leroy
Introduce a new compatible "fsl,pq2pro-wdt" On mpc83xx, the prescaling factor is 0x10000. Don't write the watchdog configuration register in start.S as it can be written only once. Signed-off-by: Christophe Leroy <[email protected]>
2023-04-06watchdog: mpc8xxx: Make it genericChristophe Leroy
mpc8xx, mpc83xx and mpc86xx have similar watchdog with almost same memory registers. Refactor the driver to get the register addresses from the device tree and use the compatible to know the prescale factor. Calculate the watchdog setup value from the provided timeout. Don't declare it anymore as an HW_WATCHDOG, u-boot will start servicing the watchdog early enough. On mpc8xx the watchdog configuration register is also used for configuring the bus monitor. So add it as an option to the watchdog when it is mpc8xx. When watchdog is not selected, leave the configuration of the initial SYPCR from Kconfig. Signed-off-by: Christophe Leroy <[email protected]>
2023-04-05watchdog: mpc8xx: Rename it mpc8xxxChristophe Leroy
mpc8xx, mpc83xx and mpc86xx have similar watchdog with almost same memory registers. Rename it mpc8xxx which is the generic name used for drivers supporting several mpc families. The driver will be made more generic in following patch. Signed-off-by: Christophe Leroy <[email protected]>
2023-04-05blk: blkmap: Add linear device mapping supportTobias Waldekranz
Allow a slice of an existing block device to be mapped to a blkmap. This means that filesystems that are not stored at exact partition boundaries can be accessed by remapping a slice of the existing device to a blkmap device. Signed-off-by: Tobias Waldekranz <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-04-05blk: blkmap: Add memory mapping supportTobias Waldekranz
Allow a slice of RAM to be mapped to a blkmap. This means that RAM can now be accessed as if it was a block device, meaning that existing filesystem drivers can now be used to access ramdisks. Signed-off-by: Tobias Waldekranz <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-04-05blk: blkmap: Add basic infrastructureTobias Waldekranz
blkmaps are loosely modeled on Linux's device mapper subsystem. The basic idea is that you can create virtual block devices whose blocks can be backed by a plethora of sources that are user configurable. This change just adds the basic infrastructure for creating and removing blkmap devices. Subsequent changes will extend this to add support for actual mappings. Signed-off-by: Tobias Waldekranz <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-04-04drivers: fastboot: zImage flashing is not supported for v3, v4Safae Ouajih
With vendor boot image introduced in version 3 and 4 of boot image header, boot information is located in both boot image and vendor boot image. Flashing zImage is not supported for version 3 and 4 since this requires updating vendor boot image and/or generating a new image. Print an error message when the boot image header version is greater than 2. Signed-off-by: Safae Ouajih <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Tested-by: Mattijs Korpershoek <[email protected]>
2023-04-04android: boot: replace android_image_check_headerSafae Ouajih
With the new vendor boot image introduced in versions 3 and 4 of boot image header, the header check must be done for both boot image and vendor boot image. Thus, replace android_image_check_header() by is_android_boot_image_header() to only refer to boot image header check. Signed-off-by: Safae Ouajih <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Tested-by: Mattijs Korpershoek <[email protected]>
2023-04-04android: boot: rename andr_img_hdr -> andr_boot_img_hdr_v0Safae Ouajih
Android introduced boot header version 3 or 4. The header structure change with version 3 and 4 to support the new updates such as: - Introducing Vendor boot image: with a vendor ramdisk - Bootconfig feature (v4) Change andr_img_hdr struct name to maintain support for version v0, v1 and v2 while introducing version 3 and 4. Signed-off-by: Safae Ouajih <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Tested-by: Mattijs Korpershoek <[email protected]>
2023-04-03Merge https://source.denx.de/u-boot/custodians/u-boot-usbTom Rini
- Two USB gadget fixes
2023-04-04usb: gadget: f_sdp: Add missing spl_board_prepare_for_boot() callMarek Vasut
The spl_board_prepare_for_boot() should be called before jump_to_image_no_args() to perform board-specific deinitialization before jumping to the next stage. This board-specific deinitialization can be very much anything, e.g. disable dcache in case it was enabled, or such. Add the missing spl_board_prepare_for_boot() call into f_sdp . Signed-off-by: Marek Vasut <[email protected]>
2023-04-04usb: gadget: missing fallthrough in composite_setup()Heinrich Schuchardt
Add a missing fallthrough macro. This fixes a -Wimplicit-fallthrough warning. Signed-off-by: Heinrich Schuchardt <[email protected]>
2023-04-03Merge branch 'next'Tom Rini
Signed-off-by: Tom Rini <[email protected]>
2023-04-03pinctrl: fix pinctrl_gpio_get_pinctrl_and_offset for gpio-ranges arrayQuanyang Wang
Sometimes a multi-element array is used for "gpio-ranges" property in dts file: qe_pio_e: gpio-controller@1460 { ...... gpio-ranges = <&pinctrl1 0 20 10>, <&pinctrl2 10 50 20>; ...... }; But the function pinctrl_gpio_get_pinctrl_and_offset can't handle this case because the "index" argument passed to dev_read_phandle_with_args is fixed to be "0". Use a loop to traverse the array to fix it. Signed-off-by: Quanyang Wang <[email protected]>
2023-04-02rockchip: Fix incorrect constant name in RAM init codeDavid Sebek
A condition in the rk3399 RAM initialization code used the old CONFIG_RAM_RK3399_LPDDR4 constant name. This commit changes the condition to use the correct CONFIG_RAM_ROCKCHIP_LPDDR4 constant. Reviewed-by: Simon Glass <[email protected]>
2023-04-01scsi: typo supporedtHeinrich Schuchardt
%s/supporedt/supported/ Fixes: edca8cf72130 ("Convert CONFIG_SCSI_AHCI_PLAT et al to Kconfig") Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-03-31Merge tag 'u-boot-imx-next-20230331' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx into next u-boot-imx-next-20230331 for next --------------------------------- CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/15819 i.MX patches queued for next: - Conversions to DM_SERIAL - Fixes for Toradex boards - Gateworks Boards - i.MX8ULP - EQoS support / fixes, changes in boards
2023-03-31sysreset: gpio: fix gpio_reboot_request return valueJonathan Liu
It should return -EINPROGRESS if successful otherwise sysreset-uclass will continue to the next sysreset device. Signed-off-by: Jonathan Liu <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2023-03-30input: button_kbd: make driver complementary to gpio buttonsSvyatoslav Ryhel
Remove need of dts binding for button keyboard since it reuses gpio-keys binding. Select gpio-keys driver if button keyboard is selected since button keyboard can not operate on its own. Tested-by: Svyatoslav Ryhel <[email protected]> # HTC One X T30 Signed-off-by: Svyatoslav Ryhel <[email protected]> Reviewed-by: Simon Glass <[email protected]>