Hi Tom, On Tue, Oct 10, 2023 at 10:19:09AM -0400, Tom Rini wrote: > On Tue, Sep 26, 2023 at 03:57:34PM +0900, AKASHI Takahiro wrote: > > > This patch series allows users to access SCMI base protocol provided by > > SCMI server (platform). It will also be utilized in separate patches > > in the future to add sanity/validity checks for other protocols. > > See SCMI specification document v3.2 beta[1] for more details about SCMI > > base protocol. > > > > What is currently not implemented is > > - SCMI_BASE_NOTIFY_ERRORS command and notification callback mechanism > > > > This feature won't be very useful in the current U-Boot environment. > > > > [1] https://developer.arm.com/documentation/den0056/e/?lang=en > > > > > > Test > > ==== > > The patch series was tested on the following platforms: > > * sandbox > > * qemu-arm64 with OPTEE as SCMI server > > I have two problems. The first is that for sandbox, this series is not > bisectable as a commits fail to build due to needing a definition in the > test before it's added: > /home/uboot/work/u-boot/u-boot/test/dm/scmi.c: In function > 'dm_test_scmi_clocks': > /home/uboot/work/u-boot/u-boot/test/dm/scmi.c:117:21: warning: implicit > declaration of function 'scmi_get_protocol' [-Wimplicit-function-declaration] > 117 | clock_dev = scmi_get_protocol(agent_dev, > SCMI_PROTOCOL_ID_CLOCK); > | ^~~~~~~~~~~~~~~~~
[snip] Ah, I didn't notice this dependency. I will fix it by re-ordering the commits. > Second, the series causes this failure: > ========================================== FAILURES > =========================================== > _______________________________ test_ut[ut_dm_dm_test_scmi_cmd] > _______________________________ > test/py/u_boot_spawn.py:195: in expect > c = os.read(self.fd, 1024).decode(errors='replace') > E OSError: [Errno 5] Input/output error > > During handling of the above exception, another exception occurred: > test/py/tests/test_ut.py:497: in test_ut > output = u_boot_console.run_command('ut ' + ut_subtest) > test/py/u_boot_console_base.py:266: in run_command > m = self.p.expect([self.prompt_compiled] + self.bad_patterns) > test/py/u_boot_spawn.py:204: in expect > raise ValueError('U-Boot exited with %s' % info) > E ValueError: U-Boot exited with signal 11 (SIGSEGV) > ------------------------------------ Captured stdout call > ------------------------------------- > => ut dm dm_test_scmi_cmd > Test: dm_test_scmi_cmd: scmi.c > SCMI device: scmi > protocol version: 0x20000 > # of agents: 2 > 0: platform > > 1: OSPM > # of protocols: 3 > Clock management > Reset domain management > Voltage domain management > vendor: U-Boot > sub vendor: Sandbox > impl version: 0x1 > Denying access to device:0 failed (-13) > Denying access to protocol:0x14 on device:0 failed (-13) > Reset failed (-13) > Test: dm_test_scmi_cmd: scmi.c (flat tree) > SCMI device: ?n > =================================== short test summary info > =================================== > FAILED test/py/tests/test_ut.py::test_ut[ut_dm_dm_test_scmi_cmd] - > ValueError: U-Boot exited... This seems to happen in the case of "flat tree", but I cannot reproduce it in my local environment with $ pytest test/py/tests/test_ut.py -bd sandbox -k scmi_cmd ... > Which I believe CI will also produce, once the issue with htmldocs is > fixed. I can't bisect it exactly as the failure shows up once the new > test is added. Anyhow, "scmi" command is more or less a debug tool for my development. All the functionality provided by this patch set is tested at "function" level with "ut dm scmi_base" and the command is *not* needed. To avoid increasing the maintenance cost, I will drop the command (patch #14-#16) in the next version. Thanks, -Takahiro Akashi > > -- > Tom
signature.asc
Description: PGP signature