From owner-freebsd-current@freebsd.org Mon Jun 13 18:25:14 2016 Return-Path: Delivered-To: freebsd-current@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 A40AAAF2FB8 for ; Mon, 13 Jun 2016 18:25:14 +0000 (UTC) (envelope-from johannes@brilliantservice.co.jp) Received: from mail-vk0-x235.google.com (mail-vk0-x235.google.com [IPv6:2607:f8b0:400c:c05::235]) (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 579092998 for ; Mon, 13 Jun 2016 18:25:13 +0000 (UTC) (envelope-from johannes@brilliantservice.co.jp) Received: by mail-vk0-x235.google.com with SMTP id d185so66062940vkg.0 for ; Mon, 13 Jun 2016 11:25:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brilliantservice-co-jp.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=z6Zn0sfNJ8bjz02g80fn/uD5Q/evKc3iE33a5R9LaDQ=; b=nuBU/QqVLINUu7D8k/gAw2+V6g8AUyD66YixzNg4eHqCiSywbRN5HaIRtIXhDK7uru BWGqnENZWQUlA7I+qElxR++mtwgkMvjbOWaB066V+tWUKyAqSSoVA8V4p6MHyR2Y1eH5 1X/aX8zY/xevkQA8Jyo7Icx5W6pkBXnSwaFB4PR6I2ICal+AaWjDyHPG7O+OW1e6DG2N jJ18AgU/dJmCRtzCAHKzBZEH47X4vZFoio2oweDoqmMibrjxJBhot7UMMtcuqznqO640 S74zmj0SLEaUTUcdCm2kysPH1Qnvr/usD9pST669Rtv8G2S5TGB1a9dN/e/sYEeLYUTG 8UCQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=z6Zn0sfNJ8bjz02g80fn/uD5Q/evKc3iE33a5R9LaDQ=; b=VuWd7/wjfSGKqtX4aEHnmH5FNc2lB6qeFsTucegeE1P3hu/f2ZjfPx+wfjMCbTsvNq 652uJsSd0SH6gCtG1v6g+zZkiuOGJRT1DTOeT2X2Q7e2jgDneo/Z2n0FRd/As1bfVtX9 KWvh5nEW7lLsot00TizHlsO4+yCuYNyFNtM/2JbFI1w035jD0GouhzsJlC6T72+gk1Jm lc9z4TdjJ2292CVxTvhi/9HPa5dfY1++ortCGtYuuGfDkCdIbnSPulVSUznl+2fN+cxA RwGVNO4IAq8zbLpzmj2Q9/06TGOanvkwlsjxkRwHAYbF89U/82XlV8Cl2XROY7W+5frV QCSA== X-Gm-Message-State: ALyK8tIOs9MGa2m2OZP9sO7SGc9Jvftj6MGodd4XRt5heyZTxy2FQcoLTgzGxmgc3dwSMFs3TKjBsBnff6FxUN8BcHv1+4OZd52EDE0WeESfAv2mmThu3D5wUp4hMt+rAyx6z1CRve7niVTFgGjr7hGXvH8= X-Received: by 10.31.206.4 with SMTP id e4mr5388051vkg.130.1465842312802; Mon, 13 Jun 2016 11:25:12 -0700 (PDT) MIME-Version: 1.0 Received: by 10.159.40.33 with HTTP; Mon, 13 Jun 2016 11:24:58 -0700 (PDT) In-Reply-To: <20160613093857.GA157051@polaris.intra.vdsz.de> References: <20160613093857.GA157051@polaris.intra.vdsz.de> From: "Lundberg, Johannes" Date: Mon, 13 Jun 2016 11:24:58 -0700 Message-ID: Subject: Re: GPIO driver for Intel Atom SoC To: Imre Vadasz Cc: FreeBSD Current , Lundberg@polaris.intra.vdsz.de Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.22 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Jun 2016 18:25:14 -0000 Hi Imre This is great information. Thank you! My device have an emmc chip on the pcb (non-removable). Have you tested you code on that kind of system? Current unmodified FreeBSD can detect the sdhci_pci controller and a mmc card on slot0 but timeouts when trying to init the mmc. Not sure why it is failing. I assumed it needed activating through some gpios but maybe it's not that easy.. On Mon, Jun 13, 2016 at 2:38 AM, Imre Vadasz wrote: > Hi, > > Microsoft has some documentation on GPIO handling with SD card controller= s, > which should apply to most Cherryview devices: > > https://msdn.microsoft.com/windows/hardware/drivers/bringup/other-acpi-na= mespace-objects#sd > > I did some work on Cherryview SoC support in DragonFlyBSD. > In DragonFly master, there is a simple GPIO driver for cherryview in > /sys/bus/gpio/gpio_intel. In master, it's currently only used for > handling the ACPI GeneralPurposeIo operation regions, and > Acpi-Event-Interrupts (which replace GPE interrupts on reduced-hardware > platforms). > > I have some further (more prototype level) code which also contains some > code for Intel sdhci controller integration: > > https://gitweb.dragonflybsd.org/~ivadasz/dragonfly.git/shortlog/refs/head= s/cherryview > > With this branch everything sdcard/eMMC related works quite nicely, e.g. > it properly handles plugging in/out the sd-card on my HP X2 210 detachabl= e > on DragonFlyBSD. > > To handle everything properly this contains a bit of work on mostly ACPI > related stuff: > > ACPI device initialization order needs to be according to the ACPI _DEP > methods: > > https://gitweb.dragonflybsd.org/~ivadasz/dragonfly.git/commitdiff/25dec08= cafa3ce9089eb5b216700f4e678b3356d > > We need to map ACPI nodes to the device objects (and at least track a > reference count for debugging): > > https://gitweb.dragonflybsd.org/~ivadasz/dragonfly.git/commitdiff/2313559= 0ffb33b40f170c786ea95fc133358ebdb > > Then some kind of API is needed for handling the GeneralPurposeIo resourc= es > declared for the device in the ACPI tables (e.g. the sdhci controller). > (i.e. some way of attempting to "map" the resource from the device driver= ): > > https://gitweb.dragonflybsd.org/~ivadasz/dragonfly.git/commitdiff/d5b3d34= 47bbdd42a68359aebd61f271bfa830951 > > And I have a prototype of adapting the sdhci driver to handle the GPIO > ACPI resources, as described in " > https://msdn.microsoft.com/windows/hardware/drivers/bringup/other-acpi-na= mespace-objects#sd > ": > > https://gitweb.dragonflybsd.org/~ivadasz/dragonfly.git/commitdiff/5d2844c= 280211cbb256a5ecc3ea27f952149e452 > > Regards, > Imre Vad=C3=A1sz > --=20 =3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D= -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- =E7=A7=98=E5=AF=86=E4=BF=9D=E6=8C=81=E3=81=AB=E3=81=A4=E3=81=84=E3=81=A6=EF= =BC=9A=E3=81=93=E3=81=AE=E9=9B=BB=E5=AD=90=E3=83=A1=E3=83=BC=E3=83=AB=E3=81= =AF=E3=80=81=E5=90=8D=E5=AE=9B=E4=BA=BA=E3=81=AB=E9=80=81=E4=BF=A1=E3=81=97= =E3=81=9F=E3=82=82=E3=81=AE=E3=81=A7=E3=81=82=E3=82=8A=E3=80=81=E7=A7=98=E5= =8C=BF=E7=89=B9=E6=A8=A9=E3=81=AE=E5=AF=BE=E8=B1=A1=E3=81=A8=E3=81=AA=E3=82= =8B=E6=83=85=E5=A0=B1=E3=82=92=E5=90=AB=E3=82=93=E3=81=A7=E3=81=84=E3=81=BE= =E3=81=99=E3=80=82 =E3=82=82=E3=81=97=E3=80=81=E5=90=8D=E5=AE=9B=E4=BA=BA=E4=BB=A5=E5=A4=96=E3= =81=AE=E6=96=B9=E3=81=8C=E5=8F=97=E4=BF=A1=E3=81=95=E3=82=8C=E3=81=9F=E5=A0= =B4=E5=90=88=E3=80=81=E3=81=93=E3=81=AE=E3=83=A1=E3=83=BC=E3=83=AB=E3=81=AE= =E7=A0=B4=E6=A3=84=E3=80=81=E3=81=8A=E3=82=88=E3=81=B3=E3=81=93=E3=81=AE=E3= =83=A1=E3=83=BC=E3=83=AB=E3=81=AB=E9=96=A2=E3=81=99=E3=82=8B=E4=B8=80=E5=88= =87=E3=81=AE=E9=96=8B=E7=A4=BA=E3=80=81 =E8=A4=87=E5=86=99=E3=80=81=E9=85=8D=E5=B8=83=E3=80=81=E3=81=9D=E3=81=AE=E4= =BB=96=E3=81=AE=E5=88=A9=E7=94=A8=E3=80=81=E3=81=BE=E3=81=9F=E3=81=AF=E8=A8= =98=E8=BC=89=E5=86=85=E5=AE=B9=E3=81=AB=E5=9F=BA=E3=81=A5=E3=81=8F=E3=81=84= =E3=81=8B=E3=81=AA=E3=82=8B=E8=A1=8C=E5=8B=95=E3=82=82=E3=81=95=E3=82=8C=E3= =81=AA=E3=81=84=E3=82=88=E3=81=86=E3=81=8A=E9=A1=98=E3=81=84=E7=94=B3=E3=81= =97=E4=B8=8A=E3=81=92=E3=81=BE=E3=81=99=E3=80=82 --- CONFIDENTIALITY NOTE: The information in this email is confidential and intended solely for the addressee. Disclosure, copying, distribution or any other action of use of this email by person other than intended recipient, is prohibited. If you are not the intended recipient and have received this email in error, please destroy the original message.