diff mbox

[3/3] crypto: Added Chelsio Menu to the Kconfig file

Message ID 1468261688-24525-4-git-send-email-yeshaswi@chelsio.com (mailing list archive)
State Changes Requested
Delegated to: Herbert Xu
Headers show

Commit Message

Yeshaswi M R Gowda July 11, 2016, 6:28 p.m. UTC
Adds the config entry for the Chelsio Crypto Driver, Makefile changes
for the same.

Signed-off-by: Yeshaswi M R Gowda <yeshaswi@chelsio.com>
---
 drivers/crypto/Kconfig  |    2 ++
 drivers/crypto/Makefile |    1 +
 2 files changed, 3 insertions(+)

Comments

kernel test robot July 11, 2016, 7:30 p.m. UTC | #1
Hi,

[auto build test WARNING on net-next/master]
[also build test WARNING on v4.7-rc7 next-20160711]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Yeshaswi-M-R-Gowda/crypto-chcr-Add-Chelsio-Crypto-Driver/20160712-023513
config: sh-allmodconfig (attached as .config)
compiler: sh4-linux-gnu-gcc (Debian 5.3.1-8) 5.3.1 20160205
reproduce:
        wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=sh 

All warnings (new ones prefixed by >>):

warning: (ISCSI_TARGET_CXGB4) selects CHELSIO_T4_UWIRE which has unmet direct dependencies (NETDEVICES && ETHERNET && NET_VENDOR_CHELSIO && CHELSIO_T4)
warning: (SCSI_CXGB4_ISCSI && CRYPTO_DEV_CHELSIO) selects CHELSIO_T4 which has unmet direct dependencies (NETDEVICES && ETHERNET && NET_VENDOR_CHELSIO && PCI && (IPV6 || IPV6=n))

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
kernel test robot July 12, 2016, 12:14 a.m. UTC | #2
Hi,

[auto build test WARNING on net-next/master]
[also build test WARNING on v4.7-rc7 next-20160711]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Yeshaswi-M-R-Gowda/crypto-chcr-Add-Chelsio-Crypto-Driver/20160712-023513
config: i386-allmodconfig (attached as .config)
compiler: gcc-6 (Debian 6.1.1-1) 6.1.1 20160430
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

All warnings (new ones prefixed by >>):

   drivers/crypto/chelsio/chcr_core.c: In function 'cpl_fw6_pld_handler':
>> drivers/crypto/chelsio/chcr_core.c:134:8: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
     req = (struct crypto_async_request *)cookie;
           ^
--
   In file included from include/linux/swab.h:4:0,
                    from include/uapi/linux/byteorder/little_endian.h:12,
                    from include/linux/byteorder/little_endian.h:4,
                    from arch/x86/include/uapi/asm/byteorder.h:4,
                    from include/asm-generic/bitops/le.h:5,
                    from arch/x86/include/asm/bitops.h:504,
                    from include/linux/bitops.h:36,
                    from include/linux/kernel.h:10,
                    from drivers/crypto/chelsio/chcr_algo.c:42:
   drivers/crypto/chelsio/chcr_algo.c: In function 'create_wreq':
>> drivers/crypto/chelsio/chcr_algo.c:454:29: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
     wreq->cookie = cpu_to_be64((u64)req);
                                ^
   include/uapi/linux/swab.h:126:54: note: in definition of macro '__swab64'
    #define __swab64(x) (__u64)__builtin_bswap64((__u64)(x))
                                                         ^
>> include/linux/byteorder/generic.h:91:21: note: in expansion of macro '__cpu_to_be64'
    #define cpu_to_be64 __cpu_to_be64
                        ^~~~~~~~~~~~~
>> drivers/crypto/chelsio/chcr_algo.c:454:17: note: in expansion of macro 'cpu_to_be64'
     wreq->cookie = cpu_to_be64((u64)req);
                    ^~~~~~~~~~~
   drivers/crypto/chelsio/chcr_algo.c: In function 'chcr_register_alg':
>> drivers/crypto/chelsio/chcr_algo.c:1471:48: warning: operation on 'driver_algs[i].alg.hash.halg.base.cra_init' may be undefined [-Wsequence-point]
        driver_algs[i].alg.hash.halg.base.cra_init =
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        driver_algs[i].alg.hash.halg.base.cra_init =
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         chcr_hmac_cra_init;
         ~~~~~~~~~~~~~~~~~~                         

vim +134 drivers/crypto/chelsio/chcr_core.c

