- 23 10月, 2014 38 次提交
-
-
由 Simon Glass 提交于
Adjust this board to use the driver model soft_spi implementation. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
-
由 Simon Glass 提交于
This README is intended to help maintainers move their SPI drivers over to driver model. It works through the required steps with an example. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
-
由 Simon Glass 提交于
Move the exynos SPI driver over to driver model. This removes quite a bit of boilerplate from the driver, although it adds some for driver model. A few device tree additions are needed to make the SPI flash available. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
-
由 Simon Glass 提交于
Add a new implementation of soft_spi that uses device tree to specify the GPIOs. This will replace soft_spi_legacy for boards which use driver model. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
-
由 Simon Glass 提交于
This feature provides for init of a single SPI port for the soft SPI feature. It is not really compatible with driver model since it assumes a single SPI port. Also, inserting SPI init into the driver by means of a #define is not very nice. This feature is not used by any active boards, so let's remove it. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
-
由 Simon Glass 提交于
Reserve the 'normal' name for use by driver model, and rename the old driver so that it is clear that it is for 'legacy' drivers only. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
-
由 Simon Glass 提交于
Adjust the sandbox SPI driver to support driver model and move sandbox over to driver model for SPI. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
-
由 Simon Glass 提交于
Driver model uses a different way to find the SPI bus and slave from the numbered devices given on the command line. Adjust the code to suit. We use a generic SPI device, and attach it to the SPI bus before performing the transaction. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
-
由 Simon Glass 提交于
Some files are using SPI functions but not explitly including the SPI header file. Fix this, since driver model needs it. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
-
由 Simon Glass 提交于
Driver model does its own init, so we don't need this. There is still a call in board_f.c but it is only enabled by CONFIG_HARD_SPI. It is easy enough to disable that option when converting boards which use it to driver model. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
-
由 Simon Glass 提交于
U-Boot includes a SPI emulation driver already but it is not explicit, and is hidden in the SPI flash code. Conceptually with sandbox's SPI implementation we have a layer which creates SPI bus transitions and a layer which interprets them, currently only for SPI flash. The latter is actually an emulation, and it should be possible to add more than one emulation - not just SPI flash. Add a SPI emulation uclass so that other emulations can be plugged in to support different types of emulated devices on difference buses/chip selects. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
-
由 Simon Glass 提交于
Add a uclass which provides access to SPI buses and includes operations required by SPI. For a time driver model will need to co-exist with the legacy SPI interface so some parts of the header file are changed depending on which is in use. The exports are adjusted also since some functions are not available with driver model. Boards must define CONFIG_DM_SPI to use driver model for SPI. Signed-off-by: NSimon Glass <sjg@chromium.org> Reviewed-by: NJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com> (Discussed some follow-up comments which will address in future add-ons)
-
由 Simon Glass 提交于
The sequence number is unique within the uclass, so state this clearly. Signed-off-by: NSimon Glass <sjg@chromium.org> Acked-by: NJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
-
由 Simon Glass 提交于
Buses sometimes want to pass data to their children when they are probed. For example, a SPI bus may want to tell the slave device about the chip select it is connected to. Add a new function to permit the parent data to be supplied to the child. Signed-off-by: NSimon Glass <sjg@chromium.org> Acked-by: NJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
-
由 Simon Glass 提交于
Buses need to iterate through their children in some situations. Add a few functions to make this easy. Signed-off-by: NSimon Glass <sjg@chromium.org> Acked-by: NJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
-
由 Simon Glass 提交于
Add a SPI device which can be used for testing SPI flash features in sandbox. Also add a cros_ec device since with driver model the Chrome OS EC emulation will not otherwise be available. Reviewed-by: NJagannadha Sutradharudu Teki <jagannadh.teki@gmail.com> Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Simon Glass 提交于
Change the Exynos serial driver to work with driver model and switch over all relevant boards to use it. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Simon Glass 提交于
We will need the console before relocation, so mark it that way. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Simon Glass 提交于
Convert the exynos GPIO driver to driver model. This implements the generic GPIO interface but not the extra Exynos-specific functions. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Simon Glass 提交于
With driver model GPIOs must be requested before use. Make sure this is done correctly. (Note that the soft SPI part of universal is omitted, since this driver is about to be replaced with a driver-model-aware version) Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Simon Glass 提交于
The defines at the top of the GPIO driver use single-character names for parameters which are not very descriptive. Improve these to use descriptive parameter names. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Simon Glass 提交于
The wrong header is being included, thus requiring the code to re-declare the generic GPIO interface in each GPIO header. Fix this. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Simon Glass 提交于
The generic board deadline is approaching, and we need this feature to enable driver model. Enable CONFIG_SYS_GENERIC_BOARD for s5p_goni. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Simon Glass 提交于
The generic board deadline is approaching, and we need this feature to enable driver model. Enable CONFIG_SYS_GENERIC_BOARD for smdkc100. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Simon Glass 提交于
These describe the GPIOs in enough detail for U-Boot's GPIO driver to operate. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Simon Glass 提交于
These describe the GPIOs in enough detail for U-Boot's GPIO driver to operate. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Simon Glass 提交于
The pinctrl bindings used by Linux are an incomplete description of the hardware. It is possible in most cases to determine the register address of each, but not in all cases. By adding an additional property we can fix this, and avoid adding a table to U-Boot for every single Exynos SOC. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Simon Glass 提交于
We don't include the pinctrl functions for U-Boot as they use up quite a bit of space and are not used. We could instead perhaps eliminate this material with fdtgrep, but so far this tool has not made it to upstream. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Simon Glass 提交于
Bring in required device tree files for pinctrl from Linux v3.14. These are initially unchanged and have a number of pieces not needed by U-Boot. Note that exynos5420 is renamed to exynos54xx here since we want to support exynos5422 also. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Simon Glass 提交于
We should be consistent about this. The kernel has moved to #include which breaks error reporting to some extent but does allow us to include binding files. Signed-off-by: NSimon Glass <sjg@chromium.org>
-
由 Robert Baldyga 提交于
Add proper initialization of GPIO pins used by software i2c. Signed-off-by: NRobert Baldyga <r.baldyga@samsung.com> Acked-by: NSimon Glass <sjg@chromium.org>
-
由 Masahiro Yamada 提交于
The driver model supports two ways for passing device parameters; Device Tree and platform_data (board file). Each driver should generally support both of them because some popular IPs are used on various platforms. Assume the following scenario: - The driver Foo is used on SoC Bar and SoC Baz - The SoC Bar uses Device Tree control (CONFIG_OF_CONTROL=y) - The SoC Baz does not support Device Tree; uses a board file In this situation, the device driver Foo should work with/without the device tree control. The driver should have .of_match and .ofdata_to_platdata members for SoC Bar, while they are meaningless for SoC Baz; therefore those device-tree control code should go inside #ifdef CONFIG_OF_CONTROL. The driver code will be like this: #ifdef CONFIG_OF_CONTROL static const struct udevice_id foo_of_match = { { .compatible = "foo_driver" }, {}, } static int foo_ofdata_to_platdata(struct udevice *dev) { ... } #endif U_BOOT_DRIVER(foo_driver) = { ... .of_match = of_match_ptr(foo_of_match), .ofdata_to_platdata = of_match_ptr(foo_ofdata_to_platdata), ... } This idea has been borrowed from Linux. (In Linux, this macro is defined in include/linux/of.h) Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com> Acked-by: NSimon Glass <sjg@chromium.org>
-
由 Masahiro Yamada 提交于
Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com> Acked-by: NSimon Glass <sjg@chromium.org>
-
由 Masahiro Yamada 提交于
The header files include/dm/platdata.h and include/dm/uclass.h use ll_entry_declare(); therefore they depend on include/linker_lists.h. Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com> Acked-by: NSimon Glass <sjg@chromium.org>
-
由 Masahiro Yamada 提交于
The header file include/linker_lists.h uses __aligned(); therefore it depends on include/linux/compiler.h Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com> Acked-by: NSimon Glass <sjg@chromium.org>
-
由 Masahiro Yamada 提交于
if (strncmp(name, entry->name, len)) continue; /* Full match */ if (len == strlen(entry->name)) return entry; is equivalent to: if (!strcmp(name, entry->name)) return entry; The latter is simpler. Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com> Acked-by: NSimon Glass <sjg@chromium.org> Acked-by: NIgor Grinberg <grinberg@compulab.co.il>
-
由 Masahiro Yamada 提交于
The function uclass_add() checks uc_drv->ops as follows: if (uc_drv->ops) { dm_warn("No ops for uclass id %d\n", id); return -EINVAL; } It seems odd because it warns "No ops" when uc_drv->ops has non-NULL pointer. (Looks opposite.) Anyway, most of UCLASS_DRIVER entries have no .ops member. This check makes no sense. Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com> Acked-by: NSimon Glass <sjg@chromium.org>
-
由 Masahiro Yamada 提交于
The struct udevice stands for a device, not a driver. The driver_info.name is a driver's name, which is referenced to bind devices. Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com> Acked-by: NSimon Glass <sjg@chromium.org>
-
- 21 10月, 2014 1 次提交
-
-
- 17 10月, 2014 1 次提交
-
-
由 Ruchika Gupta 提交于
Signed-off-by: NRuchika Gupta <ruchika.gupta@freescale.com> Reviewed-by: NYork Sun <yorksun@freescale.com>
-