From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B36A0C07E96 for ; Tue, 6 Jul 2021 12:59:44 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 8C48761A46 for ; Tue, 6 Jul 2021 12:59:44 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231895AbhGFNCV (ORCPT ); Tue, 6 Jul 2021 09:02:21 -0400 Received: from mout.kundenserver.de ([217.72.192.74]:36915 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231960AbhGFNCT (ORCPT ); Tue, 6 Jul 2021 09:02:19 -0400 Received: from mail-wr1-f49.google.com ([209.85.221.49]) by mrelayeu.kundenserver.de (mreue108 [213.165.67.113]) with ESMTPSA (Nemesis) id 1M1YpJ-1m3mXh2ArT-0032dq for ; Tue, 06 Jul 2021 14:59:38 +0200 Received: by mail-wr1-f49.google.com with SMTP id t15so22622892wry.11 for ; Tue, 06 Jul 2021 05:59:38 -0700 (PDT) X-Gm-Message-State: AOAM5320jCXbwKodJyK6WlrlgdSQRxecrKPzwpnkkwJH8y16ZR2TG4Qf c1OUml+SczUO64d2isBzfwaE9uZqtBneviP2p7Q= X-Google-Smtp-Source: ABdhPJxzjDAAnw+w5vV3zC/gA7SFoPpwwlaMExT6OQvnYM3y3QZK/zELczlijXF40jjM1asj/U9nCTr3YFgcgjZIA4Q= X-Received: by 2002:a5d:448c:: with SMTP id j12mr22616146wrq.105.1625576378223; Tue, 06 Jul 2021 05:59:38 -0700 (PDT) MIME-Version: 1.0 References: <20210706041820.1536502-1-chenhuacai@loongson.cn> <20210706041820.1536502-5-chenhuacai@loongson.cn> In-Reply-To: From: Arnd Bergmann Date: Tue, 6 Jul 2021 14:59:22 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH 04/19] LoongArch: Add common headers To: Peter Zijlstra Cc: Huacai Chen , Andy Lutomirski , Thomas Gleixner , Andrew Morton , David Airlie , Linus Torvalds , linux-arch , Xuefeng Li , Huacai Chen , Jiaxun Yang Content-Type: text/plain; charset="UTF-8" X-Provags-ID: V03:K1:O8Aq+mJfq1gp/rVnFzYXjlL569NAw8lWYDcQbF2744BdaDS3aV4 4E5MBge9a1Y8Fr0iCbnfVHgCRGbhfvghSN7zDyG25V8C8W7POUamLP9TYI1ZclkvqJGWkYg Zzts6fOYZH5nInWsbHmooCsyhEeS+k6aZ6CyGyjo+jdxuYIChiA8zvHs2XmXsKcZY3WtATj ByL8hiqlOfg48NxcInrwg== X-UI-Out-Filterresults: notjunk:1;V03:K0:yFwEOSt+x1Q=:j9osSiTux/pXOLfH4rbr/q BCcJGhS/VU1/2p4xDr9HnN+COYUFmeQYiUD7abPhEp8M0G/PXlKroh4ARuDc6k3x4VDqpQMdz cYL1u8QLbo68ssOeQV6JCgYbce0IwiaCuiE9PIGsf1U1eniQZksyn5WbDPOauDPJUNWKpJ3BZ A/hcO0P2lnW0QqOr2zBxW6r0jnkZExmb1K11MPSMaP5gyjbbEuj1YLphSYCGSsYSJLwBre0Yf 4hnsgsJGlrpxuKyxXPMkV68VPosQZtKiXoxKgX3jIbY4ZbyaSmAkQbHO/brMIQDV4UYl/62YY b+WpqYXSt543SKPYFDVe66s1RYARb+dKEGKjnsrLWwnB5NKOqkmE/xTSc0liigouRwVMthe+x ZTf6UxddEKekas4dRgRVo0uLFan3m0CbUalhe6Ij19Bk0sinNoCLyODfqNeDLeOuyg3FnCEEI y62mDWi/ulyxyBS62o+9Zyga2hVzIvM7wPkdyaU+VeMcmsAnN2v8T0zIr7ECFaU8T+dUFCD9z 9dn/zx55jRYRzfMPs2wfcVsb4aIK1czVja33NpvWDCehe2dY8fbyYnlL8EQ+qE1qBWQCnagoC OEENGiSB7UFwHAykccY3Zw5fsMQhzSNpu6uudHS7LXS6eA2gM8+SHOFQ7EVXFsZFWdLT4/4Mt XUFGdBDKQs0t5df8pS5t9cE8fr1hV4ahU9ONTFtn1ffG6YkydT4uxl5/I7JsJ1yf3vlwYsuvf QWJ/YyGf+uEn815oF2l7XhyfEdoxyg6dPDYPVBCTEDwOQfHa0icaup3RyYdjOVeNZVuhTiVlI Tgb6V2Asar+67zp3FYlqVuOnjCHD1aJQHt9dN3lzVGj6DNZ/k6B7dYidpxVt9ebdKJ6p7m7Hp TzQGHhj4QaKH28dejKiVNq5M0ChO5aSBbroRPUOA1u83cPB6wjPAaGAz2u+5pJ0j7tL+CBKRa zfBgF32t5SKYpu5OO5kMAruVwmJ4PS7fBNZEueoDYBm/1m+thWBmN Precedence: bulk List-ID: X-Mailing-List: linux-arch@vger.kernel.org On Tue, Jul 6, 2021 at 1:23 PM Peter Zijlstra wrote: > > On Tue, Jul 06, 2021 at 12:18:05PM +0800, Huacai Chen wrote: > > + > > +static inline u32 csr_xchgl(u32 val, u32 mask, u32 reg) > > +{ > > + return __csrxchg(val, mask, reg); > > +} > > + > > +static inline u64 csr_xchgq(u64 val, u64 mask, u32 reg) > > +{ > > + return __dcsrxchg(val, mask, reg); > > +} > > What are these __csrfoo() things, I cannot seem to find a definition of > them anywhere.. It seems that those are provided as compiler intrinsics in , based on an architecture specific __builtin_loongarch_csrxchg() etc. The specific registers are documented at https://loongson.github.io/LoongArch-Documentation/LoongArch-Vol1-EN#control-and-status-registers Arnd