From owner-svn-src-head@freebsd.org Tue May 10 16:39:53 2016 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6FEE3B36A1D; Tue, 10 May 2016 16:39:53 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: from mail-oi0-f42.google.com (mail-oi0-f42.google.com [209.85.218.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 411FE1704; Tue, 10 May 2016 16:39:52 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: by mail-oi0-f42.google.com with SMTP id x201so24819674oif.3; Tue, 10 May 2016 09:39:52 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:reply-to:in-reply-to:references :date:message-id:subject:from:to:cc; bh=D3WMfQqb+xj09KFrB2iMdnaDfzEolrfBfVBFRkQoe4w=; b=E9HiZLRpd1zK4h4Rptzsj1vPz8980kI/yNOultsGBT0g/W57ode3ElAZIOoFPZaHBg S5x8XkrvoFXxZXymxG9NjtSAOkTlH0UscJjdInZAqb1PBWQqSkRWJvU904UyBLTJnP4D YQ/+00ZRQ5bf2YFOx/baqBVvM0StLy+6EZ3LsLRN9ekeLZ9RCNdvjP/t715UJVdcji3y 90TfghMix2WlZbf7RcImbDRygwTDvFr70UWZUbX5olNam7NymVFCFKZqjLs6Ku5M/FWB iA+ZhpCxq8RttqOZQTKOBMYwJumita/o4jA22JDqdyJdw0U8STxmrca9ZidtfkJePr22 jWww== X-Gm-Message-State: AOPr4FV6i1KyfOknV853P3do0dbm/NAgyccbYlMq4SokWhGD7SJDuqElM0PtPt79kR6DAA== X-Received: by 10.157.14.166 with SMTP id 35mr2968102otj.158.1462891781179; Tue, 10 May 2016 07:49:41 -0700 (PDT) Received: from mail-oi0-f48.google.com (mail-oi0-f48.google.com. [209.85.218.48]) by smtp.gmail.com with ESMTPSA id 10sm622957oes.17.2016.05.10.07.49.40 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 10 May 2016 07:49:41 -0700 (PDT) Received: by mail-oi0-f48.google.com with SMTP id x201so19156279oif.3; Tue, 10 May 2016 07:49:40 -0700 (PDT) MIME-Version: 1.0 X-Received: by 10.202.240.68 with SMTP id o65mr18229239oih.0.1462891780413; Tue, 10 May 2016 07:49:40 -0700 (PDT) Reply-To: cem@FreeBSD.org Received: by 10.157.6.111 with HTTP; Tue, 10 May 2016 07:49:40 -0700 (PDT) In-Reply-To: <201605101204.u4AC4vhR007264@repo.freebsd.org> References: <201605101204.u4AC4vhR007264@repo.freebsd.org> Date: Tue, 10 May 2016 07:49:40 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r299364 - head/sys/compat/linuxkpi/common/include/linux From: Conrad Meyer To: Hans Petter Selasky , Matthew Macy Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 May 2016 16:39:53 -0000 On Tue, May 10, 2016 at 5:04 AM, Hans Petter Selasky wrote: > Author: hselasky > Date: Tue May 10 12:04:57 2016 > New Revision: 299364 > URL: https://svnweb.freebsd.org/changeset/base/299364 > > Log: > Add more LinuxKPI I/O functions. > > Obtained from: kmacy @ > ... > @@ -166,5 +212,35 @@ __iowrite64_copy(void *to, void *from, s > #endif > } > > +enum { > + MEMREMAP_WB = 1 << 0, > + MEMREMAP_WT = 1 << 1, > + MEMREMAP_WC = 1 << 2, > +}; > + > +static inline void * > +memremap(resource_size_t offset, size_t size, unsigned long flags) > +{ > + void *addr = NULL; > + > + if ((flags & MEMREMAP_WB) && > + (addr = ioremap_wb(offset, size)) != NULL) > + goto done; > + if ((flags & MEMREMAP_WT) && > + (addr = ioremap_nocache(offset, size)) != NULL) > + goto done; x86 can actually map memory as WT rather than UC. Why throw that away? > + if ((flags & MEMREMAP_WC) && > + (addr = ioremap_wc(offset, size)) != NULL) > + goto done; > +done: > + return (addr); > +} > + > ... Best, Conrad