#
5485cb62 |
| 17-Jan-2025 |
Robert Beckett <bob.beckett@collabora.com> |
i2c: add support for offset overflow in to address
Some devices (2 wire eeproms for example) use some bits from the chip address to represent the high bits of the offset instead of or as well as usi
i2c: add support for offset overflow in to address
Some devices (2 wire eeproms for example) use some bits from the chip address to represent the high bits of the offset instead of or as well as using multiple bytes for the offset, effectively stealing chip addresses on the bus.
Add a chip offset mask that can be set for any i2c chip which gets filled with the offset overflow during offset setup.
(cherry picked from commit 85968522b928e19a27aa79f0cb186c80b8b82e47)
Signed-off-by: Robert Beckett <bob.beckett@collabora.com> Signed-off-by: Ian Ray <ian.ray@ge.com> Reviewed-by: Heiko Schocher <hs@denx.de> Signed-off-by: Tan Siewert <tan.siewert@hetzner.com> Link: https://patch.msgid.link/20250117094434.16641-2-tan.siewert@hetzner.com Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
Revision tags: v00.04.15, v00.04.14, v00.04.13, v00.04.12, v00.04.11, v00.04.10, v00.04.09, v00.04.08, v00.04.07, v00.04.06, v00.04.05, v00.04.04, v00.04.03, v00.04.02, v00.04.01, v00.04.00, v2021.04, v00.03.03, v2021.01, v2020.10, v2020.07, v00.02.13, v2020.04, v2020.01, v2019.10, v00.02.05, v00.02.04, v00.02.03, v00.02.02, v00.02.01, v2019.07, v00.02.00, v2019.04 |
|
#
172e3c11 |
| 30-Nov-2018 |
Tom Rini <trini@konsulko.com> |
Merge tag 'pull-30nov18' of git://git.denx.de/u-boot-dm
Fix sound on sandbox Convert TPM fully to DM Tidy up sandbox I2C emulation Add a 'make qcheck' target for faster testing A few other misc thin
Merge tag 'pull-30nov18' of git://git.denx.de/u-boot-dm
Fix sound on sandbox Convert TPM fully to DM Tidy up sandbox I2C emulation Add a 'make qcheck' target for faster testing A few other misc things (dropped the final patch which breaks clang for some reason)
show more ...
|
#
b7c25b11 |
| 18-Nov-2018 |
Simon Glass <sjg@chromium.org> |
dm: sandbox: i2c: Add a new 'emulation parent' uclass
Sandbox i2c works using emulation drivers which are currently children of the i2c device:
rtc_0: rtc@43 { reg = <0x43>; compatible = "sand
dm: sandbox: i2c: Add a new 'emulation parent' uclass
Sandbox i2c works using emulation drivers which are currently children of the i2c device:
rtc_0: rtc@43 { reg = <0x43>; compatible = "sandbox-rtc"; emul { compatible = "sandbox,i2c-rtc"; }; };
In this case the emulation device is attached to i2c bus on address 0x43 and provides the Real-Time-Clock (RTC) functionality.
However this is not ideal, since every device on an I2C bus has a child device. This is only really the case for sandbox, but we want to avoid special-case code for sandbox.
A better approach seems to be to add a separate node on the bus, an 'emulation parent'. This can be given a bogus address (such as 0xff) and hides all the emulators away. Then we can use a phandle to point from the device to the correct emualtor, and only on sandbox. The code to find an emulator does not interfere with normal i2c operation.
Add a new UCLASS_I2C_EMUL_PARENT uclass which allows finding an emulator given a bus, and finding a bus given an emulator. This will be used in a follow-on patch.
Signed-off-by: Simon Glass <sjg@chromium.org>
show more ...
|
Revision tags: v2018.07 |
|
#
83d290c5 |
| 06-May-2018 |
Tom Rini <trini@konsulko.com> |
SPDX: Convert all of our single license tags to Linux Kernel style
When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So
SPDX: Convert all of our single license tags to Linux Kernel style
When U-Boot started using SPDX tags we were among the early adopters and there weren't a lot of other examples to borrow from. So we picked the area of the file that usually had a full license text and replaced it with an appropriate SPDX-License-Identifier: entry. Since then, the Linux Kernel has adopted SPDX tags and they place it as the very first line in a file (except where shebangs are used, then it's second line) and with slightly different comment styles than us.
In part due to community overlap, in part due to better tag visibility and in part for other minor reasons, switch over to that style.
This commit changes all instances where we have a single declared license in the tag as both the before and after are identical in tag contents. There's also a few places where I found we did not have a tag and have introduced one.
Signed-off-by: Tom Rini <trini@konsulko.com>
show more ...
|
Revision tags: v2018.03, v2018.01, v2017.11 |
|
#
2eb48ff7 |
| 07-Jun-2017 |
Heiko Schocher <hs@denx.de> |
powerpc, 8260: remove support for mpc8260
There was for long time no activity in the 8260 area. We need to go further and convert to Kconfig, but it turned out, nobody is interested anymore in 8260,
powerpc, 8260: remove support for mpc8260
There was for long time no activity in the 8260 area. We need to go further and convert to Kconfig, but it turned out, nobody is interested anymore in 8260, so remove it.
Signed-off-by: Heiko Schocher <hs@denx.de>
show more ...
|
#
5b8e76c3 |
| 07-Jun-2017 |
Heiko Schocher <hs@denx.de> |
powerpc, 8xx: remove support for 8xx
There was for long time no activity in the 8xx area. We need to go further and convert to Kconfig, but it turned out, nobody is interested anymore in 8xx, so rem
powerpc, 8xx: remove support for 8xx
There was for long time no activity in the 8xx area. We need to go further and convert to Kconfig, but it turned out, nobody is interested anymore in 8xx, so remove it (with a heavy heart, knowing that I remove here the root of U-Boot).
Signed-off-by: Heiko Schocher <hs@denx.de>
show more ...
|
#
1704308e |
| 18-May-2017 |
Simon Glass <sjg@chromium.org> |
dm: i2c: Convert uclass to livetree
Update the i2c uclass to support a live device tree.
Signed-off-by: Simon Glass <sjg@chromium.org>
|
#
853eaa4f |
| 17-May-2017 |
Simon Glass <sjg@chromium.org> |
Drop digital thermometer and thermostat (DTT) drivers
This subsystem is quite old. It has been replaced with a driver-model version (UCLASS_THERMAL). Boards are free to convert to that if required,
Drop digital thermometer and thermostat (DTT) drivers
This subsystem is quite old. It has been replaced with a driver-model version (UCLASS_THERMAL). Boards are free to convert to that if required, but here is a removal patch that could be applied in the meantime.
Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heiko Schocher <hs@denx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
show more ...
|
#
cb33bda4 |
| 15-May-2017 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://git.denx.de/u-boot-i2c
|
#
b0103f33 |
| 12-May-2017 |
Simon Glass <sjg@chromium.org> |
i2c: Drop CONFIG_SYS_I2C_BOARD_LATE_INIT
This option is not used by any boards. Drop it.
Signed-off-by: Simon Glass <sjg@chromium.org>
|
#
eca80375 |
| 28-Mar-2017 |
Simon Glass <sjg@chromium.org> |
i2c: Drop CONFIG_SOFT_I2C_MULTI_BUS
This is not used by any board. Drop it.
Signed-off-by: Simon Glass <sjg@chromium.org> Clean up board_f sequence a little This series tries to remove #ifdefs from
i2c: Drop CONFIG_SOFT_I2C_MULTI_BUS
This is not used by any board. Drop it.
Signed-off-by: Simon Glass <sjg@chromium.org> Clean up board_f sequence a little This series tries to remove #ifdefs from the board_f init sequence. It gets as far as I2C and then we need to discuss whether we can start to remove the old I2C framework.
I think that ideally each entry in the init sequence should be enabled by at most one CONFIG, which is in Kconfig and is not arch-specific. END Acked-by: Lukasz Majewski <lukma@denx.de> Acked-by: Jaehoon Chung <jh80.chung@samsung.com>
show more ...
|
#
664ee4c9 |
| 28-Mar-2017 |
Simon Glass <sjg@chromium.org> |
i2c: Drop unused i2c_soft...() functions
These are not used in U-Boot. Manual relocation fixup is used by blackfin but that is being removed.
Signed-off-by: Simon Glass <sjg@chromium.org>
|
Revision tags: v2016.07, openbmc-20160624-1 |
|
#
9d10c2d3 |
| 08-Jun-2016 |
Yuan Yao <yao.yuan@nxp.com> |
drivers: i2c: mxc: Add early init
Add early i2c init function with conservative divider when the exact clock rate is not available.
Signed-off-by: Yuan Yao <yao.yuan@nxp.com> Reviewed-by: York Sun
drivers: i2c: mxc: Add early init
Add early i2c init function with conservative divider when the exact clock rate is not available.
Signed-off-by: Yuan Yao <yao.yuan@nxp.com> Reviewed-by: York Sun <york.sun@nxp.com>
show more ...
|
#
fa8883a1 |
| 27-Nov-2015 |
Tom Rini <trini@konsulko.com> |
Merge branch 'master' of git://git.denx.de/u-boot-i2c
|
#
a06728c8 |
| 25-Nov-2015 |
Stefan Roese <sr@denx.de> |
i2c: Fix the comment to match the function described
Use the correct function name in the function description.
Signed-off-by: Stefan Roese <sr@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
i2c: Fix the comment to match the function described
Use the correct function name in the function description.
Signed-off-by: Stefan Roese <sr@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org> Cc: Heiko Schocher <hs@denx.de>
show more ...
|
Revision tags: v2016.01-rc1, v2015.10, v2015.10-rc5, v2015.10-rc4, v2015.10-rc3, v2015.10-rc2 |
|
#
ae27120c |
| 06-Aug-2015 |
Tom Rini <trini@konsulko.com> |
Merge git://git.denx.de/u-boot-dm
|
Revision tags: v2015.10-rc1 |
|
#
3d1957f0 |
| 03-Aug-2015 |
Simon Glass <sjg@chromium.org> |
dm: i2c: Add support for multiplexed I2C buses
Add a new I2C_MUX uclass. Devices in this class can multiplex between several I2C buses, selecting them one at a time for use by the system. The multip
dm: i2c: Add support for multiplexed I2C buses
Add a new I2C_MUX uclass. Devices in this class can multiplex between several I2C buses, selecting them one at a time for use by the system. The multiplexing mechanism is left to the driver to decide - it may be controlled by GPIOs, for example.
The uclass supports only two methods: select() and deselect().
The current mux state is expected to be stored in the mux itself since it is the only thing that knows how to make things work. The mux can record the current state and then avoid switching unless it is necessary. So select() can be skipped if the mux is already in the correct state. Also deselect() can be made a nop if required.
Signed-off-by: Simon Glass <sjg@chromium.org>
show more ...
|
Revision tags: v2015.07 |
|
#
df358c6b |
| 02-Jul-2015 |
Simon Glass <sjg@chromium.org> |
dm: i2c: Add a function to transfer messages
Sometimes it is useful to be able to transfer a raw I2C message. This happens when the chip address needs to be set manually, or when the data to be sent
dm: i2c: Add a function to transfer messages
Sometimes it is useful to be able to transfer a raw I2C message. This happens when the chip address needs to be set manually, or when the data to be sent/received is in another buffer.
Add a function to provide access to this.
Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Heiko Schocher <hs@denx.de>
show more ...
|
#
7fc65bcf |
| 02-Jul-2015 |
Simon Glass <sjg@chromium.org> |
dm: i2c: Move definitions to the top of the header file
Move the flags and struct definitions higher in the file so that we can reference them with functions declared in the driver model section.
S
dm: i2c: Move definitions to the top of the header file
Move the flags and struct definitions higher in the file so that we can reference them with functions declared in the driver model section.
Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Heiko Schocher <hs@denx.de>
show more ...
|
#
25a0fb43 |
| 02-Jul-2015 |
Simon Glass <sjg@chromium.org> |
dm: i2c: Correct comment nits in dm_i2c_reg_read/write()
Add documentation for the @dev parameter.
Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Heiko Schocher <hs@denx.de>
|
#
7d7db222 |
| 02-Jul-2015 |
Simon Glass <sjg@chromium.org> |
dm: i2c: Add a message debug function
Add a way to dump the contents of an I2C message for debugging purposes.
Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Heiko Schocher <hs@denx.de>
|
#
6f43ba70 |
| 07-Jul-2015 |
Albert ARIBAUD <albert.u.boot@aribaud.net> |
Merge branch 'u-boot/master' into 'u-boot-arm/master'
|
Revision tags: v2015.07-rc3 |
|
#
212b6601 |
| 15-Jun-2015 |
Stefano Babic <sbabic@denx.de> |
Merge branch 'master' of git://git.denx.de/u-boot
|
#
b9130d88 |
| 11-Jun-2015 |
Tom Rini <trini@konsulko.com> |
Merge git://git.denx.de/u-boot-dm
|
Revision tags: v2015.07-rc2 |
|
#
a2879764 |
| 16-May-2015 |
Simon Glass <sjg@chromium.org> |
dm: i2c: Add compatibility functions for dm_i2c_reg_read/write()
Add the legacy i2c_reg_read/write() functions to the compatibility layer so that they can be used when CONFIG_DM_I2C_COMPAT is define
dm: i2c: Add compatibility functions for dm_i2c_reg_read/write()
Add the legacy i2c_reg_read/write() functions to the compatibility layer so that they can be used when CONFIG_DM_I2C_COMPAT is defined.
Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Heiko Schocher <hs@denx.de>
show more ...
|