From owner-svn-src-all@freebsd.org Mon Dec 7 10:51:20 2020 Return-Path: Delivered-To: svn-src-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7ADC147E582; Mon, 7 Dec 2020 10:51:20 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4CqKqX37tlz4dWm; Mon, 7 Dec 2020 10:51:20 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 5EF1B20B75; Mon, 7 Dec 2020 10:51:20 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 0B7ApK88093018; Mon, 7 Dec 2020 10:51:20 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 0B7ApKfA093016; Mon, 7 Dec 2020 10:51:20 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <202012071051.0B7ApKfA093016@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Mon, 7 Dec 2020 10:51:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r368408 - head/stand/kshim X-SVN-Group: head X-SVN-Commit-Author: hselasky X-SVN-Commit-Paths: head/stand/kshim X-SVN-Commit-Revision: 368408 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Dec 2020 10:51:20 -0000 Author: hselasky Date: Mon Dec 7 10:51:19 2020 New Revision: 368408 URL: https://svnweb.freebsd.org/changeset/base/368408 Log: Add missing busdma prototypes for load and unload and implement dummy sync function for kernel bootloader shim code. MFC after: 1 week Sponsored by: Mellanox Technologies // NVIDIA Networking Modified: head/stand/kshim/bsd_kernel.c head/stand/kshim/bsd_kernel.h Modified: head/stand/kshim/bsd_kernel.c ============================================================================== --- head/stand/kshim/bsd_kernel.c Mon Dec 7 10:21:01 2020 (r368407) +++ head/stand/kshim/bsd_kernel.c Mon Dec 7 10:51:19 2020 (r368408) @@ -92,6 +92,13 @@ bus_dmamap_load(bus_dma_tag_t dmat, bus_dmamap_t map, } void +bus_dmamap_sync(bus_dma_tag_t dmat, bus_dmamap_t map, int flags) +{ + /* Assuming coherent memory */ + __asm__ __volatile__("": : :"memory"); +} + +void bus_dmamem_free(bus_dma_tag_t dmat, void *vaddr, bus_dmamap_t map) { Modified: head/stand/kshim/bsd_kernel.h ============================================================================== --- head/stand/kshim/bsd_kernel.h Mon Dec 7 10:21:01 2020 (r368407) +++ head/stand/kshim/bsd_kernel.h Mon Dec 7 10:51:19 2020 (r368408) @@ -669,6 +669,11 @@ extern int delay(unsigned int); #define BUS_DMA_BUS3 0x40 #define BUS_DMA_BUS4 0x80 +#define BUS_DMASYNC_PREREAD 0x01 +#define BUS_DMASYNC_POSTREAD 0x02 +#define BUS_DMASYNC_PREWRITE 0x04 +#define BUS_DMASYNC_POSTWRITE 0x08 + typedef void bus_dmamap_callback_t(void *, bus_dma_segment_t *, int, int); int @@ -679,9 +684,14 @@ bus_dma_tag_create(bus_dma_tag_t parent, bus_size_t al bus_size_t maxsegsz, int flags, bus_dma_lock_t *lockfunc, void *lockfuncarg, bus_dma_tag_t *dmat); -int bus_dmamem_alloc(bus_dma_tag_t dmat, void** vaddr, int flags, - bus_dmamap_t *mapp); -void bus_dmamem_free(bus_dma_tag_t dmat, void *vaddr, bus_dmamap_t map); -int bus_dma_tag_destroy(bus_dma_tag_t dmat); +int bus_dmamem_alloc(bus_dma_tag_t, void** vaddr, int flags, bus_dmamap_t *); +void bus_dmamem_free(bus_dma_tag_t, void *vaddr, bus_dmamap_t); +int bus_dma_tag_destroy(bus_dma_tag_t); + +int bus_dmamap_load(bus_dma_tag_t, bus_dmamap_t, void *buf, + bus_size_t buflen, bus_dmamap_callback_t *, + void *callback_arg, int flags); +void bus_dmamap_unload(bus_dma_tag_t, bus_dmamap_t); +void bus_dmamap_sync(bus_dma_tag_t dmat, bus_dmamap_t map, int flags); #endif /* _BSD_KERNEL_H_ */