5c923415 Yeshaswi M R Gowda 2016-07-11  118  	u_ctx->dev = NULL;
5c923415 Yeshaswi M R Gowda 2016-07-11  119  	atomic_dec(&dev_count);
5c923415 Yeshaswi M R Gowda 2016-07-11  120  	return 0;
5c923415 Yeshaswi M R Gowda 2016-07-11  121  }
5c923415 Yeshaswi M R Gowda 2016-07-11  122  
5c923415 Yeshaswi M R Gowda 2016-07-11  123  static int cpl_fw6_pld_handler(struct chcr_dev *dev,
5c923415 Yeshaswi M R Gowda 2016-07-11  124  			       unsigned char *input)
5c923415 Yeshaswi M R Gowda 2016-07-11  125  {
5c923415 Yeshaswi M R Gowda 2016-07-11  126  	struct crypto_async_request *req;
5c923415 Yeshaswi M R Gowda 2016-07-11  127  	struct cpl_fw6_pld *fw6_pld;
5c923415 Yeshaswi M R Gowda 2016-07-11  128  	u64 cookie;
5c923415 Yeshaswi M R Gowda 2016-07-11  129  	u32 ack_err_status = 0;
5c923415 Yeshaswi M R Gowda 2016-07-11  130  	int error_status = 0;
5c923415 Yeshaswi M R Gowda 2016-07-11  131  
5c923415 Yeshaswi M R Gowda 2016-07-11  132  	fw6_pld = (struct cpl_fw6_pld *)input;
5c923415 Yeshaswi M R Gowda 2016-07-11  133  	cookie = be64_to_cpu(fw6_pld->data[1]);
5c923415 Yeshaswi M R Gowda 2016-07-11 @134  	req = (struct crypto_async_request *)cookie;
5c923415 Yeshaswi M R Gowda 2016-07-11  135  
5c923415 Yeshaswi M R Gowda 2016-07-11  136  	ack_err_status =
5c923415 Yeshaswi M R Gowda 2016-07-11  137  		ntohl(*(__be32 *)((unsigned char *)&fw6_pld->data[0] + 4));
5c923415 Yeshaswi M R Gowda 2016-07-11  138  	if (ack_err_status) {
5c923415 Yeshaswi M R Gowda 2016-07-11  139  		if (CHK_MAC_ERR_BIT(ack_err_status) ||
5c923415 Yeshaswi M R Gowda 2016-07-11  140  		    CHK_PAD_ERR_BIT(ack_err_status))
5c923415 Yeshaswi M R Gowda 2016-07-11  141  			error_status = -EINVAL;
5c923415 Yeshaswi M R Gowda 2016-07-11  142  	}

:::::: The code at line 134 was first introduced by commit
:::::: 5c9234157776103907606c9f4c93a311467e246f chcr: Support for Chelsio's Crypto Hardware

:::::: TO: Yeshaswi M R Gowda <yeshaswi@chelsio.com>
:::::: CC: 0day robot <fengguang.wu@intel.com>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
kernel test robot July 12, 2016, 4:36 a.m. UTC | #3
Hi,

[auto build test WARNING on net-next/master]
[also build test WARNING on v4.7-rc7 next-20160711]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Yeshaswi-M-R-Gowda/crypto-chcr-Add-Chelsio-Crypto-Driver/20160712-023513
config: sh-allyesconfig (attached as .config)
compiler: sh4-linux-gnu-gcc (Debian 5.3.1-8) 5.3.1 20160205
reproduce:
        wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=sh 

All warnings (new ones prefixed by >>):

   In file included from include/linux/swab.h:4:0,
                    from include/uapi/linux/byteorder/little_endian.h:12,
                    from include/linux/byteorder/little_endian.h:4,
                    from arch/sh/include/uapi/asm/byteorder.h:5,
                    from arch/sh/include/asm/bitops.h:11,
                    from include/linux/bitops.h:36,
                    from include/linux/kernel.h:10,
                    from drivers/crypto/chelsio/chcr_algo.c:42:
   drivers/crypto/chelsio/chcr_algo.c: In function 'create_wreq':
   drivers/crypto/chelsio/chcr_algo.c:454:29: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
     wreq->cookie = cpu_to_be64((u64)req);
                                ^
   include/uapi/linux/swab.h:129:32: note: in definition of macro '__swab64'
     (__builtin_constant_p((__u64)(x)) ? \
                                   ^
   include/linux/byteorder/generic.h:91:21: note: in expansion of macro '__cpu_to_be64'
    #define cpu_to_be64 __cpu_to_be64
                        ^
   drivers/crypto/chelsio/chcr_algo.c:454:17: note: in expansion of macro 'cpu_to_be64'
     wreq->cookie = cpu_to_be64((u64)req);
                    ^
   drivers/crypto/chelsio/chcr_algo.c:454:29: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
     wreq->cookie = cpu_to_be64((u64)req);
                                ^
   include/uapi/linux/swab.h:23:12: note: in definition of macro '___constant_swab64'
     (((__u64)(x) & (__u64)0x00000000000000ffULL) << 56) | \
               ^
>> include/uapi/linux/byteorder/little_endian.h:36:43: note: in expansion of macro '__swab64'
    #define __cpu_to_be64(x) ((__force __be64)__swab64((x)))
                                              ^
   include/linux/byteorder/generic.h:91:21: note: in expansion of macro '__cpu_to_be64'
    #define cpu_to_be64 __cpu_to_be64
                        ^
   drivers/crypto/chelsio/chcr_algo.c:454:17: note: in expansion of macro 'cpu_to_be64'
     wreq->cookie = cpu_to_be64((u64)req);
                    ^
   drivers/crypto/chelsio/chcr_algo.c:454:29: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
     wreq->cookie = cpu_to_be64((u64)req);
                                ^
   include/uapi/linux/swab.h:24:12: note: in definition of macro '___constant_swab64'
     (((__u64)(x) & (__u64)0x000000000000ff00ULL) << 40) | \
               ^
>> include/uapi/linux/byteorder/little_endian.h:36:43: note: in expansion of macro '__swab64'
    #define __cpu_to_be64(x) ((__force __be64)__swab64((x)))
                                              ^
   include/linux/byteorder/generic.h:91:21: note: in expansion of macro '__cpu_to_be64'
    #define cpu_to_be64 __cpu_to_be64
                        ^
   drivers/crypto/chelsio/chcr_algo.c:454:17: note: in expansion of macro 'cpu_to_be64'
     wreq->cookie = cpu_to_be64((u64)req);
                    ^
   drivers/crypto/chelsio/chcr_algo.c:454:29: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
     wreq->cookie = cpu_to_be64((u64)req);
                                ^
   include/uapi/linux/swab.h:25:12: note: in definition of macro '___constant_swab64'
     (((__u64)(x) & (__u64)0x0000000000ff0000ULL) << 24) | \
               ^
>> include/uapi/linux/byteorder/little_endian.h:36:43: note: in expansion of macro '__swab64'
    #define __cpu_to_be64(x) ((__force __be64)__swab64((x)))
                                              ^
   include/linux/byteorder/generic.h:91:21: note: in expansion of macro '__cpu_to_be64'
    #define cpu_to_be64 __cpu_to_be64
                        ^
   drivers/crypto/chelsio/chcr_algo.c:454:17: note: in expansion of macro 'cpu_to_be64'
     wreq->cookie = cpu_to_be64((u64)req);
                    ^
   drivers/crypto/chelsio/chcr_algo.c:454:29: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
     wreq->cookie = cpu_to_be64((u64)req);
                                ^
   include/uapi/linux/swab.h:26:12: note: in definition of macro '___constant_swab64'
     (((__u64)(x) & (__u64)0x00000000ff000000ULL) <<  8) | \
               ^
>> include/uapi/linux/byteorder/little_endian.h:36:43: note: in expansion of macro '__swab64'
    #define __cpu_to_be64(x) ((__force __be64)__swab64((x)))
                                              ^
   include/linux/byteorder/generic.h:91:21: note: in expansion of macro '__cpu_to_be64'
    #define cpu_to_be64 __cpu_to_be64
                        ^
   drivers/crypto/chelsio/chcr_algo.c:454:17: note: in expansion of macro 'cpu_to_be64'
     wreq->cookie = cpu_to_be64((u64)req);
                    ^
   drivers/crypto/chelsio/chcr_algo.c:454:29: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
     wreq->cookie = cpu_to_be64((u64)req);
                                ^
   include/uapi/linux/swab.h:27:12: note: in definition of macro '___constant_swab64'
     (((__u64)(x) & (__u64)0x000000ff00000000ULL) >>  8) | \
               ^
>> include/uapi/linux/byteorder/little_endian.h:36:43: note: in expansion of macro '__swab64'
    #define __cpu_to_be64(x) ((__force __be64)__swab64((x)))
                                              ^
   include/linux/byteorder/generic.h:91:21: note: in expansion of macro '__cpu_to_be64'
    #define cpu_to_be64 __cpu_to_be64
                        ^
   drivers/crypto/chelsio/chcr_algo.c:454:17: note: in expansion of macro 'cpu_to_be64'
     wreq->cookie = cpu_to_be64((u64)req);
                    ^
   drivers/crypto/chelsio/chcr_algo.c:454:29: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
     wreq->cookie = cpu_to_be64((u64)req);
                                ^
   include/uapi/linux/swab.h:28:12: note: in definition of macro '___constant_swab64'
     (((__u64)(x) & (__u64)0x0000ff0000000000ULL) >> 24) | \
               ^
>> include/uapi/linux/byteorder/little_endian.h:36:43: note: in expansion of macro '__swab64'
    #define __cpu_to_be64(x) ((__force __be64)__swab64((x)))
                                              ^
   include/linux/byteorder/generic.h:91:21: note: in expansion of macro '__cpu_to_be64'
    #define cpu_to_be64 __cpu_to_be64
                        ^
   drivers/crypto/chelsio/chcr_algo.c:454:17: note: in expansion of macro 'cpu_to_be64'
     wreq->cookie = cpu_to_be64((u64)req);
                    ^
   drivers/crypto/chelsio/chcr_algo.c:454:29: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
     wreq->cookie = cpu_to_be64((u64)req);
                                ^
   include/uapi/linux/swab.h:29:12: note: in definition of macro '___constant_swab64'
     (((__u64)(x) & (__u64)0x00ff000000000000ULL) >> 40) | \
               ^
>> include/uapi/linux/byteorder/little_endian.h:36:43: note: in expansion of macro '__swab64'
    #define __cpu_to_be64(x) ((__force __be64)__swab64((x)))
                                              ^
   include/linux/byteorder/generic.h:91:21: note: in expansion of macro '__cpu_to_be64'
    #define cpu_to_be64 __cpu_to_be64
                        ^
   drivers/crypto/chelsio/chcr_algo.c:454:17: note: in expansion of macro 'cpu_to_be64'
     wreq->cookie = cpu_to_be64((u64)req);
                    ^
   drivers/crypto/chelsio/chcr_algo.c:454:29: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
     wreq->cookie = cpu_to_be64((u64)req);
                                ^
   include/uapi/linux/swab.h:30:12: note: in definition of macro '___constant_swab64'
     (((__u64)(x) & (__u64)0xff00000000000000ULL) >> 56)))
               ^
