summaryrefslogtreecommitdiffstats
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | imx8mm_evk: add/cleanup variable for distroPeng Fan2021-04-081-4/+4
| |/ / | | | | | | | | | | | | | | | | | | Add fdt_addr_r fdtfile which used by distro boot Clean up environment Signed-off-by: Peng Fan <peng.fan@nxp.com>
* | | Merge https://source.denx.de/u-boot/custodians/u-boot-riscvTom Rini2021-04-082-3/+0
|\ \ \ | | | | | | | | | | | | - Watchdog, Unleashed and Icicle improvements
| * | | riscv: sifive: Rename fu540 board to unleashedBin Meng2021-04-081-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In preparation to add SiFive Unmatched board support, let's rename the existing fu540 board to unleashed. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
| * | | riscv: Remove unused define in maix headerSean Anderson2021-04-081-3/+0
| |/ / | | | | | | | | | | | | | | | | | | | | | This define was left over from a previous revision, and was never used. Signed-off-by: Sean Anderson <seanga2@gmail.com> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Bin Meng <bin.meng@windriver.com>
* | | mmc: mvebu: convert to driver modelHarm Berntsen2021-04-081-10/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a straightforward conversion of the old, non-dm driver. It was done in-place as the deadline for non-dm MMC has passed. Previous commits ensured that no board depends on the old, non-dm variant. Tested on a Kirkwood based board with eMMC. Signed-off-by: Harm Berntsen <harm.berntsen@nedap.com> Tested-by: Harm Berntsen <harm.berntsen@nedap.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de> CC: Pantelis Antoniou <panto@antoniou-consulting.com> CC: Stefan Roese <sr@denx.de> CC: Gerald Kerma <drEagle@doukki.net> CC: Simon Glass <sjg@chromium.org> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
* | | configs: sheevaplug: remove non-dm MMC driverHarm Berntsen2021-04-081-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will be replaced with the driver model version Signed-off-by: Harm Berntsen <harm.berntsen@nedap.com> Reviewed-by: Stefan Roese <sr@denx.de> CC: Prafulla Wadaskar <prafulla@marvell.com> CC: Stefan Roese <sr@denx.de> CC: Tom Rini <trini@konsulko.com>
* | | configs: openrd: remove non-dm MMC driverHarm Berntsen2021-04-081-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Unfortunately this board has no DM support at all. We are also way past the deadline for driver model support for various devices on this board. Signed-off-by: Harm Berntsen <harm.berntsen@nedap.com> Reviewed-by: Stefan Roese <sr@denx.de> CC: Stefan Roese <sr@denx.de>
* | | configs: remove unused CONFIG_SYS_MMC_BASE defsHarm Berntsen2021-04-084-20/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These boards use an MMC driver that does not use this definition Signed-off-by: Harm Berntsen <harm.berntsen@nedap.com> Reviewed-by: Stefan Roese <sr@denx.de> CC: Stefan Roese <sr@denx.de> CC: Mario Six <mario.six@gdsys.cc> CC: Dennis Gilmore <dgilmore@redhat.com>
* | | arm: mvebu: ds414: Add sample u-boot update commandPhil Sutter2021-04-081-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Call 'run update_uboot' to fetch u-boot-spl.kwb via TFTP and write it into the correct SPI flash location. The latter's size is defined in DS414's DTB file, so hard-coding it should be acceptable here. Take care to not append garbage from RAM to the written image and to stay within assigned flash boundaries even if an oversized image was fetched. Signed-off-by: Phil Sutter <phil@nwl.cc>
* | | arm: mvebu: board/Synology: Unify legacy kernel supportPhil Sutter2021-04-082-2/+16
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the relevant bits from ds109.{c,h} into common/ and adjust the code to fit both DS109 and DS414. Moreover: * Introduce syno_board_id() which translates CONFIG_MACH_TYPE into the expected board ID tag value. * Properly initialize isusbhost, mac and mtu fields from env variables. * Set the right bootargs/bootcmd to correctly boot legacy kernel out of the (DS414) box. Getting the ramdisk location right is a bit tedious. Cc: Walter Schweizer <swwa@users.sourceforge.net> Signed-off-by: Phil Sutter <phil@nwl.cc> Reviewed-by: Stefan Roese <sr@denx.de>
* | Merge tag 'mmc-2021-4-6' of https://source.denx.de/u-boot/custodians/u-boot-mmcTom Rini2021-04-061-0/+3
|\ \ | | | | | | | | | | | | | | | | | | | | | Update hwpartition usage Check bootbus's arguments workaround for erratum A-011334 for fsl_esdhc driver add pulse width detection workaround for fsl_esdhc driver Use alias num before checking mmc index when creating device
| * | mmc: fsl_esdhc: add pulse width detection workaroundMichael Walle2021-04-061-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | HS400 mode on the LS1028A SoC isn't reliable. The linux driver has a workaroung for the pulse width detection. Apply this workaround in u-boot, too. This will make HS400 mode work reliably on the LS1028A SoC. Signed-off-by: Michael Walle <michael@walle.cc> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
* | | Merge https://source.denx.de/u-boot/custodians/u-boot-cfi-flashTom Rini2021-04-061-0/+2
|\ \ \ | | | | | | | | | | | | - Fix detection of 8-bit bus flash devices via address shift
| * | | cfi_flash: Fix detection of 8-bit bus flash devices via address shiftJagannadha Sutradharudu Teki2021-04-061-0/+2
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We had a problem detecting 8/16bit flash devices connected only via 8bits to the SoC for quite a while. Commit 239cb9d9 [mtd: cfi_flash: Fix CFI flash driver for 8-bit bus support] finally fixed this 8-bit bus support. But also broke some other boards using this cfi driver. So this patch had to be reverted. I spotted a different, simpler approach for this 8-bit bus support on the barebox mailing list posted by Oleksij Rempel <bug-track@fisher-privat.net>: http://www.spinics.net/lists/u-boot-v2/msg14687.html Here the commit text: " Many cfi chips support 16 and 8 bit modes. Most important difference is use of so called "Q15/A-1" pin. In 16bit mode this pin is used for data IO. In 8bit mode, it is an address input which add one more least significant bit (LSB). In this case we should shift all adresses by one: For example 0xaa << 1 = 0x154 " This patch now is a port of this barebox patch to U-Boot. Along with the change w.r.t from barebox, Some flash chips can support multiple bus widths, override the interface width and limit it to the port width. Tested on 16-bit Spansion flash on sequoia. Tested 8-bit flashes like 256M29EW, 512M29EW. Signed-off-by: Stefan Roese <sr@denx.de> Tested-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com> Cc: Jagannadha Sutradharudu Teki <jaganna@xilinx.com> Cc: Aaron Williams <awilliams@marvell.com> Cc: Chandrakala Chavva <cchavva@marvell.com> Cc: Andre Przywara <andre.przywara@arm.com> Cc: Vignesh Raghavendra <vigneshr@ti.com> Cc: Simon Glass <sjg@chromium.org> Cc: Mario Six <mario.six@gdsys.cc> Cc: York Sun <york.sun@nxp.com> Cc: Marek Vasut <marek.vasut+renesas@gmail.com>
* | | Merge tag 'dm-pull-6apr21' of https://source.denx.de/u-boot/custodians/u-boot-dmTom Rini2021-04-068-15/+23
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | ENOSYS clean-up Minor dtoc improvements Convert CONFIG_MISC_INIT_F to Kconfig Allow unit tests to run on any board pylibfdt build-rule fix
| * | | test: Allow tests to run on any boardSimon Glass2021-04-061-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to a recent change, tests are limited to running on sandbox only. Correct this so that any architecture can run them. Signed-off-by: Simon Glass <sjg@chromium.org> Reported-by: Sean Anderson <seanga2@gmail.com> Fixes: c79705ea938 ("test: Move dm_test_init() into test-main.c") Tested-by: Sean Anderson <seanga2@gmail.com>
| * | | sandbox: document parameters of os_realloc()Heinrich Schuchardt2021-04-061-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid 'make htmldocs' build warnings: ./include/os.h:139: warning: Function parameter or member 'ptr' not described in 'os_realloc' ./include/os.h:139: warning: Function parameter or member 'length' not described in 'os_realloc' Fixes: 14e46dfb176b ("sandbox: Add os_realloc()") Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
| * | | Convert CONFIG_MISC_INIT_F to KconfigSimon Glass2021-04-063-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This converts the following to Kconfig: CONFIG_MISC_INIT_F Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de>
| * | | log: Fix up debug_cond() when LOG is enabledSimon Glass2021-04-061-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At present debug() statements can cause debuf output to appear when LOG is enabled but DEBUG is not. This is not intended and it seems that the condition is wrong. Fix it. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | | tlv_eeprom: Return -ENOSYS when system call is not availableSimon Glass2021-04-061-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When CMD_TLV_EEPROM is not enabled, use -ENOSYS, which is the correct error code for U-Boot. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | | spi: Return -ENOSYS when system call is not availableSimon Glass2021-04-061-1/+1
| |/ / | | | | | | | | | | | | | | | | | | Update spi_controller_dma_map_mem_op_data() to use -ENOSYS, which is the correct error code for U-Boot. Signed-off-by: Simon Glass <sjg@chromium.org>
* | | Merge tag 'rockchip-for-v2021.07' of ↵Tom Rini2021-04-053-20/+17
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | https://source.denx.de/u-boot/custodians/u-boot-rockchip - Fix rk3368 lion board support; - Fix px30 odroid-go2 board support; - Add rk3399 NanoPi R4s and NanoPi M4B board support;
| * | include: configs: rk3399: drop a dangling commentPeter Robinson2021-03-301-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | Drop a irrelevent comment now the related configs have moved to the various config files. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
| * | rockchip: rk3368: sync clock dt-binding header from LinuxHeiko Stuebner2021-03-301-17/+14
| | | | | | | | | | | | | | | | | | | | | This is the state as of v5.10 in Linux. Signed-off-by: Heiko Stuebner <heiko.stuebner@theobroma-systems.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
| * | rockchip: rk3368: set CONFIG_SYS_BOOTM_LEN to 64MBHeiko Stuebner2021-03-301-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Mimicing for example the rk3399, set the SYS_BOOTM_LEN to 64MB so that regular kernel images can get loaded without problems. Signed-off-by: Heiko Stuebner <heiko.stuebner@theobroma-systems.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
| * | rockchip: rk3368: adjust CONFIG_SYS_LOAD_ADDRHeiko Stuebner2021-03-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CONFIG_SYS_LOAD_ADDR currently is at 0x00280000 which is only 512KB behind the area where we load u-boot to, which depending on u-boot size may overlap at some point. So for safety just pick the same value rk3399 has and set CONFIG_SYS_LOAD_ADDR to 0x00800800 on rk3368 as well. Signed-off-by: Heiko Stuebner <heiko.stuebner@theobroma-systems.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
* | | Merge branch 'next'Tom Rini2021-04-0548-193/+1419
|\ \ \ | |_|/ |/| |
| * | Merge tag 'xilinx-for-v2021.07' of ↵Tom Rini2021-03-311-0/+16
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://source.denx.de/u-boot/custodians/u-boot-microblaze into next Xilinx changes for v2021.07 net: - Fix gem PCS support spi: - Small trivial fixes zynq: - Enable time/timer commands - Update bitmain platform - Several DT changes zynqmp: - Update clock driver - mini config alignments - Add/update psu_init for zcu208/zcu216/zc1275 - Several DT changes - Enable efi debug command (also for Versal)
| | * | xilinx: Sync DTs with Linux kernelMichal Simek2021-03-301-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are several changes which happen in mainline kernel which should get also to U-Boot. Here is the list of patches from the kernel: - ARM: zynq: Fix leds subnode name for zc702/zybo-z7 - arm64: dts: zynqmp: Fix leds subnode name for zcu100/ultra96 v1 - arm64: dts: zynqmp: Fix u48 si5382 chip on zcu111 - arm64: dts: zynqmp: Wire up the DisplayPort subsystem - arm64: dts: zynqmp: Add DisplayPort subsystem - arm64: dts: zynqmp: Add DPDMA node - arm64: dts: zynqmp: Enable phy driver for Sata on zcu102/zcu104/zcu106 - arm64: dts: zynqmp: Enable si5341 driver for zcu102/106/111 - arm64: dts: zynqmp: Add DT description for si5328 for zcu102/zcu106 - arm64: dts: zynqmp-zcu100-revC: correct interrupt flags - arm64: dts: xilinx: align GPIO hog names with dtschema - arm64: zynqmp: Add Xilinx AES node - dt: bindings: dma: xilinx: dpdma: DT bindings for Xilinx DPDMA but also some other changes have been done. - Using only one compatible string for adxl345 on zturn - Remove Xilinx internal DP bindings - Remove USB3.0 serdes configurations - Remove SATA serdes configuration for zc1232 - Resort nvmem_firmware - Update nand compatible string - Aling power-domains property for sd0/1 Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * | | Merge tag 'v2021.04-rc5' into nextTom Rini2021-03-297-148/+151
| |\| | | | |/ | |/| | | | Prepare v2021.04-rc5
| * | sysinfo: Allow showing model info from sysinfoSimon Glass2021-03-271-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | Some boards may want to show the SKU ID or other information obtained at runtime. Allow this to come from sysinfo. The board can then provide a sysinfo driver to provide it. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
| * | command: Fix operation of !CONFIG_CMDLINESimon Glass2021-03-271-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | The U_BOOT_CMDREP_COMPLETE() macro produces a build error if CONFIG_CMDLINE is not enabled. Fix this by updating the macro to provide the 'repeatable' arugment in this case. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | malloc: Export malloc_simple_info()Simon Glass2021-03-271-1/+2
| | | | | | | | | | | | | | | | | | | | | Export this function always so it can be used behind IS_ENABLED() instead of requiring an #ifdef. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | sf: Support querying write-protectSimon Glass2021-03-271-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This feature was dropped from U-Boot some time ago: f12f96cfaf5 (sf: Drop spl_flash_get_sw_write_prot") However, we do need a way to see if a flash device is write-protected, since if it is, it may not be possible to write to do (i.e. failing to write is expected). I am not sure of the correct layer to implement this, so this patch is a stab at it. If spi-flash makes sense then I will add to the 'sf' also. Re the points mentioned in the removal commit: 1) This kind of requirement can be achieved using existing flash operations and flash locking API calls instead of making a separate flash API. Which uclass is this? 2) Technically there is no real hardware user for this API to use in the source tree. I do want coral (at least) to support this. 3) Having a flash operations API for simple register read bits also make difficult to extend the flash operations. This new patch only mentions write-protect being on or off, rather than the actual mechanism. 4) Instead of touching generic code, it is possible to have this functionality inside spinor operations in the form of flash hooks or fixups for associated flash chips. That sounds to me like what drivers are for. But we still need some sort of API for it to be accessible. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | sandbox: image: Allow sandbox to load any imageSimon Glass2021-03-271-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | Sandbox is special in that it is used for testing and it does not match any particular target architecture. Allow it to load an image from any architecture, so that 'bootm' can be used as needed. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | sandbox: Provide a way to bind fixed/removeable devicesSimon Glass2021-03-271-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At present when a file is bound to a host device it is always marked as removeable. Arguably the device is removeable, since it can be unbound at will. However while it is bound, it is not considered removable by the user. Also it is useful to be able to model both fixed and removeable devices for code that distinguishes them. Add a -r flag to the 'host bind' command and plumb it through to provide this feature. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | dm: core: Add CBFS support to flashmapSimon Glass2021-03-271-0/+8
| | | | | | | | | | | | | | | | | | | | | Allow referencing a CBFS file in the flashmap, so that it is possible to boot from coreboot, where files are not available from binman. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | cbfs: Support reading compression informationSimon Glass2021-03-271-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | CBFS now supports compressed filed. Add support for reading this information so that the correct decompression can be applied. The decompression itself is not implemented in CBFS. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | cbfs: Allow file traversal with any CBFSSimon Glass2021-03-271-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | The file traversal functions currently use a single global CBFS. In some cases we need to access multiple CBFSs to obtain different files. Add new functions to support this. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | cbfs: Allow access to CBFS without a headerSimon Glass2021-03-271-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In some cases CBFS does not start with a header but is just a collection of files. It is possible to support this so long as the size of the CBFS is provided. Update the cbfs_init_mem() function to support this. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | smbios: Allow writing to the coreboot version stringSimon Glass2021-03-271-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When U-Boot is booted from coreboot the SMBIOS tables are written by coreboot, not U-Boot. The existing method of updating the BIOS version string does not work in that case, since gd->smbios_version is only set when U-Boot writes the tables. Add a new function which allows the version to be updated by parsing the tables and writing the string in the correct place. Since coreboot provides a pointer to the SMBIOS tables in its sysinfo structure, this makes it easy to do the update. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | cbfs: Add support for attributesSimon Glass2021-03-271-1/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CBFS now supports attributes for things that cannot fit in the header as originally conceived. Add the structures for these. Also rename attributes_offset to something shorter, to ease code readability. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | x86: coral: Put the eMMC firstSimon Glass2021-03-271-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At present the eMMC device does not have an alias so it appears after the SD card which is device 1. There is no device 0 which is odd. Make the eMMC device be the first one. Update the boot script to use the new device. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
| * | mtd: spi_flash_free()Heinrich Schuchardt2021-03-271-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dfu_free_entities() invoking dfu_free_entity_sf() has let to segementation faults due to double freeing the same device. spi_flash_free() is not relevant for the driver model but exists only for compatibility with old drivers. We must not remove any device here: * The device may still be referenced. * We don't want to have to probe again. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
| * | Merge tag 'dm-pull-26mar21-take2' of git://git.denx.de/u-boot-dm into nextTom Rini2021-03-2614-36/+343
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dtoc support for of-platdata-inst driver model support for of-platdata-inst support of-platdata-inst on x86 / coral binman support for exapanded entries binman convert docs to reST ti-sysc fix for duplicate uclass driver patman minor improvements pylibfdt build only if needed correct obscure CI error with OF_PLATDATA_INST
| | * | dm: core: Add warnings to private / platform settersSimon Glass2021-03-262-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a warning to each of these functions so that people do not attempt to use them outside driver model. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Simon Glass <sjg@chromium.org>
| | * | dm: core: Use separate priv/plat data regionSimon Glass2021-03-261-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make use of the new priv/plat data region if enabled. This is implemented as a simple offset from the position set up by dtoc to the new position. So long as all access goes through dm_priv_to_rw() this is safe. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Simon Glass <sjg@chromium.org>
| | * | dm: core: Allow storing priv/plat data separatelySimon Glass2021-03-262-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At present the device priv/data data allocated by dtoc is stored in the data section along with other variables. On some platforms it is better to allocate space for it separately, e.g. if SPL is running from read-only memory. Create a new space with the same size as that allocated by dtoc, ready for use. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Simon Glass <sjg@chromium.org>
| | * | dm: core: Move flags to device-runtime infoSimon Glass2021-03-261-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When of-platdata-inst is active, use the flags in the new udevice_rt table, dropping them from the main struct udevice. This ensures that the latter is not updated at runtime. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Simon Glass <sjg@chromium.org>
| | * | dm: core: Create a struct for device runtime infoSimon Glass2021-03-262-2/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At present when driver model needs to change a device it simply updates the struct udevice structure. But with of-platdata-inst most of the fields are not modified at runtime. In fact, typically only the flags need to change. For systems running SPL from read-only memory it is convenient to separate out the runtime information, so that the devices don't need to be copied before being used. Create a new udevice_rt table, similar to the existing driver_rt. For now it just holds the flags, although they are not used in this patch. Add a new Kconfig for the driver_rt data, since this is not needed when of-platdata-inst is used. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Simon Glass <sjg@chromium.org>