[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAHp75Vc17xhZGWN_KFgBut2RXcb5JMj1-eTRf82NsCs_wGOdxA@mail.gmail.com>
Date: Tue, 22 Aug 2017 12:50:54 +0300
From: Andy Shevchenko <andy.shevchenko@...il.com>
To: sathya <sathyaosid@...il.com>
Cc: Kuppuswamy Sathyanarayanan
<sathyanarayanan.kuppuswamy@...ux.intel.com>,
"x86@...nel.org" <x86@...nel.org>, Ingo Molnar <mingo@...hat.com>,
Zha Qipeng <qipeng.zha@...el.com>,
"H. Peter Anvin" <hpa@...or.com>,
"dvhart@...radead.org" <dvhart@...radead.org>,
Thomas Gleixner <tglx@...utronix.de>,
Andy Shevchenko <andy@...radead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Platform Driver <platform-driver-x86@...r.kernel.org>
Subject: Re: [RFC v1 4/6] platform: x86: Add generic Intel IPC driver
On Tue, Aug 22, 2017 at 8:09 AM, sathya <sathyaosid@...il.com> wrote:
> On 08/18/2017 05:38 AM, Andy Shevchenko wrote:
>> On Tue, Aug 1, 2017 at 9:13 PM,
>> <sathyanarayanan.kuppuswamy@...ux.intel.com> wrote:
>>> +struct intel_ipc_dev_cfg {
>>> + void __iomem *base;
>>> + void __iomem *wrbuf_reg;
>>> + void __iomem *rbuf_reg;
>>> + void __iomem *sptr_reg;
>>> + void __iomem *dptr_reg;
>>> + void __iomem *status_reg;
>>> + void __iomem *cmd_reg;
>>
>> No, you have to switch to regmap instead.
>
> Do you want me to register regmap in intel_pmc_ipc.c and pass this regmap
> pointer to devm_intel_ipc_dev_create()
> instead of regular mem address ? Please correct me if my understanding is
> incorrect.
>
> But I don't understand how this change will improve the design.
We will have a core part which takes a PMC/SCU regmap on input.
Core part will not know about exact PMC in use. On top of core part
you will have one driver per PMC type.
In exchange core part will provide a generic set of functions like
"send simple command", "send command", "do ...smth...".
Core part _is_ a library.
>>> + int mode;
>>> + int irq;
>>> + int irqflags;
>>> + int chan_type;
>>> + bool use_msi;
>>> +};
--
With Best Regards,
Andy Shevchenko
Powered by blists - more mailing lists