From: kernel test robot <lkp@intel.com>
To: Mary Strodl <mstrodl@csh.rit.edu>, linux-kernel@vger.kernel.org
Cc: oe-kbuild-all@lists.linux.dev, akpm@linux-foundation.org,
urezki@gmail.com, hch@infradead.org, linux-mm@kvack.org,
lee@kernel.org, andi.shyti@kernel.org, linux-i2c@vger.kernel.org,
s.hauer@pengutronix.de, christian.gmeiner@gmail.com,
Mary Strodl <mstrodl@csh.rit.edu>
Subject: Re: [PATCH v3 1/2] x86: Add basic support for the Congatec CGEB BIOS interface
Date: Tue, 13 Aug 2024 20:26:00 +0800 [thread overview]
Message-ID: <202408132055.GF2IYZIB-lkp@intel.com> (raw)
In-Reply-To: <20240808183527.3950120-2-mstrodl@csh.rit.edu>
Hi Mary,
kernel test robot noticed the following build warnings:
[auto build test WARNING on lee-mfd/for-mfd-next]
[also build test WARNING on lee-mfd/for-mfd-fixes andi-shyti/i2c/i2c-host akpm-mm/mm-everything linus/master v6.11-rc3 next-20240813]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Mary-Strodl/x86-Add-basic-support-for-the-Congatec-CGEB-BIOS-interface/20240809-075405
base: https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git for-mfd-next
patch link: https://lore.kernel.org/r/20240808183527.3950120-2-mstrodl%40csh.rit.edu
patch subject: [PATCH v3 1/2] x86: Add basic support for the Congatec CGEB BIOS interface
config: i386-randconfig-r111-20240813 (https://download.01.org/0day-ci/archive/20240813/202408132055.GF2IYZIB-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240813/202408132055.GF2IYZIB-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/202408132055.GF2IYZIB-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
>> drivers/mfd/congatec-cgeb.c:906:17: sparse: sparse: cast removes address space '__iomem' of expression
drivers/mfd/congatec-cgeb.c:931:27: sparse: sparse: cast removes address space '__iomem' of expression
vim +/__iomem +906 drivers/mfd/congatec-cgeb.c
888
889 static struct cgeb_board_data *cgeb_open(resource_size_t base, u32 len)
890 {
891 u32 dw;
892 struct cgeb_boardinfo pbi;
893 struct cgeb_low_desc *low_desc;
894 struct cgeb_high_desc *high_desc = NULL;
895 u32 high_desc_phys;
896 u32 high_desc_len;
897 void *pcur, *high_desc_virt;
898 int ret;
899
900 struct cgeb_board_data *board;
901
902 board = kzalloc(sizeof(*board), GFP_KERNEL);
903 if (!board)
904 return NULL;
905
> 906 pcur = (void *) ioremap_cache(base, len);
907 if (!pcur)
908 goto err_kfree;
909
910 /* look for the CGEB descriptor */
911 low_desc = cgeb_find_magic(pcur, len, CGEB_LD_MAGIC);
912 if (!low_desc)
913 goto err_kfree;
914
915 pr_debug("CGEB: Found CGEB_LD_MAGIC\n");
916
917 if (low_desc->size < sizeof(struct cgeb_low_desc) - sizeof(long))
918 goto err_kfree;
919
920 if (low_desc->size >= sizeof(struct cgeb_low_desc)
921 && low_desc->hi_desc_phys_addr)
922 high_desc_phys = low_desc->hi_desc_phys_addr;
923 else
924 high_desc_phys = 0xfff00000;
925
926 high_desc_len = (unsigned int) -(int)high_desc_phys;
927
928 pr_debug("CGEB: Looking for CGEB hi desc between phys 0x%x and 0x%x\n",
929 high_desc_phys, -1);
930
931 high_desc_virt = (void *) ioremap_cache(high_desc_phys, high_desc_len);
932 if (!high_desc_virt)
933 goto err_kfree;
934
935 pr_debug("CGEB: Looking for CGEB hi desc between virt 0x%p and 0x%p\n",
936 high_desc_virt, high_desc_virt + high_desc_len - 1);
937
938 high_desc = cgeb_find_magic(high_desc_virt, high_desc_len,
939 CGEB_HD_MAGIC);
940 if (!high_desc)
941 goto err_iounmap;
942
943 pr_debug("CGEB: Found CGEB_HD_MAGIC\n");
944
945 if (high_desc->size < sizeof(struct cgeb_high_desc))
946 goto err_iounmap;
947
948 pr_debug("CGEB: data_size %u, code_size %u, entry_rel %u\n",
949 high_desc->data_size, high_desc->code_size, high_desc->entry_rel);
950
951 ret = cgeb_upload_code(high_desc, board);
952 if (ret) {
953 pr_err("CGEB: Couldn't upload code to helper: %d\n", ret);
954 goto err_munmap;
955 }
956
957 board->ds = get_data_segment();
958
959 ret = cgeb_call_simple(board, CgebGetCgebVersion, 0, NULL, 0, &dw);
960 if (ret)
961 goto err_munmap;
962
963 if (CGEB_GET_VERSION_MAJOR(dw) != CGEB_VERSION_MAJOR)
964 goto err_munmap;
965
966 pr_debug("CGEB: BIOS interface revision: %d.%d\n",
967 dw >> 16, dw & 0xffff);
968
969 if (high_desc->data_size)
970 dw = high_desc->data_size;
971 else
972 ret = cgeb_call_simple(board, CgebGetDataSize, 0, NULL, 0, &dw);
973
974 if (!ret && dw) {
975 board->data = cgeb_user_alloc(high_desc->data_size);
976 if (!board->data)
977 goto err_munmap;
978 }
979
980 ret = cgeb_call_simple(board, CgebOpen, 0, NULL, 0, NULL);
981 if (ret)
982 goto err_free_data;
983
984 pr_debug("CGEB: Mapping memory\n");
985 ret = cgeb_map_memory(board);
986 if (ret)
987 goto err_free_map;
988 pr_debug("CGEB: Memory is mapped, getting board info\n");
989
990 ret = cgeb_call_simple(board, CgebBoardGetInfo, 0, &pbi,
991 sizeof(pbi), NULL);
992 if (ret)
993 goto err_free_map;
994
995 pr_info("CGEB: Board name: %c%c%c%c\n",
996 pbi.board[0], pbi.board[1],
997 pbi.board[2], pbi.board[3]);
998
999 iounmap((void __iomem *) high_desc_virt);
1000
1001 return board;
1002
1003 err_free_map:
1004 cgeb_unmap_memory(board);
1005 err_free_data:
1006 cgeb_user_free(board->data);
1007 err_munmap:
1008 cgeb_munmap(board->code, board->code_size);
1009 err_iounmap:
1010 iounmap((void __iomem *) high_desc_virt);
1011 err_kfree:
1012 kfree(board);
1013 return NULL;
1014 }
1015
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2024-08-13 12:26 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-08 18:35 [PATCH v3 0/2] Add support for " Mary Strodl
2024-08-08 18:35 ` [PATCH v3 1/2] x86: Add basic support for the " Mary Strodl
2024-08-09 0:46 ` Andi Shyti
2024-08-12 11:45 ` Mary Strodl
2024-08-12 20:16 ` Andi Shyti
2024-08-13 12:26 ` kernel test robot [this message]
2024-08-08 18:35 ` [PATCH v3 2/2] i2c: Add Congatec CGEB I2C driver Mary Strodl
2024-08-09 0:55 ` Andi Shyti
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=202408132055.GF2IYZIB-lkp@intel.com \
--to=lkp@intel.com \
--cc=akpm@linux-foundation.org \
--cc=andi.shyti@kernel.org \
--cc=christian.gmeiner@gmail.com \
--cc=hch@infradead.org \
--cc=lee@kernel.org \
--cc=linux-i2c@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mstrodl@csh.rit.edu \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=s.hauer@pengutronix.de \
--cc=urezki@gmail.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox