powerpc/ps3: Set driver coherent_dma_mask
Set the coherent_dma_mask for the PS3 ehci, ohci, and snd devices. Silences WARN_ON_ONCE messages emitted by the dma_alloc_attrs() routine. Reported-by: Fredrik Noring <noring@nocrew.org> Signed-off-by: Geoff Levand <geoff@infradead.org> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Acked-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
parent
ef6cb5f1a0
commit
48e9184686
|
@ -86,7 +86,7 @@ static int ps3_ehci_probe(struct ps3_system_bus_device *dev)
|
||||||
int result;
|
int result;
|
||||||
struct usb_hcd *hcd;
|
struct usb_hcd *hcd;
|
||||||
unsigned int virq;
|
unsigned int virq;
|
||||||
static u64 dummy_mask = DMA_BIT_MASK(32);
|
static u64 dummy_mask;
|
||||||
|
|
||||||
if (usb_disabled()) {
|
if (usb_disabled()) {
|
||||||
result = -ENODEV;
|
result = -ENODEV;
|
||||||
|
@ -131,7 +131,9 @@ static int ps3_ehci_probe(struct ps3_system_bus_device *dev)
|
||||||
goto fail_irq;
|
goto fail_irq;
|
||||||
}
|
}
|
||||||
|
|
||||||
dev->core.dma_mask = &dummy_mask; /* FIXME: for improper usb code */
|
dummy_mask = DMA_BIT_MASK(32);
|
||||||
|
dev->core.dma_mask = &dummy_mask;
|
||||||
|
dma_set_coherent_mask(&dev->core, dummy_mask);
|
||||||
|
|
||||||
hcd = usb_create_hcd(&ps3_ehci_hc_driver, &dev->core, dev_name(&dev->core));
|
hcd = usb_create_hcd(&ps3_ehci_hc_driver, &dev->core, dev_name(&dev->core));
|
||||||
|
|
||||||
|
|
|
@ -69,7 +69,7 @@ static int ps3_ohci_probe(struct ps3_system_bus_device *dev)
|
||||||
int result;
|
int result;
|
||||||
struct usb_hcd *hcd;
|
struct usb_hcd *hcd;
|
||||||
unsigned int virq;
|
unsigned int virq;
|
||||||
static u64 dummy_mask = DMA_BIT_MASK(32);
|
static u64 dummy_mask;
|
||||||
|
|
||||||
if (usb_disabled()) {
|
if (usb_disabled()) {
|
||||||
result = -ENODEV;
|
result = -ENODEV;
|
||||||
|
@ -115,7 +115,9 @@ static int ps3_ohci_probe(struct ps3_system_bus_device *dev)
|
||||||
goto fail_irq;
|
goto fail_irq;
|
||||||
}
|
}
|
||||||
|
|
||||||
dev->core.dma_mask = &dummy_mask; /* FIXME: for improper usb code */
|
dummy_mask = DMA_BIT_MASK(32);
|
||||||
|
dev->core.dma_mask = &dummy_mask;
|
||||||
|
dma_set_coherent_mask(&dev->core, dummy_mask);
|
||||||
|
|
||||||
hcd = usb_create_hcd(&ps3_ohci_hc_driver, &dev->core, dev_name(&dev->core));
|
hcd = usb_create_hcd(&ps3_ohci_hc_driver, &dev->core, dev_name(&dev->core));
|
||||||
|
|
||||||
|
|
|
@ -930,6 +930,7 @@ static int snd_ps3_driver_probe(struct ps3_system_bus_device *dev)
|
||||||
{
|
{
|
||||||
int i, ret;
|
int i, ret;
|
||||||
u64 lpar_addr, lpar_size;
|
u64 lpar_addr, lpar_size;
|
||||||
|
static u64 dummy_mask;
|
||||||
|
|
||||||
if (WARN_ON(!firmware_has_feature(FW_FEATURE_PS3_LV1)))
|
if (WARN_ON(!firmware_has_feature(FW_FEATURE_PS3_LV1)))
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
@ -970,6 +971,10 @@ static int snd_ps3_driver_probe(struct ps3_system_bus_device *dev)
|
||||||
goto clean_mmio;
|
goto clean_mmio;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
dummy_mask = DMA_BIT_MASK(32);
|
||||||
|
dev->core.dma_mask = &dummy_mask;
|
||||||
|
dma_set_coherent_mask(&dev->core, dummy_mask);
|
||||||
|
|
||||||
snd_ps3_audio_set_base_addr(dev->d_region->bus_addr);
|
snd_ps3_audio_set_base_addr(dev->d_region->bus_addr);
|
||||||
|
|
||||||
/* CONFIG_SND_PS3_DEFAULT_START_DELAY */
|
/* CONFIG_SND_PS3_DEFAULT_START_DELAY */
|
||||||
|
|
Loading…
Reference in New Issue