Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1681682

Re: [PATCH linux dev-4.10] drivers/misc: (aspeed-lpc-snoop): Add ast2400 to compat

From Patrick Venture <venture@google.com>
Newsgroups linux.kernel
Subject Re: [PATCH linux dev-4.10] drivers/misc: (aspeed-lpc-snoop): Add ast2400 to compat
Date 2017-07-05 19:50 +0200
Message-ID <tZWB4-Ve-11@gated-at.bofh.it> (permalink)
References <tZyfo-1QF-7@gated-at.bofh.it> <tZWro-Q4-11@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Wed, Jul 5, 2017 at 10:33 AM, Rob Lippert <roblip@gmail.com> wrote:
> I checked the datasheets when I wrote this and ast2400 does not have
> the (undocumented) HICRB register bits 14,15 that enables the BMC to
> actually respond to the snoop'ed address.

You're right, it is marked as "reserved" in the datasheet for the ast2400.

>
> Without setting that bit in the ast2500 the transactions to that I/O
> port would timeout on the host side (although the BMC snoop logic
> would still see it and log it).
> Probably not an issue for x86 systems that don't have any LPC I/O
> error handling anyways but LPC timeouts causes issues with POWER
> systems since it sets a hardware FIR bit which can cause boot
> failures.

Interesting.  I've been running experiments on x86 and I haven't seen
any errors, so that adds more credence to your point.  If a device
doesn't respond within X time, three times in a row, you get a triple
fault.  But, on x86, I don't think I've seen any mechanism with an
expectation that a port IO write will have a guaranteed response.

For the use-case I'm chasing, my goal being to snoop PoST codes from
the host, there is in the datasheet a post-code control register set,
but I haven't explored configuring them or whether someone has written
the fifo driver for them.

>
> -Rob
>
> On Tue, Jul 4, 2017 at 8:45 AM, Patrick Venture <venture@google.com> wrote:
>> This driver can be used on the aspeed ast2400.
>>
>> Tested: ast2400 on quanta-q71l
>>
>> Signed-off-by: Patrick Venture <venture@google.com>
>> ---
>>  drivers/misc/aspeed-lpc-snoop.c | 1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/misc/aspeed-lpc-snoop.c b/drivers/misc/aspeed-lpc-snoop.c
>> index 593905565b74..0647cff6280a 100644
>> --- a/drivers/misc/aspeed-lpc-snoop.c
>> +++ b/drivers/misc/aspeed-lpc-snoop.c
>> @@ -241,6 +241,7 @@ static int aspeed_lpc_snoop_remove(struct platform_device *pdev)
>>
>>  static const struct of_device_id aspeed_lpc_snoop_match[] = {
>>         { .compatible = "aspeed,ast2500-lpc-snoop" },
>> +       { .compatible = "aspeed,ast2400-lpc-snoop" },
>>         { },

An approach would be to ditch this change and instead refer to the
ast2500-lpc-snoop in my device-tree to avoid anyone non-x86 from
running this configuration and hitting issues.

>>  };
>>
>> --
>> 2.13.2.725.g09c95d1e9-goog
>>

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH linux dev-4.10] drivers/misc: (aspeed-lpc-snoop): Add ast2400 to compat Patrick Venture <venture@google.com> - 2017-07-04 17:50 +0200
  Re: [PATCH linux dev-4.10] drivers/misc: (aspeed-lpc-snoop): Add  ast2400 to compat Patrick Venture <venture@google.com> - 2017-07-04 18:00 +0200
  Re: [PATCH linux dev-4.10] drivers/misc: (aspeed-lpc-snoop): Add  ast2400 to compat Greg KH <gregkh@linuxfoundation.org> - 2017-07-04 18:00 +0200
  Re: [PATCH linux dev-4.10] drivers/misc: (aspeed-lpc-snoop): Add  ast2400 to compat Rob Lippert <roblip@gmail.com> - 2017-07-05 19:40 +0200
    Re: [PATCH linux dev-4.10] drivers/misc: (aspeed-lpc-snoop): Add  ast2400 to compat Patrick Venture <venture@google.com> - 2017-07-05 19:50 +0200
      Re: [PATCH linux dev-4.10] drivers/misc: (aspeed-lpc-snoop): Add  ast2400 to compat Patrick Venture <venture@google.com> - 2017-07-05 20:00 +0200
      Re: [PATCH linux dev-4.10] drivers/misc: (aspeed-lpc-snoop): Add  ast2400 to compat Rob Lippert <roblip@gmail.com> - 2017-07-05 20:00 +0200

csiph-web