[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202601231918.PQTTcbRG-lkp@intel.com>
Date: Fri, 23 Jan 2026 19:41:30 +0800
From: kernel test robot <lkp@...el.com>
To: Anirudh Srinivasan <asrinivasan@....tenstorrent.com>,
Drew Fustini <dfustini@....tenstorrent.com>,
Joel Stanley <jms@....tenstorrent.com>,
Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Michael Turquette <mturquette@...libre.com>,
Stephen Boyd <sboyd@...nel.org>,
Philipp Zabel <p.zabel@...gutronix.de>
Cc: llvm@...ts.linux.dev, oe-kbuild-all@...ts.linux.dev,
linux-riscv@...ts.infradead.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-clk@...r.kernel.org,
joel@....id.au, fustini@...nel.org, mpe@...nel.org,
mpe@....tenstorrent.com, npiggin@....tenstorrent.com,
agross@...nel.org, agross@....tenstorrent.com, bmasney@...hat.com
Subject: Re: [PATCH v2 3/3] clk: tenstorrent: Add Atlantis clock controller
driver
Hi Anirudh,
kernel test robot noticed the following build errors:
[auto build test ERROR on 9448598b22c50c8a5bb77a9103e2d49f134c9578]
url: https://github.com/intel-lab-lkp/linux/commits/Anirudh-Srinivasan/dt-bindings-soc-tenstorrent-Add-tenstorrent-atlantis-syscon/20260123-064135
base: 9448598b22c50c8a5bb77a9103e2d49f134c9578
patch link: https://lore.kernel.org/r/20260122-atlantis-clocks-v2-3-c66371639e66%40oss.tenstorrent.com
patch subject: [PATCH v2 3/3] clk: tenstorrent: Add Atlantis clock controller driver
config: um-allmodconfig (https://download.01.org/0day-ci/archive/20260123/202601231918.PQTTcbRG-lkp@intel.com/config)
compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260123/202601231918.PQTTcbRG-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@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202601231918.PQTTcbRG-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from drivers/clk/tenstorrent/atlantis-ccu.c:12:
In file included from include/linux/regmap.h:20:
In file included from include/linux/iopoll.h:14:
In file included from include/linux/io.h:12:
In file included from arch/um/include/asm/io.h:24:
include/asm-generic/io.h:1209:55: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
1209 | return (port > MMIO_UPPER_LIMIT) ? NULL : PCI_IOBASE + port;
| ~~~~~~~~~~ ^
>> drivers/clk/tenstorrent/atlantis-ccu.c:832:2: error: call to undeclared function 'kfree'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
832 | kfree(to_atlantis_ccu_adev(adev));
| ^
>> drivers/clk/tenstorrent/atlantis-ccu.c:852:10: error: call to undeclared function 'kzalloc'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
852 | cadev = kzalloc(sizeof(*cadev), GFP_KERNEL);
| ^
>> drivers/clk/tenstorrent/atlantis-ccu.c:852:8: error: incompatible integer to pointer conversion assigning to 'struct atlantis_ccu_adev *' from 'int' [-Wint-conversion]
852 | cadev = kzalloc(sizeof(*cadev), GFP_KERNEL);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/clk/tenstorrent/atlantis-ccu.c:877:2: error: call to undeclared function 'kfree'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
877 | kfree(cadev);
| ^
1 warning and 4 errors generated.
vim +/kfree +832 drivers/clk/tenstorrent/atlantis-ccu.c
827
828 static void atlantis_cadev_release(struct device *dev)
829 {
830 struct auxiliary_device *adev = to_auxiliary_dev(dev);
831
> 832 kfree(to_atlantis_ccu_adev(adev));
833 }
834
835 static void atlantis_adev_unregister(void *data)
836 {
837 struct auxiliary_device *adev = data;
838
839 auxiliary_device_delete(adev);
840 auxiliary_device_uninit(adev);
841 }
842
843 static int atlantis_ccu_adev_register(struct device *dev,
844 struct atlantis_ccu *ccu,
845 const struct atlantis_ccu_data *data,
846 const char *adev_name)
847 {
848 struct atlantis_ccu_adev *cadev;
849 struct auxiliary_device *adev;
850 int ret;
851
> 852 cadev = kzalloc(sizeof(*cadev), GFP_KERNEL);
853 if (!cadev)
854 return -ENOMEM;
855
856 cadev->regmap = ccu->regmap;
857
858 adev = &cadev->adev;
859 adev->name = adev_name;
860 adev->dev.parent = dev;
861 adev->dev.release = atlantis_cadev_release;
862 adev->dev.of_node = dev->of_node;
863
864 ret = auxiliary_device_init(adev);
865 if (ret)
866 goto err_free_cadev;
867
868 ret = auxiliary_device_add(adev);
869 if (ret) {
870 auxiliary_device_uninit(adev);
871 return ret;
872 }
873
874 return devm_add_action_or_reset(dev, atlantis_adev_unregister, adev);
875
876 err_free_cadev:
877 kfree(cadev);
878
879 return ret;
880 }
881 static int atlantis_ccu_probe(struct platform_device *pdev)
882 {
883 const struct atlantis_ccu_data *data;
884 struct device *dev = &pdev->dev;
885 int ret;
886
887 struct atlantis_ccu *ccu = devm_kzalloc(dev, sizeof(*ccu), GFP_KERNEL);
888
889 if (!ccu)
890 return -ENOMEM;
891
892 ccu->dev = dev;
893
894 ccu->base = devm_platform_ioremap_resource(pdev, 0);
895 if (IS_ERR(ccu->base))
896 return dev_err_probe(dev, PTR_ERR(ccu->base),
897 "Failed to map registers\n");
898
899 ccu->regmap = devm_regmap_init_mmio(dev, ccu->base,
900 &atlantis_ccu_regmap_config);
901 if (IS_ERR(ccu->regmap))
902 return dev_err_probe(dev, PTR_ERR(ccu->regmap),
903 "Failed to init regmap\n");
904
905 data = of_device_get_match_data(dev);
906
907 ret = atlantis_ccu_clocks_register(dev, ccu, data);
908 if (ret)
909 return dev_err_probe(dev, ret, "failed to register clocks\n");
910
911 ret = atlantis_ccu_adev_register(dev, ccu, data, data->reset_name);
912 if (ret)
913 return dev_err_probe(dev, ret, "failed to register resets\n");
914
915 return 0;
916 }
917
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists