eCTS: Implement I2C suite |
|||
Issue description(eCTS: https://docs.google.com/document/d/1VFZgGV6uBxOWS7mJHlOAWWmkvqz6ctdgcbCaDo7RYhc/edit) Umbrella bug for all I2C tests. This suite should test APIs in include/i2c.h.
,
Oct 6 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform/ec/+/3afd683d683f482f003405c721800e3ba2ccb637 commit 3afd683d683f482f003405c721800e3ba2ccb637 Author: Daisuke Nojiri <dnojiri@chromium.org> Date: Mon Oct 03 19:51:52 2016 cts: Add I2C tests for read8/16/32 and write8/16/32 This patch adds tests for i2c_read8/16/32 and i2c_write8/16/32. BUG=chromium:653183 BRANCH=none TEST=make buildall. Run cts.py -m i2c for 100kHz with 10k ohms pull-up registers on SCL and SDA. TH=stm32l476g-eval DUT=nucleo-f072rb. Change-Id: I8121b1c5dc7542da45141543e35036ef41364c38 Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/393331 Reviewed-by: Randall Spangler <rspangler@chromium.org> [modify] https://crrev.com/3afd683d683f482f003405c721800e3ba2ccb637/board/nucleo-f072rb/board.c [modify] https://crrev.com/3afd683d683f482f003405c721800e3ba2ccb637/board/stm32l476g-eval/board.c [modify] https://crrev.com/3afd683d683f482f003405c721800e3ba2ccb637/board/stm32l476g-eval/gpio.inc [add] https://crrev.com/3afd683d683f482f003405c721800e3ba2ccb637/cts/i2c/dut.c [add] https://crrev.com/3afd683d683f482f003405c721800e3ba2ccb637/cts/i2c/th.c [add] https://crrev.com/3afd683d683f482f003405c721800e3ba2ccb637/cts/i2c/cts_i2c.h [modify] https://crrev.com/3afd683d683f482f003405c721800e3ba2ccb637/board/nucleo-f072rb/board.h [modify] https://crrev.com/3afd683d683f482f003405c721800e3ba2ccb637/board/nucleo-f072rb/gpio.inc [modify] https://crrev.com/3afd683d683f482f003405c721800e3ba2ccb637/board/stm32l476g-eval/board.h [modify] https://crrev.com/3afd683d683f482f003405c721800e3ba2ccb637/chip/stm32/i2c-stm32l4.c [modify] https://crrev.com/3afd683d683f482f003405c721800e3ba2ccb637/cts/build.mk [add] https://crrev.com/3afd683d683f482f003405c721800e3ba2ccb637/cts/i2c/cts.testlist
,
Mar 31 2017
,
Apr 4 2017
,
Jun 23 2017
With 10k ohm pull-ups on SDL and SDA, all tests pass: TEST NAME TH_RC DUT_RC TH_STR DUT_STR RESULT write8_test SUCCESS SUCCESS YES YES PASS write16_test SUCCESS SUCCESS YES YES PASS write32_test SUCCESS SUCCESS YES YES PASS read8_test SUCCESS SUCCESS YES YES PASS read16_test SUCCESS SUCCESS YES YES PASS read32_test SUCCESS SUCCESS YES YES PASS Without pull-ups (or even with internal pull-ups), read16_test and read32_test fail: TEST NAME TH_RC DUT_RC TH_STR DUT_STR RESULT write8_test SUCCESS SUCCESS YES YES PASS write16_test SUCCESS SUCCESS YES YES PASS write32_test SUCCESS SUCCESS YES YES PASS read8_test SUCCESS SUCCESS YES YES PASS read16_test SUCCESS FAILURE YES YES FAIL read32_test SUCCESS FAILURE YES YES FAIL Screenshot for read16_test is attached.
,
Jun 23 2017
Attached are scopeshots with and without external pull-ups. Without external pull-ups, the edges are too round.
,
Jun 29 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform/ec/+/de36e33ecf8d7e376d36b68c4be0229d306006ad commit de36e33ecf8d7e376d36b68c4be0229d306006ad Author: Daisuke Nojiri <dnojiri@chromium.org> Date: Thu Jun 29 04:50:50 2017 eCTS: Add I2C suite to run_ects.py This patch adds i2c suite to run_ects.py. It also adds checks for return values from i2c_read and i2c_write functions. BUG=chromium:653183 BRANCH=none TEST=Run run_ects.py and verify all test pass. Change-Id: Ie3d6e1e6f131235e2b28f39e1546c9cb4c3b92f6 Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/547024 Reviewed-by: Randall Spangler <rspangler@chromium.org> [modify] https://crrev.com/de36e33ecf8d7e376d36b68c4be0229d306006ad/util/run_ects.py [modify] https://crrev.com/de36e33ecf8d7e376d36b68c4be0229d306006ad/cts/i2c/th.c [modify] https://crrev.com/de36e33ecf8d7e376d36b68c4be0229d306006ad/cts/i2c/cts.testlist [modify] https://crrev.com/de36e33ecf8d7e376d36b68c4be0229d306006ad/cts/i2c/cts_i2c.h [modify] https://crrev.com/de36e33ecf8d7e376d36b68c4be0229d306006ad/cts/i2c/dut.c |
|||
►
Sign in to add a comment |
|||
Comment 1 by dnojiri@chromium.org
, Oct 5 2016