Re: [PATCH v4 03/25] powerpc/powernv: Map & release OpenCAPI LPC memory

From: Michael Ellerman
Date: Fri Apr 03 2020 - 00:27:45 EST


Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> writes:
> On Wed, 2020-04-01 at 01:48 -0700, Dan Williams wrote:
>> >
>> > +u64 pnv_ocxl_platform_lpc_setup(struct pci_dev *pdev, u64 size)
>> > +{
>> > + struct pci_controller *hose = pci_bus_to_host(pdev->bus);
>> > + struct pnv_phb *phb = hose->private_data;
>>
>> Is calling the local variable 'hose' instead of 'host' on purpose?
>
> Haha that's funny :-)
>
> It's an oooooooold usage that comes iirc from sparc ? or maybe alpha ?

Yeah it was alpha, I found it in the history tree:

https://github.com/mpe/linux-fullhistory/blob/1928de59ba4209dc5e9f2cef63560c09ba0df73b/arch/alpha/kernel/mcpcia.c

And airlied found an old manual which confirms it:

The TIOP module interfaces the AlphaServer 8000 system bus to four I/O channels, called "hoses."

https://www.hpl.hp.com/hpjournal/dtj/vol7num1/vol7num1art4.pdf


So at least now we know where it comes from.

It's also used widely in mips, microblaze, sh and a little bit in drm.

cheers