From patchwork Thu Nov 8 12:24:11 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baruch Siach X-Patchwork-Id: 994846 X-Patchwork-Delegate: trini@ti.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=tkos.co.il Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 42rN0F3FCBz9sBZ for ; Thu, 8 Nov 2018 23:30:05 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id CF370C21F76; Thu, 8 Nov 2018 12:29:59 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=RCVD_IN_DNSWL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 2FC16C21F67; Thu, 8 Nov 2018 12:29:57 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 7D67CC21F67; Thu, 8 Nov 2018 12:29:56 +0000 (UTC) Received: from mx.tkos.co.il (guitar.tcltek.co.il [192.115.133.116]) by lists.denx.de (Postfix) with ESMTPS id 1C2DEC21F62 for ; Thu, 8 Nov 2018 12:29:56 +0000 (UTC) Received: from tarshish.tkos.co.il (unknown [10.0.8.6]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mx.tkos.co.il (Postfix) with ESMTPS id 22A23440439; Thu, 8 Nov 2018 14:29:55 +0200 (IST) From: Baruch Siach To: u-boot@lists.denx.de, Prafulla Wadaskar , Luka Perkov , Stefan Roese , Tom Rini Date: Thu, 8 Nov 2018 14:24:11 +0200 Message-Id: X-Mailer: git-send-email 2.19.1 In-Reply-To: <4b00f055ace55c74d3a655ef240fd5659ab410f7.1541679854.git.baruch@tkos.co.il> References: <4b00f055ace55c74d3a655ef240fd5659ab410f7.1541679854.git.baruch@tkos.co.il> MIME-Version: 1.0 Cc: Baruch Siach , Ori Shemtov , Rabeeh Khoury Subject: [U-Boot] [PATCH v3 2/5] linux/const.h: import from kernel X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Combine the uapi/linux/const.h header into the kernel linux/const.h. The next commit will use the _AC macro this header instead of the common.h definition. Signed-off-by: Baruch Siach --- v3: New patch in this series --- include/linux/const.h | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 include/linux/const.h diff --git a/include/linux/const.h b/include/linux/const.h new file mode 100644 index 000000000000..379c88923269 --- /dev/null +++ b/include/linux/const.h @@ -0,0 +1,34 @@ +/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ +#ifndef _LINUX_CONST_H +#define _LINUX_CONST_H + +/* const.h: Macros for dealing with constants. */ + +/* Some constant macros are used in both assembler and + * C code. Therefore we cannot annotate them always with + * 'UL' and other type specifiers unilaterally. We + * use the following macros to deal with this. + * + * Similarly, _AT() will cast an expression with a type in C, but + * leave it unchanged in asm. + */ + +#ifdef __ASSEMBLY__ +#define _AC(X,Y) X +#define _AT(T,X) X +#else +#define __AC(X,Y) (X##Y) +#define _AC(X,Y) __AC(X,Y) +#define _AT(T,X) ((T)(X)) +#endif + +#define _UL(x) (_AC(x, UL)) +#define _ULL(x) (_AC(x, ULL)) + +#define _BITUL(x) (_UL(1) << (x)) +#define _BITULL(x) (_ULL(1) << (x)) + +#define UL(x) (_UL(x)) +#define ULL(x) (_ULL(x)) + +#endif /* _LINUX_CONST_H */