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); | ^~~~~~~~~~~~~~~~~ /home/uboot/work/u-boot/u-boot/test/dm/scmi.c:117:50: error: 'SCMI_PROTOCOL_ID_CLOCK' undeclared (first use in this function) 117 | clock_dev = scmi_get_protocol(agent_dev, SCMI_PROTOCOL_ID_CLOCK); | ^~~~~~~~~~~~~~~~~~~~~~ /home/uboot/work/u-boot/u-boot/test/dm/scmi.c:117:50: note: each undeclared identifier is reported only once for each function it appears in /home/uboot/work/u-boot/u-boot/test/dm/scmi.c: In function 'dm_test_scmi_resets': /home/uboot/work/u-boot/u-boot/test/dm/scmi.c:182:50: error: 'SCMI_PROTOCOL_ID_RESET_DOMAIN' undeclared (first use in this function) 182 | reset_dev = scmi_get_protocol(agent_dev, SCMI_PROTOCOL_ID_RESET_DOMAIN); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ make[4]: *** [/home/uboot/work/u-boot/u-boot/scripts/Makefile.build:256: test/dm/scmi.o] Error 1 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... 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. -- Tom
signature.asc
Description: PGP signature