Re: [PATCH] parport: parport_pc: PCI SIO access should also depend on SIO option

From: Maciej S. Szmigiero
Date: Sun May 01 2016 - 10:07:27 EST


Hi Greg,
Hi Sudip,

On 01.05.2016 09:45, Sudip Mukherjee wrote:
> On Sat, Apr 30, 2016 at 01:56:40PM -0700, Greg Kroah-Hartman wrote:
>> On Wed, Apr 20, 2016 at 01:09:51PM +0530, Sudip Mukherjee wrote:
>>> From: "Maciej S. Szmigiero" <mail@xxxxxxxxxxxxxxxxxxxxx>
>>>
>>> CONFIG_PARPORT_PC_SUPERIO toggles Super IO chip support in parport_pc
>>> code, however only code accessing SIO chip via ISA (or LPC) bus was
>>> conditional on it.
>>>
>>> This patch makes SIO chip accesses via PCI bus also dependent on this
>>> config option.
>>>
>>> It should be noted that Super IO support in parport_pc is needed only when
>>> firmware has failed to make parallel port available either via PNP or
>>> on standard I/O ranges and user has one of a few supported SIOs.
>>>
>>> Signed-off-by: Maciej S. Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
>>> ---
>>>
>>> Hi Greg,
>>> This patch is not tested on any superio chip based hardware. (I also
>>> don't have one).
>>> http://www.spinics.net/lists/kernel/msg2227051.html
>>>
>>> I know you dislike adding #ifdef so its upto you.
>>
>> It's really a messy patch, surely there is a better solution.
>
> yes, might be. But without hardware, should i dare?

Well, an easy replacement of this patch would be to simply add
information to CONFIG_PARPORT_PC_SUPERIO prompt that it only applies to
accessing SIO chip via ISA/LPC bus and not PCI bus.

However, I think an intent of this config option was to disable such
probes altogether (because they are needed only on legacy hardware where
firmware didn't make parallel port available either via PNP or on
standard I/O ranges and the prompt actually suggest saying 'N' to this
option).

As existing PCI SIO probe code was already dependent on CONFIG_PCI adding
additional dependency on CONFIG_PARPORT_PC_SUPERIO was the simplest
solution.

Other possibility that comes to my mind would be to split out all such
probing code to separate file and then either compile it or not
depending on CONFIG_PARPORT_PC_SUPERIO.

Maciej