Received: by 2002:a05:6a11:4021:0:0:0:0 with SMTP id ky33csp250954pxb; Wed, 15 Sep 2021 00:51:57 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxRhQLFLe8KJYVacjwfOq6d5/mBU+26G5uDyLJYhZ+iJ8mI9AakySb4Fp2aaWUwVEZMaJRX X-Received: by 2002:a5e:8e04:: with SMTP id a4mr17213717ion.56.1631692317301; Wed, 15 Sep 2021 00:51:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1631692317; cv=none; d=google.com; s=arc-20160816; b=lq9+V3JR7H8pOc8NzoORG3rgGoqHL4PhRI38s7vsbqApy0SjuP3jbyDaR15LsssxTV 0bmZcnnIWx93RCz1UFYzKMqGAelniYjTIM6uCBWCDQpuHoNEHOkOX875Bf87GQ6/kk/I kggcltuGit/BpCyyB9xqwayIXwcj9lEG8JYTWgQsnI0843eMieSSVaIYgflBBO/0xE4J KcvEmOmen+9tybEelkdA/JIbi2IxlGrFHyFHRr5MW8UZSbYDmcd3/XYZn4Y+/irexZe6 OLxQ5Gaug8WPunmUNZfR9Q5CTtELso3uCrYIyFT/B1IuqFGohfw/P+qO5xbF6cSZTMXH pp8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date; bh=4675qJauTjB97sYhmspMWNjpXQER130L4xr4GvAdnQQ=; b=WgoM1jIva+2T3HZGKWjkrV2UVJjG0HsXgusYAERapJ1nB8dJtoU5zBZGVfhnHcotjL 3buMbf2gsCLCxAI6X099TW0KOkBREo4uK66SWPwswK7aKCX6Kpa2UxaASONfWOTgVJ6m VBEeSGKkQjU5AIzQoqMWa+k1Zeaxime4+CU2xZV0TP5d8ZE+G7/0ufi2IoUYOdL1Xv8M ncyfn6YWsfZNNPySJU9EebbsyJwLT1KN8ffhQIIavWOo4bqlQKJmSz7zr88LLJ368Dun 0+YNS0dh3rlSZvDXI1M8ZTUz69aJiDe67yP8NTAbUK0nhIIhorZLXX2K9ArJcG1LJ6He Bkww== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id j18si12866998ilc.159.2021.09.15.00.51.45; Wed, 15 Sep 2021 00:51:57 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236699AbhIOHv2 (ORCPT + 99 others); Wed, 15 Sep 2021 03:51:28 -0400 Received: from verein.lst.de ([213.95.11.211]:35297 "EHLO verein.lst.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236514AbhIOHv1 (ORCPT ); Wed, 15 Sep 2021 03:51:27 -0400 Received: by verein.lst.de (Postfix, from userid 2407) id 7C4AC68B05; Wed, 15 Sep 2021 09:50:07 +0200 (CEST) Date: Wed, 15 Sep 2021 09:50:07 +0200 From: Christoph Hellwig To: guoren@kernel.org Cc: anup.patel@wdc.com, atish.patra@wdc.com, palmerdabbelt@google.com, christoph.muellner@vrull.eu, philipp.tomsich@vrull.eu, hch@lst.de, liush@allwinnertech.com, wefu@redhat.com, lazyparser@gmail.com, drew@beagleboard.org, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, taiten.peng@canonical.com, aniket.ponkshe@canonical.com, heinrich.schuchardt@canonical.com, gordan.markus@canonical.com Subject: Re: [RFC PATCH V4 4/6] RISC-V: Implement arch_sync_dma* functions Message-ID: <20210915075007.GD20024@lst.de> References: <20210911092139.79607-1-guoren@kernel.org> <20210911092139.79607-5-guoren@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20210911092139.79607-5-guoren@kernel.org> User-Agent: Mutt/1.5.17 (2007-11-01) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Sep 11, 2021 at 05:21:37PM +0800, guoren@kernel.org wrote: > +static void __dma_sync(phys_addr_t paddr, size_t size, enum dma_data_direction dir) > +{ > + if ((dir == DMA_FROM_DEVICE) && (dma_cache_sync->cache_invalidate)) > + dma_cache_sync->cache_invalidate(paddr, size); > + else if ((dir == DMA_TO_DEVICE) && (dma_cache_sync->cache_clean)) > + dma_cache_sync->cache_clean(paddr, size); > + else if ((dir == DMA_BIDIRECTIONAL) && dma_cache_sync->cache_flush) > + dma_cache_sync->cache_flush(paddr, size); > +} Despite various snipplets this is a still pretty much the broken previous versions. These need to use the CMO instructions directly which are about to go into review, and then your SBI can trap on those can call whatever non-standard mess you're using.