>> include/uapi/linux/byteorder/little_endian.h:36:43: note: in expansion of macro '__swab64'
    #define __cpu_to_be64(x) ((__force __be64)__swab64((x)))
                                              ^
   include/linux/byteorder/generic.h:91:21: note: in expansion of macro '__cpu_to_be64'
    #define cpu_to_be64 __cpu_to_be64
                        ^
   drivers/crypto/chelsio/chcr_algo.c:454:17: note: in expansion of macro 'cpu_to_be64'
     wreq->cookie = cpu_to_be64((u64)req);
                    ^
   drivers/crypto/chelsio/chcr_algo.c:454:29: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
     wreq->cookie = cpu_to_be64((u64)req);
                                ^
   include/uapi/linux/swab.h:131:12: note: in definition of macro '__swab64'
     __fswab64(x))
               ^
   include/linux/byteorder/generic.h:91:21: note: in expansion of macro '__cpu_to_be64'
    #define cpu_to_be64 __cpu_to_be64
                        ^
   drivers/crypto/chelsio/chcr_algo.c:454:17: note: in expansion of macro 'cpu_to_be64'
     wreq->cookie = cpu_to_be64((u64)req);
                    ^
   drivers/crypto/chelsio/chcr_algo.c: In function 'chcr_register_alg':
   drivers/crypto/chelsio/chcr_algo.c:1471:48: warning: operation on 'driver_algs[i].alg.hash.halg.base.cra_init' may be undefined [-Wsequence-point]
        driver_algs[i].alg.hash.halg.base.cra_init =
                                                   ^

