summaryrefslogtreecommitdiff
path: root/doc/driver-model
AgeCommit message (Collapse)Author
2020-04-16dm: core: Read parent ofdata before childrenSimon Glass
At present a device can read its ofdata before its parent has done the same. This can cause problems in the case where the parent has a 'ranges' property, thus affecting the operation of dev_read_addr(), for example. We already probe parent devices before children so it does not seem to be a large step to do the same with ofdata. Make the change and update the documentation in this area. Signed-off-by: Simon Glass <[email protected]> Tested-by: Ley Foon Tan <[email protected]>
2020-04-16doc: driver-model: there is no UCLASS_ETHERNETHeinrich Schuchardt
%s/UCLASS_ETHERNET/UCLASS_ETH/g Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2020-04-16sandbox: Update PCI nodes in dts filesTom Rini
The way the PCI nodes are written today causes a number of warnings if we stop disabling some of the warnings we pass to DTC. As these warnings aren't disabled in current Linux Kernel builds, we should aim to not disable them here either, so rewrite these slightly. Update the driver model doc as well. Cc: Simon Glass <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2020-03-09doc: net: Rewrite network driver documentationAndre Przywara
doc/README.drivers.eth seems like a good source for understanding U-Boot's network subsystem, but is only talking about legacy network drivers. This is particularly sad as proper documentation would help in porting drivers over to the driver model. Rewrite the document to describe network drivers in the new driver model world. Most driver callbacks/methods are almost identical in their semantic, but recv() differs in some important details. Also keep some parts of the original text at the end, to help understanding old drivers. Add some hints on how to port drivers over. This also uses the opportunity to reformat the document in reST, on the way moving it into doc/driver-model and adding it into the structure there. Signed-off-by: Andre Przywara <[email protected]> Reviewed-by: Simon Glass <[email protected]> Acked-by: Joe Hershberger <[email protected]>
2020-02-11Merge tag 'dm-pull-6feb20' of https://gitlab.denx.de/u-boot/custodians/u-boot-dmTom Rini
sandbox conversion to SDL2 TPM TEE driver Various minor sandbox video enhancements New driver model core utility functions
2020-02-10dm: fix design.rst documentDario Binacchi
The patch fixes some errors. Signed-off-by: Dario Binacchi <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2020-02-05doc: dm: debugging: Fix the steps for activating debugFabio Estevam
Following the recommendation of adding '#define DEBUG' at the top of drivers/core/lists.c does not cause the debug messages to be shown. Change it to '#define LOG_DEBUG' instead, which actually makes it work as per doc/README.log. While at it, provide the full path to lists.c to in order to make the instructions clearer. Signed-off-by: Fabio Estevam <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2019-12-15dm: doc: Add a note about of-platdata and header filesSimon Glass
We don't want to include dt-structs.h in header files, so add a note about that. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2019-11-03dm: doc: Correct of-platdata driver nameSimon Glass
Add a note about the driver name in the of-platdata documentation since the naming must follow the compatible string. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2019-10-25dm: spi: Change cs_info op to return -EINVAL for invalid cs numBin Meng
We need distinguish the following two situations in various SPI APIs: - given chip select num is invalid - given chip select num is valid, but no device is attached Currently -ENODEV is returned for both cases. For the first case, it's more reasonable to return -EINVAL instead of -ENODEV for invalid chip select numbers. Signed-off-by: Bin Meng <[email protected]> Tested-by: Jagan Teki <[email protected]> # SoPine Reviewed-by: Jagan Teki <[email protected]>
2019-10-25dm: spi: Return 0 if driver does not implement ops->cs_infoBin Meng
If an SPI controller driver does not implement ops->cs_info, that probably means any chip select number could be valid, hence let's return 0 for spi_cs_info(). Signed-off-by: Bin Meng <[email protected]> Tested-by: Jagan Teki <[email protected]> # SoPine Reviewed-by: Jagan Teki <[email protected]>
2019-10-15doc: add full path to patman READMERalph Siemsen
Make it a little easier to find the documentation. Signed-off-by: Ralph Siemsen <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2019-10-08pci: Correct 'specifified' and 'Plese' typosSimon Glass
Fix these spelling errors the header file and documentation. Fix a small typo in the PCI documentation. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2019-10-08pci: sandbox: Move the emulators into their own nodeSimon Glass
Sandbox pci works using emulation drivers which are currently children of the pci device: pci-controller { pci@1f,0 { compatible = "pci-generic"; reg = <0xf800 0 0 0 0>; emul@1f,0 { compatible = "sandbox,swap-case"; }; }; }; In this case the emulation device is attached to pci device on address f800 (device 1f, function 0) and provides the swap-case functionality. However this is not ideal, since every device on a PCI bus has a child device. This is only really the case for sandbox, but we want to avoid special-case code for sandbox. Worse, child devices cannot be probed before their parents. This forces us to use 'find' rather than 'get' to obtain the emulator device. In fact the emulator devices are never probed. There is code in sandbox_pci_emul_post_probe() which tries to track when emulators are active, but at present this does not work. A better approach seems to be to add a separate node elsewhere in the device tree, an 'emulation parent'. This could be given a bogus address (such as -1) to hide the emulators away from the 'pci' command, but it seems better to keep it at the root node to avoid such hacks. Then we can use a phandle to point from the device to the correct emulator, and only on sandbox. The code to find an emulator does not interfere with normal pci operation. Add a new UCLASS_PCI_EMUL_PARENT uclass which allows finding an emulator given a bus, and finding a bus given an emulator. Update the existing device trees and the code for finding an emulator. This brings PCI emulators more into line with I2C. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Bin Meng <[email protected]> Tested-by: Bin Meng <[email protected]> [bmeng: fix 3 typos in the commit message; encode bus number in the labels of swap_case_emul nodes; mention commit 4345998ae9df in sandbox_pci_get_emul()] Signed-off-by: Bin Meng <[email protected]>
2019-10-08dm: core: Add documentation on how to debug driver modelSimon Glass
Sometimes devices don't appear and it can be confusing. Add a few notes to help with this situation. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Bin Meng <[email protected]> Tested-by: Bin Meng <[email protected]> [bmeng: fix 2 issues in the doc and include the doc in the index.rst] Signed-off-by: Bin Meng <[email protected]>
2019-09-19dm: MIGRATION: Add migration plan for CONFIG_DMHeinrich Schuchardt
For many sub-systems we already require the driver model to be used. Yet there is still a handful of boards that do not have CONFIG_DM enabled. We should make CONFIG_DM compulsory with release v2020.01 Conversion dates for CONFIG_DM_SPL and CONFIG_DM_TPL are yet to be defined. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2019-09-19doc: fix: Replace SPL_OF_PLATDATA with OF_PLATDATA in examplesLukasz Majewski
The of-plat.rst file till this change has been using This is at best misleading as SPL_OF_PLATDATA is always defined when we want to use this SPL tinification feature (also in U-Boot proper). As a result the OF_PLATDATA SPL specific code is also compiled in when U-Boot proper is build. Signed-off-by: Lukasz Majewski <[email protected]> Reviewed-by: Peng Fan <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2019-09-16doc: driver-model: Update SPI migration statusJagan Teki
Update SPI drivers, driver model conversion status for v2019.10 release. Signed-off-by: Jagan Teki <[email protected]>
2019-09-04network: set timeline for CONFIG_DM_ETH conversionHeinrich Schuchardt
The driver model has been supported for network drivers since 2015. It is time to convert the remaining boards. Set July 2020 as a timeline. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]> Acked-by: Joe Hershberger <[email protected]>
2019-07-24doc: driver-model: Convert usb-info.txt to reSTBin Meng
Convert plain text documentation to reStructuredText format and add it to Sphinx TOC tree. No essential content change. Signed-off-by: Bin Meng <[email protected]>
2019-07-24doc: driver-model: Convert spi-howto.txt to reSTBin Meng
Convert plain text documentation to reStructuredText format and add it to Sphinx TOC tree. No essential content change. Signed-off-by: Bin Meng <[email protected]>
2019-07-24doc: driver-model: Convert serial-howto.txt to reSTBin Meng
Convert plain text documentation to reStructuredText format and add it to Sphinx TOC tree. No essential content change. Signed-off-by: Bin Meng <[email protected]>
2019-07-24doc: driver-model: Convert remoteproc-framework.txt to reSTBin Meng
Convert plain text documentation to reStructuredText format and add it to Sphinx TOC tree. No essential content change. Signed-off-by: Bin Meng <[email protected]>
2019-07-24doc: driver-model: Convert pmic-framework.txt to reSTBin Meng
Convert plain text documentation to reStructuredText format and add it to Sphinx TOC tree. No essential content change. Signed-off-by: Bin Meng <[email protected]>
2019-07-24doc: driver-model: Convert pci-info.txt to reSTBin Meng
Convert plain text documentation to reStructuredText format and add it to Sphinx TOC tree. No essential content change. Signed-off-by: Bin Meng <[email protected]>
2019-07-24doc: driver-model: Convert of-plat.txt to reSTBin Meng
Convert plain text documentation to reStructuredText format and add it to Sphinx TOC tree. No essential content change. Signed-off-by: Bin Meng <[email protected]>
2019-07-24doc: driver-model: Convert livetree.txt to reSTBin Meng
Convert plain text documentation to reStructuredText format and add it to Sphinx TOC tree. No essential content change. Signed-off-by: Bin Meng <[email protected]>
2019-07-24doc: driver-model: Convert i2c-howto.txt to reSTBin Meng
Convert plain text documentation to reStructuredText format and add it to Sphinx TOC tree. No essential content change. Signed-off-by: Bin Meng <[email protected]>
2019-07-24doc: driver-model: Convert fs_firmware_loader.txt to reSTBin Meng
Convert plain text documentation to reStructuredText format and add it to Sphinx TOC tree. No essential content change. Signed-off-by: Bin Meng <[email protected]>
2019-07-24doc: driver-model: Convert fdt-fixup.txt to reSTBin Meng
Convert plain text documentation to reStructuredText format and add it to Sphinx TOC tree. No essential content change. Signed-off-by: Bin Meng <[email protected]>
2019-07-24doc: driver-model: Convert MIGRATION.txt to reSTBin Meng
Convert plain text documentation to reStructuredText format and add it to Sphinx TOC tree. No essential content change. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2019-07-24doc: driver-model: Convert README.txt to reSTBin Meng
Convert plain text documentation to reStructuredText format and add it to Sphinx TOC tree. No essential content change. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2019-07-24doc: Add driver-model to Sphinx TOC treeBin Meng
Add index.rst for driver model. More docs will be added later. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2019-07-10dm: doc: add documentation for pre-reloc properties in SPL and TPLPatrick Delaunay
Add documentation for the pre-reloc property in SPL and TPL device-tree: - u-boot,dm-pre-proper - u-boot,dm-pre-reloc - u-boot,dm-spl - u-boot,dm-tpl Signed-off-by: Patrick Delaunay <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2019-06-10dm: MIGRATION: Update migration status for SPIJagan Teki
Now, we have few driver are fully converted into dm and few are partially converted. So, update the migration status accordingly. Signed-off-by: Jagan Teki <[email protected]>
2019-04-22misc: fs_loader: Replace label with DT phandleTien Fong Chee
In previously label which will be expanded to the node's full path was used, and now replacing label with most commonly used DT phandle. The codes were changed accordingly to the use of DT phandle and supporting multiple instances. Signed-off-by: Tien Fong Chee <[email protected]>
2019-04-17spi: ti_qspi: Drop non DM codeVignesh Raghavendra
Now that all boards using TI QSPI have moved to DM and DT, drop non DM code completely. Signed-off-by: Vignesh Raghavendra <[email protected]> Reviewed-by: Tom Rini <[email protected]> [jagan: update MIGRATION.txt, rebase config_whitelist.txt] Signed-off-by: Jagan Teki <[email protected]> Reviewed-by: Jagan Teki <[email protected]>
2019-02-09of-platdata: improve documentationSimon Goldschmidt
Improve some things in the documentation of OF_PLATDATA that I found while porting socfgpa_gen5 to it. Signed-off-by: Simon Goldschmidt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2019-01-15misc: fs_loader: Switching private data allocation to DM auto allocationTien Fong Chee
Switching private data manual allocation to driver model auto allocation so users no longer need to deallocate themself because this would be deallocated by driver model when the device is no longer required. Signed-off-by: Tien Fong Chee <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2019-01-09dm: video: lcd: MIGRATION: Add migration plan for videoSimon Glass
Add a migration plan for video which is an important subsystem in U-Boot. Signed-off-by: Simon Glass <[email protected]>
2019-01-09dm: pci: MIGRATION: Add migration plan for PCISimon Glass
Add a migration plan for PCI which is an important subsystem in U-Boot. Signed-off-by: Simon Glass <[email protected]>
2019-01-02dm: MIGRATION: Update migration plan for SPIJagan Teki
- v2019.04 for no dm conversion drivers - v2019.07 for partially converted drivers. Note: there were many updates on this deadline, so better not update this again. Signed-off-by: Jagan Teki <[email protected]>
2018-12-12blk: Rework guard around part_init callTom Rini
The function part_init() will only be built when we have both CONFIG_PARTITIONS and CONFIG_HAVE_BLOCK_DEVICE set. Protect the call to this function with both of these tests now. Cc: Simon Glass <[email protected]> Cc: Philipp Tomsich <[email protected]> Cc: Michal Simek <[email protected]> Cc: York Sun <[email protected]> Cc: Prabhakar Kushwaha <[email protected]> Cc: Mingkai Hu <[email protected]> Cc: Stefan Roese <[email protected]> Cc: Marek BehĂșn <[email protected]> Cc: Vanessa Maegima <[email protected]> Cc: Eugen Hristev <[email protected]> Cc: Adam Ford <[email protected]> Cc: Jagan Teki <[email protected]> Cc: Tom Warren <[email protected]> Cc: Stephen Warren <[email protected]> Cc: Vitaly Andrianov <[email protected]> Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2018-12-05Merge branch 'master' of git://git.denx.de/u-boot-spiTom Rini
- Various MTD fixes from Boris - Zap various unused / legacy paths. - pxa3xx NAND update from Miquel Signed-off-by: Tom Rini <[email protected]>
2018-12-03dm: MIGRATION: Update migration plan for BLKTom Rini
The biggest part of migration to using CONFIG_BLK is that we need to have the various subsystems migrated first, so reword the plan here to reference the new deadlines. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2018-12-03dm: MIGRATION: Add migration plan for CONFIG_SATATom Rini
As the core of the subsystem has been converted along with some of the drivers, formalize a deadline for migration. Cc: Akshay Bhat <[email protected]> Cc: Andreas Geisreiter <[email protected]> Cc: Bin Meng <[email protected]> Cc: Christian Gmeiner <[email protected]> Cc: Fabio Estevam <[email protected]> Cc: Jason Liu <[email protected]> Cc: Ken Lin <[email protected]> Cc: Ludwig Zenz <[email protected]> Cc: Marek Vasut <[email protected]> Cc: Max Krummenacher <[email protected]> Cc: Nikita Kiryanov <[email protected]> Cc: Otavio Salvador <[email protected]> Cc: Peng Fan <[email protected]> Reviewed-by: Simon Glass <[email protected]> Cc: Soeren Moch <[email protected]> Cc: Stefan Roese <[email protected]> Cc: Stefano Babic <[email protected]> Cc: Tim Harvey <[email protected]> Cc: Troy Kisky <[email protected]> Cc: Tuomas Tynkkynen <[email protected]> Cc: York Sun <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2018-12-03dm: MIGRATION: Add migration plan for DM_USBTom Rini
As much of the USB system has been migrated to DM now, formalize a deadline for migration. Reviewed-by: Marek Vasut <[email protected]> Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2018-12-03dm: MIGRATION: Add migration plan for DM_MMCTom Rini
Given that at this point the MMC subsystem itself has been migrated along with a number of subsystem drivers, formalize a deadline for migration. Reviewed-by: Simon Glass <[email protected]> Cc: Jaehoon Chung <[email protected]> Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Simon Goldschmidt <[email protected]> Reviewed-by: Philipp Tomsich <[email protected]>
2018-11-27spi: Remove used spi_initJagan Teki
spi_init used in some areas in tree, but the respective drivers will remove in future patches. So remove the same instances. Signed-off-by: Jagan Teki <[email protected]>
2018-11-14dm: doc: Update description of pre-relocation supportBin Meng
Add some description about pre-relocation driver binding, including usage of DM_FLAG_PRE_RELOC flag and caveats. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]>