From: kernel test robot <lkp@intel.com>
To: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>,
Bjorn Andersson <andersson@kernel.org>,
Mathieu Poirier <mathieu.poirier@linaro.org>,
Jens Wiklander <jens.wiklander@linaro.org>,
Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzk@kernel.org>,
Conor Dooley <conor+dt@kernel.org>
Cc: oe-kbuild-all@lists.linux.dev,
linux-stm32@st-md-mailman.stormreply.com,
linux-arm-kernel@lists.infradead.org,
linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org,
op-tee@lists.trustedfirmware.org, devicetree@vger.kernel.org,
Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
Subject: Re: [PATCH v12 7/7] remoteproc: stm32: Add support of an OP-TEE TA to load the firmware
Date: Sat, 26 Oct 2024 20:45:42 +0800 [thread overview]
Message-ID: <202410262040.PWNrKv2Q-lkp@intel.com> (raw)
In-Reply-To: <20241025205924.2087768-8-arnaud.pouliquen@foss.st.com>
Hi Arnaud,
kernel test robot noticed the following build warnings:
[auto build test WARNING on 42f7652d3eb527d03665b09edac47f85fb600924]
url: https://github.com/intel-lab-lkp/linux/commits/Arnaud-Pouliquen/remoteproc-core-Introduce-rproc_pa_to_va-helper/20241026-050443
base: 42f7652d3eb527d03665b09edac47f85fb600924
patch link: https://lore.kernel.org/r/20241025205924.2087768-8-arnaud.pouliquen%40foss.st.com
patch subject: [PATCH v12 7/7] remoteproc: stm32: Add support of an OP-TEE TA to load the firmware
config: alpha-allyesconfig (https://download.01.org/0day-ci/archive/20241026/202410262040.PWNrKv2Q-lkp@intel.com/config)
compiler: alpha-linux-gcc (GCC) 13.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241026/202410262040.PWNrKv2Q-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202410262040.PWNrKv2Q-lkp@intel.com/
All warnings (new ones prefixed by >>):
drivers/remoteproc/stm32_rproc.c: In function 'stm32_rproc_probe':
>> drivers/remoteproc/stm32_rproc.c:904:21: warning: assignment to 'int' from 'struct rproc_tee *' makes integer from pointer without a cast [-Wint-conversion]
904 | ret = rproc_tee_register(dev, rproc, proc_id);
| ^
drivers/remoteproc/stm32_rproc.c:963:30: error: passing argument 1 of 'rproc_tee_unregister' from incompatible pointer type [-Werror=incompatible-pointer-types]
963 | rproc_tee_unregister(rproc);
| ^~~~~
| |
| struct rproc *
In file included from drivers/remoteproc/stm32_rproc.c:21:
include/linux/remoteproc_tee.h:59:58: note: expected 'struct rproc_tee *' but argument is of type 'struct rproc *'
59 | static inline int rproc_tee_unregister(struct rproc_tee *trproc)
| ~~~~~~~~~~~~~~~~~~^~~~~~
drivers/remoteproc/stm32_rproc.c: In function 'stm32_rproc_remove':
drivers/remoteproc/stm32_rproc.c:986:30: error: passing argument 1 of 'rproc_tee_unregister' from incompatible pointer type [-Werror=incompatible-pointer-types]
986 | rproc_tee_unregister(rproc);
| ^~~~~
| |
| struct rproc *
include/linux/remoteproc_tee.h:59:58: note: expected 'struct rproc_tee *' but argument is of type 'struct rproc *'
59 | static inline int rproc_tee_unregister(struct rproc_tee *trproc)
| ~~~~~~~~~~~~~~~~~~^~~~~~
cc1: some warnings being treated as errors
vim +904 drivers/remoteproc/stm32_rproc.c
874
875 static int stm32_rproc_probe(struct platform_device *pdev)
876 {
877 struct device *dev = &pdev->dev;
878 struct stm32_rproc *ddata;
879 struct device_node *np = dev->of_node;
880 struct rproc *rproc;
881 unsigned int state;
882 u32 proc_id;
883 int ret;
884
885 ret = dma_coerce_mask_and_coherent(dev, DMA_BIT_MASK(32));
886 if (ret)
887 return ret;
888
889 if (of_device_is_compatible(np, "st,stm32mp1-m4-tee")) {
890 /*
891 * Delegate the firmware management to the secure context.
892 * The firmware loaded has to be signed.
893 */
894 ret = of_property_read_u32(np, "st,proc-id", &proc_id);
895 if (ret) {
896 dev_err(dev, "failed to read st,rproc-id property\n");
897 return ret;
898 }
899
900 rproc = devm_rproc_alloc(dev, np->name, &st_rproc_tee_ops, NULL, sizeof(*ddata));
901 if (!rproc)
902 return -ENOMEM;
903
> 904 ret = rproc_tee_register(dev, rproc, proc_id);
905 if (ret)
906 return dev_err_probe(dev, ret, "signed firmware not supported by TEE\n");
907 } else {
908 rproc = devm_rproc_alloc(dev, np->name, &st_rproc_ops, NULL, sizeof(*ddata));
909 if (!rproc)
910 return -ENOMEM;
911 }
912
913 ddata = rproc->priv;
914
915 rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);
916
917 ret = stm32_rproc_parse_dt(pdev, ddata, &rproc->auto_boot);
918 if (ret)
919 goto free_rproc;
920
921 ret = stm32_rproc_of_memory_translations(pdev, ddata);
922 if (ret)
923 goto free_rproc;
924
925 ret = stm32_rproc_get_m4_status(ddata, &state);
926 if (ret)
927 goto free_rproc;
928
929 if (state == M4_STATE_CRUN)
930 rproc->state = RPROC_DETACHED;
931
932 rproc->has_iommu = false;
933 ddata->workqueue = create_workqueue(dev_name(dev));
934 if (!ddata->workqueue) {
935 dev_err(dev, "cannot create workqueue\n");
936 ret = -ENOMEM;
937 goto free_resources;
938 }
939
940 platform_set_drvdata(pdev, rproc);
941
942 ret = stm32_rproc_request_mbox(rproc);
943 if (ret)
944 goto free_wkq;
945
946 ret = rproc_add(rproc);
947 if (ret)
948 goto free_mb;
949
950 return 0;
951
952 free_mb:
953 stm32_rproc_free_mbox(rproc);
954 free_wkq:
955 destroy_workqueue(ddata->workqueue);
956 free_resources:
957 rproc_resource_cleanup(rproc);
958 free_rproc:
959 if (device_may_wakeup(dev)) {
960 dev_pm_clear_wake_irq(dev);
961 device_init_wakeup(dev, false);
962 }
963 rproc_tee_unregister(rproc);
964
965 return ret;
966 }
967
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: op-tee@lists.trustedfirmware.org
Subject: Re: [PATCH v12 7/7] remoteproc: stm32: Add support of an OP-TEE TA to load the firmware
Date: Sat, 26 Oct 2024 20:45:42 +0800 [thread overview]
Message-ID: <202410262040.PWNrKv2Q-lkp@intel.com> (raw)
In-Reply-To: <20241025205924.2087768-8-arnaud.pouliquen@foss.st.com>
[-- Attachment #1: Type: text/plain, Size: 5891 bytes --]
Hi Arnaud,
kernel test robot noticed the following build warnings:
[auto build test WARNING on 42f7652d3eb527d03665b09edac47f85fb600924]
url: https://github.com/intel-lab-lkp/linux/commits/Arnaud-Pouliquen/remoteproc-core-Introduce-rproc_pa_to_va-helper/20241026-050443
base: 42f7652d3eb527d03665b09edac47f85fb600924
patch link: https://lore.kernel.org/r/20241025205924.2087768-8-arnaud.pouliquen%40foss.st.com
patch subject: [PATCH v12 7/7] remoteproc: stm32: Add support of an OP-TEE TA to load the firmware
config: alpha-allyesconfig (https://download.01.org/0day-ci/archive/20241026/202410262040.PWNrKv2Q-lkp(a)intel.com/config)
compiler: alpha-linux-gcc (GCC) 13.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241026/202410262040.PWNrKv2Q-lkp(a)intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202410262040.PWNrKv2Q-lkp(a)intel.com/
All warnings (new ones prefixed by >>):
drivers/remoteproc/stm32_rproc.c: In function 'stm32_rproc_probe':
>> drivers/remoteproc/stm32_rproc.c:904:21: warning: assignment to 'int' from 'struct rproc_tee *' makes integer from pointer without a cast [-Wint-conversion]
904 | ret = rproc_tee_register(dev, rproc, proc_id);
| ^
drivers/remoteproc/stm32_rproc.c:963:30: error: passing argument 1 of 'rproc_tee_unregister' from incompatible pointer type [-Werror=incompatible-pointer-types]
963 | rproc_tee_unregister(rproc);
| ^~~~~
| |
| struct rproc *
In file included from drivers/remoteproc/stm32_rproc.c:21:
include/linux/remoteproc_tee.h:59:58: note: expected 'struct rproc_tee *' but argument is of type 'struct rproc *'
59 | static inline int rproc_tee_unregister(struct rproc_tee *trproc)
| ~~~~~~~~~~~~~~~~~~^~~~~~
drivers/remoteproc/stm32_rproc.c: In function 'stm32_rproc_remove':
drivers/remoteproc/stm32_rproc.c:986:30: error: passing argument 1 of 'rproc_tee_unregister' from incompatible pointer type [-Werror=incompatible-pointer-types]
986 | rproc_tee_unregister(rproc);
| ^~~~~
| |
| struct rproc *
include/linux/remoteproc_tee.h:59:58: note: expected 'struct rproc_tee *' but argument is of type 'struct rproc *'
59 | static inline int rproc_tee_unregister(struct rproc_tee *trproc)
| ~~~~~~~~~~~~~~~~~~^~~~~~
cc1: some warnings being treated as errors
vim +904 drivers/remoteproc/stm32_rproc.c
874
875 static int stm32_rproc_probe(struct platform_device *pdev)
876 {
877 struct device *dev = &pdev->dev;
878 struct stm32_rproc *ddata;
879 struct device_node *np = dev->of_node;
880 struct rproc *rproc;
881 unsigned int state;
882 u32 proc_id;
883 int ret;
884
885 ret = dma_coerce_mask_and_coherent(dev, DMA_BIT_MASK(32));
886 if (ret)
887 return ret;
888
889 if (of_device_is_compatible(np, "st,stm32mp1-m4-tee")) {
890 /*
891 * Delegate the firmware management to the secure context.
892 * The firmware loaded has to be signed.
893 */
894 ret = of_property_read_u32(np, "st,proc-id", &proc_id);
895 if (ret) {
896 dev_err(dev, "failed to read st,rproc-id property\n");
897 return ret;
898 }
899
900 rproc = devm_rproc_alloc(dev, np->name, &st_rproc_tee_ops, NULL, sizeof(*ddata));
901 if (!rproc)
902 return -ENOMEM;
903
> 904 ret = rproc_tee_register(dev, rproc, proc_id);
905 if (ret)
906 return dev_err_probe(dev, ret, "signed firmware not supported by TEE\n");
907 } else {
908 rproc = devm_rproc_alloc(dev, np->name, &st_rproc_ops, NULL, sizeof(*ddata));
909 if (!rproc)
910 return -ENOMEM;
911 }
912
913 ddata = rproc->priv;
914
915 rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);
916
917 ret = stm32_rproc_parse_dt(pdev, ddata, &rproc->auto_boot);
918 if (ret)
919 goto free_rproc;
920
921 ret = stm32_rproc_of_memory_translations(pdev, ddata);
922 if (ret)
923 goto free_rproc;
924
925 ret = stm32_rproc_get_m4_status(ddata, &state);
926 if (ret)
927 goto free_rproc;
928
929 if (state == M4_STATE_CRUN)
930 rproc->state = RPROC_DETACHED;
931
932 rproc->has_iommu = false;
933 ddata->workqueue = create_workqueue(dev_name(dev));
934 if (!ddata->workqueue) {
935 dev_err(dev, "cannot create workqueue\n");
936 ret = -ENOMEM;
937 goto free_resources;
938 }
939
940 platform_set_drvdata(pdev, rproc);
941
942 ret = stm32_rproc_request_mbox(rproc);
943 if (ret)
944 goto free_wkq;
945
946 ret = rproc_add(rproc);
947 if (ret)
948 goto free_mb;
949
950 return 0;
951
952 free_mb:
953 stm32_rproc_free_mbox(rproc);
954 free_wkq:
955 destroy_workqueue(ddata->workqueue);
956 free_resources:
957 rproc_resource_cleanup(rproc);
958 free_rproc:
959 if (device_may_wakeup(dev)) {
960 dev_pm_clear_wake_irq(dev);
961 device_init_wakeup(dev, false);
962 }
963 rproc_tee_unregister(rproc);
964
965 return ret;
966 }
967
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2024-10-26 12:47 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-25 20:59 [PATCH v12 0/7] Introduction of a remoteproc tee to load signed firmware Arnaud Pouliquen
2024-10-25 20:59 ` Arnaud Pouliquen
2024-10-25 20:59 ` [PATCH v12 1/7] remoteproc: core: Introduce rproc_pa_to_va helper Arnaud Pouliquen
2024-10-25 20:59 ` Arnaud Pouliquen
2024-10-25 20:59 ` [PATCH v12 2/7] remoteproc: Add TEE support Arnaud Pouliquen
2024-10-25 20:59 ` Arnaud Pouliquen
2024-10-25 20:59 ` [PATCH v12 3/7] remoteproc: core: Refactor resource table cleanup into rproc_release_fw Arnaud Pouliquen
2024-10-25 20:59 ` Arnaud Pouliquen
2024-10-25 20:59 ` [PATCH v12 4/7] remoteproc: Introduce release_fw optional operation Arnaud Pouliquen
2024-10-25 20:59 ` Arnaud Pouliquen
2024-10-25 20:59 ` [PATCH v12 5/7] dt-bindings: remoteproc: Add compatibility for TEE support Arnaud Pouliquen
2024-10-25 20:59 ` Arnaud Pouliquen
2024-10-25 20:59 ` [PATCH v12 6/7] remoteproc: stm32: Create sub-functions to request shutdown and release Arnaud Pouliquen
2024-10-25 20:59 ` Arnaud Pouliquen
2024-10-25 20:59 ` [PATCH v12 7/7] remoteproc: stm32: Add support of an OP-TEE TA to load the firmware Arnaud Pouliquen
2024-10-25 20:59 ` Arnaud Pouliquen
2024-10-26 10:00 ` kernel test robot
2024-10-26 10:00 ` kernel test robot
2024-10-26 10:21 ` kernel test robot
2024-10-26 10:21 ` kernel test robot
2024-10-26 12:45 ` kernel test robot [this message]
2024-10-26 12:45 ` kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202410262040.PWNrKv2Q-lkp@intel.com \
--to=lkp@intel.com \
--cc=andersson@kernel.org \
--cc=arnaud.pouliquen@foss.st.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=jens.wiklander@linaro.org \
--cc=krzk@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-remoteproc@vger.kernel.org \
--cc=linux-stm32@st-md-mailman.stormreply.com \
--cc=mathieu.poirier@linaro.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=op-tee@lists.trustedfirmware.org \
--cc=robh+dt@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.