From owner-freebsd-hackers@freebsd.org Mon Aug 22 13:51:05 2016 Return-Path: Delivered-To: freebsd-hackers@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 836D8BC2698 for ; Mon, 22 Aug 2016 13:51:05 +0000 (UTC) (envelope-from karu.pruun@gmail.com) Received: from mail-ua0-x242.google.com (mail-ua0-x242.google.com [IPv6:2607:f8b0:400c:c08::242]) (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 3F87E1376 for ; Mon, 22 Aug 2016 13:51:05 +0000 (UTC) (envelope-from karu.pruun@gmail.com) Received: by mail-ua0-x242.google.com with SMTP id 74so10789202uau.3 for ; Mon, 22 Aug 2016 06:51:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:from:date:message-id:subject:to; bh=zaVc6HGZcJLWrDvCiXz4S8eZdWFPrFazcMIqJDAsT4Q=; b=X9U7cjDrkr7SSdxkEpGzEZaeUqG8FDqEQtZ/haYf22lAPaP5XkW33NCBdmvR1xgI9n bkEXfOWAeiglBgYurAgabFbpekfmibWj7UEPynFFZOVjcEqM9YpRiYOKLilUvJGutxpX 8GPolk3DxukcFPj7gwoCSjf0Gth8EYlSNTX9zvP3QVqW2jZKFtBW4gH0V+LnY01LmYLD nyc72+c0z8VwOMV3RPZ1c1FI6w+HGgyXheZivVOm4LbaQ/DO4/DZQcrKZmDLRaci77GG Bg0IHfy5wLQB3PsLzb1LRJPnumKNPn4IxIXhWOsNbMiiN7x4W+SK8q6ttx4fHn9vw11I UBqA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=zaVc6HGZcJLWrDvCiXz4S8eZdWFPrFazcMIqJDAsT4Q=; b=CSMIHamyaSrkSyKcQXrTg+G4PxOEmimXvfmGZ0MI3DO4L4EuRwQFpa6qmAZTbpVXh6 wIRUlDcHS4vxrKng/XG/QGA98HnB6w8dYasC0sk186le2oCm6Ko4znmRs0LCYpJixTjI WMkZQI3xevnhVnaljW+WEwjThpKjX504GWtvWLdKfrzjGL8BfBF+E5c8lwNq3WsTFmCL 4kScKOSR9TJoUYONiAa5GJWLp/4GhAd2GU4hyem7R2gFEJOqy69/gINyQFauQJBf/50V yBo5YLTW4nPZEpdBIO7FwcJVTinyAlMGjrwseER3Nhq7DvJ2LVBKcfa3f+xizVhU+8wV VV8Q== X-Gm-Message-State: AEkoouv348sIO2SYMV1fCBHmriSZon1K37QEyY0m7GyvCj0jLDUTquJ1xJdteztTprNHTsw9fM/xH0EeTgdRbg== X-Received: by 10.159.34.15 with SMTP id 15mr11490010uad.84.1471873864106; Mon, 22 Aug 2016 06:51:04 -0700 (PDT) MIME-Version: 1.0 Received: by 10.176.2.10 with HTTP; Mon, 22 Aug 2016 06:51:03 -0700 (PDT) From: "karu.pruun" Date: Mon, 22 Aug 2016 16:51:03 +0300 Message-ID: Subject: problem attaching driver at LPC bus To: freebsd-hackers@freebsd.org Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.22 X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 22 Aug 2016 13:51:05 -0000 Hello I am trying to write a small driver for a device (gmux) attached to the LPC bus, but am stuck with allocation of I/O ports. The device shows as follows: --- devinfo -rv | grep GMUX: unknown pnpinfo _HID=APP000B _UID=0 at handle=\_SB_.PCI0.LPCB.GMUX --- I took cue from sys/dev/acpica/acpi_ec.c. Probing works fine with ACPI_ID_PROBE in analogy to acpi_ec.c: --- --- sys/dev/acpica/acpi_ec.c: --- acpi_ec_probe(. . .) { . . . ACPI_ID_PROBE(device_get_parent(dev), dev, ec_ids) . . . } --- --- Then attach() calls bus_alloc_resource(): --- --- sys/dev/acpica/acpi_ec.c: --- acpi_ec_attach(. . .) { struct resource *res; . . . res = bus_alloc_resource_any(sc->ec_dev, SYS_RES_IOPORT, &sc->ec_data_rid, RF_ACTIVE); . . . } --- --- But this fails for my driver, res is always NULL. I looked up acpi tables (acpidump -td), the IO resources for GMUX are there: --- --- Scope (\_SB.PCI0.LPCB) { Device (GMUX) { Name (_HID, EisaId ("APP000B")) // _HID: Hardware ID Name (_CID, "gmux") // _CID: Compatible ID Name (_STA, 0x0B) // _STA: Status Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings { IO (Decode16, 0x0700, // Range Minimum 0x07FF, // Range Maximum 0x01, // Alignment 0xFF, // Length ) }) --- --- Could someone explain where I have gone wrong? Thank you Peeter --