linux-acpi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Thomas Renninger <trenn@suse.de>
To: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Russ Dill <russ.dill@gmail.com>, linux-acpi@vger.kernel.org
Subject: Re: Attempting to patch DSDT to get HPET working
Date: Sun, 09 Sep 2007 19:07:05 +0200	[thread overview]
Message-ID: <1189357625.9141.8.camel@prodigy.site> (raw)
In-Reply-To: <200709081347.08174.bjorn.helgaas@hp.com>

On Sat, 2007-09-08 at 13:47 -0600, Bjorn Helgaas wrote:
> On Wednesday 29 August 2007 11:20:47 pm Russ Dill wrote:
> > I have an AMD SB460 southbridge (has HPET), but a BIOS with no HPET
> > support.
> > ...
> > I added this:
> > 
> > Device (HPET)
> > {
> >     Name (_HID, EisaId ("PNP0103"))
> >     Name (BUF0, ResourceTemplate ()
> >     {
> >         IRQNoFlags () {0}
> >         IRQNoFlags () {8}
> >         Memory32Fixed (ReadOnly, 0xFED00000, 0x00000400)
> >     })
> > 
> >     Method (_STA, 0, NotSerialized)
> >     {
> >          Return (0x0F)
> >     }
> > 
> >     Method (_CRS, 0, Serialized)
> >     {
> >         CreateDWordField (BUF0, 0x0A, HPT0)
> >         Store (0xFED01000, HPT0)
> >         Return (BUF0)
> >     }
> > }
> > 
> > ... I get the following message:
> > 
> > hpet_acpi_add: no address or irqs in _CRS
> > 
> > So, good news, drivers/char/hpet.c is finding my PNP0103 entry. Bad
> > news, its having a problem with the resources. Any clue why?
> 
> If you look at drivers/char/hpet.c:hpet_resources(), you'll see that
> it's fairly simple-minded.  In particular, hpet_acpi_add() requires
> both an address and an IRQ, but hpet_resources() only looks at
> ACPI_RESOURCE_TYPE_EXTENDED_IRQ items.
> 
> I'm not an AML expert, but my guess is that your AML generates a
> plain ACPI_RESOURCE_TYPE_IRQ, not an EXTENDED_IRQ item.  If you can
> write AML that generates an EXTENDED_IRQ item, I bet it will work.
> 
> This is a bug in the HPET driver.  I think the right way to fix it
> is to convert it from an ACPI driver to a PNP driver and let PNPACPI
> do the resource parsing.  That conversion is held up a bit right now
> because PNP doesn't support enough IRQ descriptors for many HPETs,
> but Thomas Renninger is working on the necessary PNP enhancements.

AFAIK AMD provides a separate HPET table normally and Intel makes use of
an HPET AML device (the later should work, also without PNPACPI, I never
looked at the code, but I bet Bjorn is right and there can be done some
cleanups).
Can you document this matter in a bugzilla.kernel.org entry (also attach
full acpidump output), add me to CC (or assign it to me) and ping me
again in some days if I do not answer.
Whether a separate HPET table is also provided can be checked with:
acpidump >acpidump
acpixtract -a acpidump   (with latest acpica/pmtools)

Thanks,

   Thomas


      reply	other threads:[~2007-09-09 17:07 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-30  5:20 Attempting to patch DSDT to get HPET working Russ Dill
2007-09-08 19:47 ` Bjorn Helgaas
2007-09-09 17:07   ` Thomas Renninger [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1189357625.9141.8.camel@prodigy.site \
    --to=trenn@suse.de \
    --cc=bjorn.helgaas@hp.com \
    --cc=linux-acpi@vger.kernel.org \
    --cc=russ.dill@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).