- Oct 08, 2016
-
-
Moritz Fischer authored
Boards where ECs that use a I2C port != 0 specify this in the devicetree file via the google,remote-bus property. Previously this was ignored and hardcoded to port 0. Signed-off-by:
Moritz Fischer <moritz.fischer@ettus.com> Cc: Simon Glass <sjg@chromium.org> Cc: Heiko Schocher <hs@denx.de> Cc: u-boot@lists.denx.de Acked-by:
Simon Glass <sjg@chromium.org>
-
- Sep 23, 2016
-
-
Masahiro Yamada authored
Now, arch/${ARCH}/include/asm/errno.h and include/linux/errno.h have the same content. (both just wrap <asm-generic/errno.h>) Replace all include directives for <asm/errno.h> with <linux/errno.h>. Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com> [trini: Fixup include/clk.] Signed-off-by:
Tom Rini <trini@konsulko.com>
-
- Jul 27, 2016
-
-
Simon Glass authored
Quite a few places have a bind() method which just calls dm_scan_fdt_dev(). We may as well call dm_scan_fdt_dev() directly. Update the code to do this. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
This new function is more convenient for callers, and handles pre-relocation situations automatically. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
- Nov 20, 2015
-
-
Simon Glass authored
In preparation for converting the cros_ec keyboard driver to driver model, adjust the cros_ec functions it will use to use a normal struct udevice. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
- Aug 06, 2015
-
-
Simon Glass authored
This is not needed with driver mode. Remove it. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
Add a driver to support the special LDO access used by spring. This is a custom method in the cros_ec protocol - it does not use an I2C pass-through. There are two implementation choices: 1. Write a special LDO driver which can talk across the EC. Duplicate all the logic from TPS65090 for retrying when the LDO fails to come up. 2. Write a special I2C bus driver which pretends to be a TPS65090 and transfers reads and writes using the LDO message. Either is distasteful. The latter method is chosen since it results in less code duplication and a fairly simple (30-line) implementation of the core logic. The crosec 'ldo' subcommand could be removed (since i2c md/mw will work instead) but is retained as a convenience. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
The Chrome OS EC supports tunnelling through to an I2C bus on the EC. This currently uses a copy of the I2C command code and a special 'crosec' sub-command. With driver model we can define an I2C bus which tunnels through to the EC, and use the normal 'i2c' command to access it. This simplifies the code and removes some duplication. Add an I2C driver which tunnels through to the EC. Adjust the EC code to support binding child devices so that it can be set up. Adjust the existing I2C xfer function to fit driver model better. For now the old code remains to allow things to still work. It will be removed in a later patch once the new flow is fully enabled. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
- May 06, 2015
-
-
Simon Glass authored
When starting up, show the protocol version that has been negotiated with the EC. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
- Apr 18, 2015
-
-
Simon Glass authored
Since all supported boards enable this option now, we can remove it along with the old code. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
This command is supposed to reinit the device. At present with driver model is does nothing. Implement this feature. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
This is the last driver to be converted. It requires an LPC bus and a special check_version() method. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
- Apr 17, 2015
-
-
Simon Glass authored
Add a convenience function to access the private data that a uclass stores for each of its devices. Convert over most existing uses for consistency and to provide an example for others. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
- Jan 30, 2015
-
-
Simon Glass authored
I2C is now deprecated on ARM platforms and there are no devices that use it with the v3 protocol. We can't require v3 support if we want to support I2C. Adjust the error handling to suit. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
These functions are going away, so use the new uclass support instead. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
- Nov 22, 2014
-
-
Simon Glass authored
This fixes this cppcheck report: [drivers/misc/cros_ec.c:704]: (error) Uninitialized variable: req Signed-off-by:
Simon Glass <sjg@chromium.org> Reported-by:
Wolfgang Denk <wd@denx.de>
-
- Oct 22, 2014
-
-
Simon Glass authored
Add support for driver model if enabled. This involves minimal changes to the code, mostly just plumbing around the edges. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Jagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>
-
- Mar 18, 2014
-
-
Simon Glass authored
The Chrome EC has a feature where you can access its I2C buses through a pass-through arrangement. Add a command to support this, and export the function for it also. Reviewed-by:
Vadim Bendebury <vbendeb@google.com> Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
Add a simple emulation of the Chrome OS EC for sandbox, so that it can perform various EC tasks such as keyboard handling. Reviewed-by:
Vadim Bendebury <vbendeb@chromium.org> Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
Due to signed/unsigned comparison, '< sizeof(struct)' does not do the right thing, since if ec_command() returns a -ve number we will consider this be success. Adjust all comparisons to avoid this problem. This error was found with sandbox, which gives a segfault in this case. On ARM we may instead silently fail. We should also consider turning on -Wsign-compare to catch this sort of thing in future. Reviewed-by:
Andrew Chew <achew@nvidia.com> Reviewed-by:
Simon Glass <sjg@chromium.org> Reviewed-by:
Vadim Bendebury <vbendeb@chromium.org> Tested-by:
Andrew Chew <achew@nvidia.com> Signed-off-by:
Simon Glass <sjg@chromium.org> Signed-off-by:
Jimmy Zhang <jimmzhang@nvidia.com>
-
Randall Spangler authored
Protocol version 3 will be attempted first; if the EC doesn't support it, u-boot will fall back to the old protocol version (2). Reviewed-by:
Simon Glass <sjg@chromium.org> Signed-off-by:
Randall Spangler <rspangler@chromium.org> Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
Protocol v2 was shipped with snow, link and spring. Protocol v3 is for pit and is targetted at SPI operation. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Randall Spangler authored
Version 1 protocols (without command version) were already no longer supported in cros_ec.c. This removes some dead code from the cros_ec_i2c driver. Version 2 protcols (with command version) are now called protocol_version=2, instead of cmd_version_is_supported=1. A subsequent change will introduce protocol version 3 for SPI. Reviewed-by:
Simon Glass <sjg@chromium.org> Signed-off-by:
Randall Spangler <rspangler@chromium.org> Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
The EC messages have been expanded and some parts have been renamed. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
Flash region access is not tied to having commands, so adjust the #ifdef to reflect this. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Vadim Bendebury authored
There is no need to support old style EC moving forward. Ultimately we should get rid of the check_version() API. For now just return error in case the EC does not seem to support the new API. Reviewed-by:
Vadim Bendebury <vbendeb@google.com> Tested-by:
Vadim Bendebury <vbendeb@google.com> Signed-off-by:
Vadim Bendebury <vbendeb@chromium.org> Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
In order to talk to the EC properly we need to be able to understand the layout of its internal flash memory. This permits emulation of the EC for sandbox, and also software update in a system with a real EC. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
- Jul 24, 2013
-
-
Wolfgang Denk authored
Signed-off-by:
Wolfgang Denk <wd@denx.de> [trini: Fixup common/cmd_io.c] Signed-off-by:
Tom Rini <trini@ti.com>
-
- Jun 26, 2013
-
-
Hung-ying Tyan authored
This patch adds the cros_ec driver that implements the protocol for communicating with Google's ChromeOS embedded controller. Signed-off-by:
Bernie Thompson <bhthompson@chromium.org> Signed-off-by:
Bill Richardson <wfrichar@chromium.org> Signed-off-by:
Che-Liang Chiou <clchiou@chromium.org> Signed-off-by:
Doug Anderson <dianders@chromium.org> Signed-off-by:
Gabe Black <gabeblack@chromium.org> Signed-off-by:
Hung-ying Tyan <tyanh@chromium.org> Signed-off-by:
Louis Yung-Chieh Lo <yjlou@chromium.org> Signed-off-by:
Randall Spangler <rspangler@chromium.org> Signed-off-by:
Sean Paul <seanpaul@chromium.org> Signed-off-by:
Simon Glass <sjg@chromium.org> Signed-off-by:
Vincent Palatin <vpalatin@chromium.org> Acked-by:
Simon Glass <sjg@chromium.org> Tested-by:
Simon Glass <sjg@chromium.org>
-