vim +/__swab64 +36 include/uapi/linux/byteorder/little_endian.h

5921e6f8 David Howells  2012-10-13  20  #define __constant_cpu_to_le32(x) ((__force __le32)(__u32)(x))
5921e6f8 David Howells  2012-10-13  21  #define __constant_le32_to_cpu(x) ((__force __u32)(__le32)(x))
5921e6f8 David Howells  2012-10-13  22  #define __constant_cpu_to_le16(x) ((__force __le16)(__u16)(x))
5921e6f8 David Howells  2012-10-13  23  #define __constant_le16_to_cpu(x) ((__force __u16)(__le16)(x))
5921e6f8 David Howells  2012-10-13  24  #define __constant_cpu_to_be64(x) ((__force __be64)___constant_swab64((x)))
5921e6f8 David Howells  2012-10-13  25  #define __constant_be64_to_cpu(x) ___constant_swab64((__force __u64)(__be64)(x))
5921e6f8 David Howells  2012-10-13  26  #define __constant_cpu_to_be32(x) ((__force __be32)___constant_swab32((x)))
5921e6f8 David Howells  2012-10-13  27  #define __constant_be32_to_cpu(x) ___constant_swab32((__force __u32)(__be32)(x))
5921e6f8 David Howells  2012-10-13  28  #define __constant_cpu_to_be16(x) ((__force __be16)___constant_swab16((x)))
5921e6f8 David Howells  2012-10-13  29  #define __constant_be16_to_cpu(x) ___constant_swab16((__force __u16)(__be16)(x))
5921e6f8 David Howells  2012-10-13  30  #define __cpu_to_le64(x) ((__force __le64)(__u64)(x))
5921e6f8 David Howells  2012-10-13  31  #define __le64_to_cpu(x) ((__force __u64)(__le64)(x))
5921e6f8 David Howells  2012-10-13  32  #define __cpu_to_le32(x) ((__force __le32)(__u32)(x))
5921e6f8 David Howells  2012-10-13  33  #define __le32_to_cpu(x) ((__force __u32)(__le32)(x))
5921e6f8 David Howells  2012-10-13  34  #define __cpu_to_le16(x) ((__force __le16)(__u16)(x))
5921e6f8 David Howells  2012-10-13  35  #define __le16_to_cpu(x) ((__force __u16)(__le16)(x))
5921e6f8 David Howells  2012-10-13 @36  #define __cpu_to_be64(x) ((__force __be64)__swab64((x)))
5921e6f8 David Howells  2012-10-13  37  #define __be64_to_cpu(x) __swab64((__force __u64)(__be64)(x))
5921e6f8 David Howells  2012-10-13  38  #define __cpu_to_be32(x) ((__force __be32)__swab32((x)))
5921e6f8 David Howells  2012-10-13  39  #define __be32_to_cpu(x) __swab32((__force __u32)(__be32)(x))
5921e6f8 David Howells  2012-10-13  40  #define __cpu_to_be16(x) ((__force __be16)__swab16((x)))
5921e6f8 David Howells  2012-10-13  41  #define __be16_to_cpu(x) __swab16((__force __u16)(__be16)(x))
5921e6f8 David Howells  2012-10-13  42  
bc27fb68 Denys Vlasenko 2016-03-17  43  static __always_inline __le64 __cpu_to_le64p(const __u64 *p)
5921e6f8 David Howells  2012-10-13  44  {

:::::: The code at line 36 was first introduced by commit
:::::: 5921e6f8809b1616932ca4afd40fe449faa8fd88 UAPI: (Scripted) Disintegrate include/linux/byteorder

:::::: TO: David Howells <dhowells@redhat.com>
:::::: CC: David Howells <dhowells@redhat.com>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
Herbert Xu July 12, 2016, 8:44 a.m. UTC | #4
On Tue, Jul 12, 2016 at 03:30:41AM +0800, kbuild test robot wrote:
> Hi,
> 
> [auto build test WARNING on net-next/master]
> [also build test WARNING on v4.7-rc7 next-20160711]
> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

Yeshaswi, please fix these warnings/errors even though they're
compile-only.

Thanks,
diff mbox

Patch

diff --git a/drivers/crypto/Kconfig b/drivers/crypto/Kconfig
index d77ba2f..b44faf0 100644
--- a/drivers/crypto/Kconfig
+++ b/drivers/crypto/Kconfig
@@ -537,4 +537,6 @@  config CRYPTO_DEV_ROCKCHIP
 	  This driver interfaces with the hardware crypto accelerator.
 	  Supporting cbc/ecb chainmode, and aes/des/des3_ede cipher mode.
 
+source "drivers/crypto/chelsio/Kconfig"
+
 endif # CRYPTO_HW
diff --git a/drivers/crypto/Makefile b/drivers/crypto/Makefile
index 3c6432d..ad7250f 100644
--- a/drivers/crypto/Makefile
+++ b/drivers/crypto/Makefile
@@ -31,3 +31,4 @@  obj-$(CONFIG_CRYPTO_DEV_QCE) += qce/
 obj-$(CONFIG_CRYPTO_DEV_VMX) += vmx/
 obj-$(CONFIG_CRYPTO_DEV_SUN4I_SS) += sunxi-ss/
 obj-$(CONFIG_CRYPTO_DEV_ROCKCHIP) += rockchip/
+obj-$(CONFIG_CRYPTO_DEV_CHELSIO) += chelsio/