Hi Shukun,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git master
head: 3adbbd2295ad138ab95404d0ffc6bfc1b8f9f1e4
commit: 6c6dd5802c2d6769fa589c0e8de54299def199a7 [12/28] crypto: hisilicon/qm - add controller reset interface
config: riscv-allyesconfig (attached as .config)
compiler: riscv64-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 6c6dd5802c2d6769fa589c0e8de54299def199a7
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day GCC_VERSION=9.3.0 make.cross ARCH=riscv
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <[email protected]>
All errors (new ones prefixed by >>):
drivers/crypto/hisilicon/qm.c: In function 'qm_soft_reset':
>> drivers/crypto/hisilicon/qm.c:2810:7: error: implicit declaration of function 'acpi_evaluate_integer'; did you mean 'acpi_evaluate_object'? [-Werror=implicit-function-declaration]
2810 | s = acpi_evaluate_integer(ACPI_HANDLE(&pdev->dev),
| ^~~~~~~~~~~~~~~~~~~~~
| acpi_evaluate_object
cc1: some warnings being treated as errors
vim +2810 drivers/crypto/hisilicon/qm.c
2757
2758 static int qm_soft_reset(struct hisi_qm *qm)
2759 {
2760 struct pci_dev *pdev = qm->pdev;
2761 int ret;
2762 u32 val;
2763
2764 /* Ensure all doorbells and mailboxes received by QM */
2765 ret = qm_check_req_recv(qm);
2766 if (ret)
2767 return ret;
2768
2769 if (qm->vfs_num) {
2770 ret = qm_set_vf_mse(qm, false);
2771 if (ret) {
2772 pci_err(pdev, "Fails to disable vf MSE bit.\n");
2773 return ret;
2774 }
2775 }
2776
2777 ret = qm_set_msi(qm, false);
2778 if (ret) {
2779 pci_err(pdev, "Fails to disable PEH MSI bit.\n");
2780 return ret;
2781 }
2782
2783 qm_dev_ecc_mbit_handle(qm);
2784
2785 /* OOO register set and check */
2786 writel(ACC_MASTER_GLOBAL_CTRL_SHUTDOWN,
2787 qm->io_base + ACC_MASTER_GLOBAL_CTRL);
2788
2789 /* If bus lock, reset chip */
2790 ret = readl_relaxed_poll_timeout(qm->io_base + ACC_MASTER_TRANS_RETURN,
2791 val,
2792 (val == ACC_MASTER_TRANS_RETURN_RW),
2793 POLL_PERIOD, POLL_TIMEOUT);
2794 if (ret) {
2795 pci_emerg(pdev, "Bus lock! Please reset system.\n");
2796 return ret;
2797 }
2798
2799 ret = qm_set_pf_mse(qm, false);
2800 if (ret) {
2801 pci_err(pdev, "Fails to disable pf MSE bit.\n");
2802 return ret;
2803 }
2804
2805 /* The reset related sub-control registers are not in PCI BAR */
2806 if (ACPI_HANDLE(&pdev->dev)) {
2807 unsigned long long value = 0;
2808 acpi_status s;
2809
> 2810 s = acpi_evaluate_integer(ACPI_HANDLE(&pdev->dev),
2811 qm->err_ini->err_info.acpi_rst,
2812 NULL, &value);
2813 if (ACPI_FAILURE(s)) {
2814 pci_err(pdev, "NO controller reset method!\n");
2815 return -EIO;
2816 }
2817
2818 if (value) {
2819 pci_err(pdev, "Reset step %llu failed!\n", value);
2820 return -EIO;
2821 }
2822 } else {
2823 pci_err(pdev, "No reset method!\n");
2824 return -EINVAL;
2825 }
2826
2827 return 0;
2828 }
2829
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]
On 2020/4/23 14:31, kbuild test robot wrote:
> Hi Shukun,
>
> FYI, the error/warning still remains.
>
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git master
> head: 3adbbd2295ad138ab95404d0ffc6bfc1b8f9f1e4
> commit: 6c6dd5802c2d6769fa589c0e8de54299def199a7 [12/28] crypto: hisilicon/qm - add controller reset interface
> config: riscv-allyesconfig (attached as .config)
> compiler: riscv64-linux-gcc (GCC) 9.3.0
> reproduce:
> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> git checkout 6c6dd5802c2d6769fa589c0e8de54299def199a7
> # save the attached .config to linux build tree
> COMPILER_INSTALL_PATH=$HOME/0day GCC_VERSION=9.3.0 make.cross ARCH=riscv
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kbuild test robot <[email protected]>
>
> All errors (new ones prefixed by >>):
>
> drivers/crypto/hisilicon/qm.c: In function 'qm_soft_reset':
>>> drivers/crypto/hisilicon/qm.c:2810:7: error: implicit declaration of function 'acpi_evaluate_integer'; did you mean 'acpi_evaluate_object'? [-Werror=implicit-function-declaration]
> 2810 | s = acpi_evaluate_integer(ACPI_HANDLE(&pdev->dev),
> | ^~~~~~~~~~~~~~~~~~~~~
> | acpi_evaluate_object
> cc1: some warnings being treated as errors
>
> vim +2810 drivers/crypto/hisilicon/qm.c
>
> 2757
> 2758 static int qm_soft_reset(struct hisi_qm *qm)
> 2759 {
> 2760 struct pci_dev *pdev = qm->pdev;
> 2761 int ret;
> 2762 u32 val;
> 2763
> 2764 /* Ensure all doorbells and mailboxes received by QM */
> 2765 ret = qm_check_req_recv(qm);
> 2766 if (ret)
> 2767 return ret;
> 2768
> 2769 if (qm->vfs_num) {
> 2770 ret = qm_set_vf_mse(qm, false);
> 2771 if (ret) {
> 2772 pci_err(pdev, "Fails to disable vf MSE bit.\n");
> 2773 return ret;
> 2774 }
> 2775 }
> 2776
> 2777 ret = qm_set_msi(qm, false);
> 2778 if (ret) {
> 2779 pci_err(pdev, "Fails to disable PEH MSI bit.\n");
> 2780 return ret;
> 2781 }
> 2782
> 2783 qm_dev_ecc_mbit_handle(qm);
> 2784
> 2785 /* OOO register set and check */
> 2786 writel(ACC_MASTER_GLOBAL_CTRL_SHUTDOWN,
> 2787 qm->io_base + ACC_MASTER_GLOBAL_CTRL);
> 2788
> 2789 /* If bus lock, reset chip */
> 2790 ret = readl_relaxed_poll_timeout(qm->io_base + ACC_MASTER_TRANS_RETURN,
> 2791 val,
> 2792 (val == ACC_MASTER_TRANS_RETURN_RW),
> 2793 POLL_PERIOD, POLL_TIMEOUT);
> 2794 if (ret) {
> 2795 pci_emerg(pdev, "Bus lock! Please reset system.\n");
> 2796 return ret;
> 2797 }
> 2798
> 2799 ret = qm_set_pf_mse(qm, false);
> 2800 if (ret) {
> 2801 pci_err(pdev, "Fails to disable pf MSE bit.\n");
> 2802 return ret;
> 2803 }
> 2804
> 2805 /* The reset related sub-control registers are not in PCI BAR */
> 2806 if (ACPI_HANDLE(&pdev->dev)) {
> 2807 unsigned long long value = 0;
> 2808 acpi_status s;
> 2809
>> 2810 s = acpi_evaluate_integer(ACPI_HANDLE(&pdev->dev),
> 2811 qm->err_ini->err_info.acpi_rst,
> 2812 NULL, &value);
> 2813 if (ACPI_FAILURE(s)) {
> 2814 pci_err(pdev, "NO controller reset method!\n");
> 2815 return -EIO;
> 2816 }
> 2817
> 2818 if (value) {
> 2819 pci_err(pdev, "Reset step %llu failed!\n", value);
> 2820 return -EIO;
> 2821 }
> 2822 } else {
> 2823 pci_err(pdev, "No reset method!\n");
> 2824 return -EINVAL;
> 2825 }
> 2826
> 2827 return 0;
> 2828 }
> 2829
>
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/[email protected]
>
Hi all,
One thing confuses me is that CONFIG_CRYPTO_DEV_HISI_xxx in the .config I generated with
make ARCH=riscv allyesconfig are not set, but is set to be y in the attached .config. AM
I doing something wrong?
The attachment is the .config I make.
Thanks,
Shukun