Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp326189imm; Thu, 6 Sep 2018 03:08:31 -0700 (PDT) X-Google-Smtp-Source: ANB0Vdakfpg39sHOrb3C63WR4f7jLrztkYRFBSc22IVExhCDVMMLYIF+jESD2veDJ5BzooH2f5mO X-Received: by 2002:a62:9541:: with SMTP id p62-v6mr2071204pfd.194.1536228511906; Thu, 06 Sep 2018 03:08:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1536228511; cv=none; d=google.com; s=arc-20160816; b=0sfah1ItL6izNe7bbC47e9Qao3j/XLLAAJ/398A49KKdYLkEyoDkaZwXCVXb20T4dH dSlkzpXtud2SbyF7Ex2oMEnw/+qEbwwq17lcvNZcamvs3SwEKOcesf9bCpPAam3zbU79 CzehuQEWlpW+5Skv9JDsD63rs8W5GL8lCi2jQalToqc6K2n6ye9AIGQqGiXTole0IH9p 6elgImoPsccOr3jpdQAMG2+0s1ibRPK3oY+/tnsafU5VYMG3shL0Mx94fjZ/iLaRo0m6 0nX9iMVaAWxGmHYtXsKS/XBJiWkvBaRabvXljg6yLQeBRRsvp6yirAZhHSuw4IZVhBLU 0VFA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:to:from:cc:in-reply-to:subject:date:dkim-signature; bh=UdrJBcc/wDSrhbiignQWopErYZsyvodm6m2JMPXWPbI=; b=HbyQaDyW8RRhLBLMnUDa9TY1ZehnoyYOnhFMPUqjabk6YkzJHSI5GyjIt1mB6L7k/d U83PM51RSHHxglbGmV46YKlDslc8mFknux5TPmRLeSAsWRFyrLbO+g7ccriGIFjeEZeY NRFYX7RJSrkJyDn0paiLXV1SNbmnoqePuGfyWsS6Q9OkPANwThcT5NraT31rQ1XAJ09M 9GkcESy79IVtAOwHjkdKEbAscmvEFQpB+AOvi4j1kBvfNGa+Up32wBVqayAAlUNw47Kv sMEenInpPJztc850JdkhHzi8EQTl5kP6TEMmXOjAqgqetQg5eI85lO25ukWGwJHrghUr 15ew== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@sifive.com header.s=google header.b=J7zQK+bE; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id a24-v6si4698656pgh.357.2018.09.06.03.08.16; Thu, 06 Sep 2018 03:08:31 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@sifive.com header.s=google header.b=J7zQK+bE; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728466AbeIFOUW (ORCPT + 99 others); Thu, 6 Sep 2018 10:20:22 -0400 Received: from mail-wr1-f67.google.com ([209.85.221.67]:41695 "EHLO mail-wr1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726105AbeIFOTp (ORCPT ); Thu, 6 Sep 2018 10:19:45 -0400 Received: by mail-wr1-f67.google.com with SMTP id z96-v6so10638834wrb.8 for ; Thu, 06 Sep 2018 02:45:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; h=date:subject:in-reply-to:cc:from:to:message-id:mime-version :content-transfer-encoding; bh=UdrJBcc/wDSrhbiignQWopErYZsyvodm6m2JMPXWPbI=; b=J7zQK+bE8ubbfUNuknxE+FRucx66N2zgH0NHlf6G/yVVQ3skBUoykqnzHncBn/949G TXC88a5DnNTlt7RrOTRBdWwJnx6grMiU4QYut/oh2tuH00TT6tlojjw8jztKEoWX9jPI aP8REjOhp1hRFsEgnpGO6ieasfsPeAjnlm10SzbGgA/BlpacYq0CvWsZpdqV1S66fqI2 82AhSwlCZqDjk+gFmdAmhEUrMQCEj1V3Mn1gWME2w7MZkA9b5najPi6WyMLZAY9DMahM XiqqtmzI2qb5cgjF2n2Xocs1RvrOeAYr9ehVquRbFEOD5AJc8i554lDRt0NxI7e2ME9g l0Uw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:subject:in-reply-to:cc:from:to:message-id :mime-version:content-transfer-encoding; bh=UdrJBcc/wDSrhbiignQWopErYZsyvodm6m2JMPXWPbI=; b=oW2wKwj1TJGb8/lu4lRZPkBWvQbQPEU3daj2jyKTaj9dsyet75sPSLmqNg3EZDoTzs X1aTLSiZ6U9JjADHi+HXwQ94xsC+MogT27HU686P7OA4PPYzCO7Em7l0TEAnqnZD5VNZ SrQpu2W/BbrpMycm4qviMhPQ6IYd/615oB1zeqe4/NfxVQUTK8ZeV04T0ADEy7my86Hl 9pqp59Nk0Ogw9by9oAja4sMxhWbgXzOCnAxcrNLb2V8SSV9IK1wEvgFUaQO1jIkGlyw/ g/Zbx6w1zvL4fVViFC2s8aZVAXBGepRdrfsdJnQfLwzt9sPqkAHXFI8T3adicPYWLeJ9 +vpg== X-Gm-Message-State: APzg51Dx+weGimrI5MOgPh7XqM2pbGkBRKF+5iJdvzk89WNstx1o230/ QwMBaw4Ea9nlvfKby75BTLwSHodR0W0C1w== X-Received: by 2002:a5d:4e0a:: with SMTP id p10-v6mr1620054wrt.48.1536227105857; Thu, 06 Sep 2018 02:45:05 -0700 (PDT) Received: from localhost (smb-adpcdg1-01.hotspot.hub-one.net. [213.174.99.129]) by smtp.gmail.com with ESMTPSA id e133-v6sm8325240wma.33.2018.09.06.02.45.04 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 06 Sep 2018 02:45:04 -0700 (PDT) Date: Thu, 06 Sep 2018 02:45:04 -0700 (PDT) X-Google-Original-Date: Wed, 05 Sep 2018 19:10:17 PDT (-0700) Subject: Re: [PATCH v7 0/5] riscv: Add support to no-FPU systems In-Reply-To: <1535332075-5727-1-git-send-email-alankao@andestech.com> CC: linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org, albert@sifive.com, Christoph Hellwig , Andrew Waterman , Arnd Bergmann , Darius Rad , greentime@andestech.com, vincentc@andestech.com, zong@andestech.com, nickhu@andestech.com, alankao@andestech.com From: Palmer Dabbelt To: alankao@andestech.com Message-ID: Mime-Version: 1.0 (MHng) Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, 26 Aug 2018 18:07:50 PDT (-0700), alankao@andestech.com wrote: > This patchset adds an option, CONFIG_FPU, to enable/disable floating- > point procedures. > > Kernel's new behavior will be as follows: > > * with CONFIG_FPU=y > All FPU codes are reserved. If no FPU is found during booting, a > global flag will be set, and those functions will be bypassed with > condition check to that flag. > > * with CONFIG_FPU=n > No floating-point instructions in kernel and all related settings > are excluded. > > Changes in v7: > - Remove "fd" attribute from KBUILD_CFLAGS. > > Changes in v6 (PATCH 0005 only): > - Make the flag checking neater. > > Changes in v5: > - Invert the polarity of checking flag from no_fpu to has_fpu. > > Changes in v4: > - Append a new patch to detect existence of FPU and followups. > - Add SPDX header to newly created fpu.S. > - Fix a build error, sorry for that. > - Fix wording, style, etc. > > Changes in v3: > - Refactor the whole patch into independent ones. > > Changes in v2: > - Various code cleanups and style fixes. > > > Alan Kao (5): > Extract FPU context operations from entry.S > Refactor FPU code in signal setup/return procedures > Cleanup ISA string setting > Allow to disable FPU support > Auto-detect whether a FPU exists > > arch/riscv/Kconfig | 9 +++ > arch/riscv/Makefile | 19 +++--- > arch/riscv/include/asm/switch_to.h | 12 +++- > arch/riscv/kernel/Makefile | 1 + > arch/riscv/kernel/cpufeature.c | 8 +++ > arch/riscv/kernel/entry.S | 87 ----------------------- > arch/riscv/kernel/fpu.S | 106 +++++++++++++++++++++++++++++ > arch/riscv/kernel/process.c | 6 +- > arch/riscv/kernel/signal.c | 75 ++++++++++++-------- > 9 files changed, 196 insertions(+), 127 deletions(-) > create mode 100644 arch/riscv/kernel/fpu.S Thanks! I'll add this to our for-next branch.