lkml.org 
[lkml]   [2019]   [Jun]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH 8/8] habanalabs: enable 64-bit DMA mask in POWER9
On Tue, Jun 11, 2019 at 10:59 AM Greg KH <gregkh@linuxfoundation.org> wrote:
>
> On Tue, Jun 11, 2019 at 08:50:45AM +0300, Oded Gabbay wrote:
> > --- a/drivers/misc/habanalabs/habanalabs_drv.c
> > +++ b/drivers/misc/habanalabs/habanalabs_drv.c
> > @@ -28,6 +28,7 @@ static DEFINE_MUTEX(hl_devs_idr_lock);
> >
> > static int timeout_locked = 5;
> > static int reset_on_lockup = 1;
> > +static int power9_64bit_dma_enable;
> >
> > module_param(timeout_locked, int, 0444);
> > MODULE_PARM_DESC(timeout_locked,
> > @@ -37,6 +38,10 @@ module_param(reset_on_lockup, int, 0444);
> > MODULE_PARM_DESC(reset_on_lockup,
> > "Do device reset on lockup (0 = no, 1 = yes, default yes)");
> >
> > +module_param(power9_64bit_dma_enable, int, 0444);
> > +MODULE_PARM_DESC(power9_64bit_dma_enable,
> > + "Enable 64-bit DMA mask. Should be set only in POWER9 machine (0 = no, 1 = yes, default no)");
> > +
> > #define PCI_VENDOR_ID_HABANALABS 0x1da3
> >
> > #define PCI_IDS_GOYA 0x0001
>
>
> This is not the 1990's, please do not use module parameters. Yeah, you
> have a bunch of them already, but do not add additional ones that can be
> easily determined at runtime, like this one.
>
> thanks,
>
> greg k-h

Hi Greg,
I would love to do this in runtime and that was my intent all along
until I hit a wall on *how* to find out it in runtime if I'm running
on POWER9 with PHB4 or not.
I did a search in the kernel code, consulted with a couple of people
but I didn't get any way of doing this in runtime.
If you have some way, please share it with me because I hit a wall
with this issue.

The fact of the matter is, I have two different configurations of *my*
device's PCIe controller. One is only suitable to POWER9 with PHB4 and
the other one suits all the rest architectures/systems (that we have
tested so far). So I have to know which system I'm running on and as I
said, I didn't find a kernel API which can help me do that.

Thanks,
Oded

\
 
 \ /
  Last update: 2019-06-11 10:10    [W:0.057 / U:9.820 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site