[PATCH 4/5] powerpc: Add support for swiotlb on 32-bit

Becky Bruce beckyb at kernel.crashing.org
Tue Apr 21 05:06:24 EST 2009


On Apr 20, 2009, at 1:31 PM, Kumar Gala wrote:

>
> On Apr 20, 2009, at 11:26 AM, Becky Bruce wrote:
>
>> +static int ppc_swiotlb_bus_notify(struct notifier_block *nb,
>> +				  unsigned long action, void *data)
>> +{
>> +	struct device *dev = data;
>> +
>> +	/* We are only intereted in device addition */
>> +	if (action != BUS_NOTIFY_ADD_DEVICE)
>> +		return 0;
>> +
>> +	if (dma_get_mask(dev) < DMA_BIT_MASK(36))
>> +		set_dma_ops(dev, &swiotlb_dma_ops);
>> +
>> +	return NOTIFY_DONE;
>> +}
>> +
>> +static struct notifier_block ppc_swiotlb_plat_bus_notifier = {
>> +	.notifier_call = ppc_swiotlb_bus_notify,
>> +	.priority = 0,
>> +};
>> +
>> +static struct notifier_block ppc_swiotlb_of_bus_notifier = {
>> +	.notifier_call = ppc_swiotlb_bus_notify,
>> +	.priority = 0,
>> +};
>> +
>> +static int __init setup_bus_notifier(void)
>> +{
>> +	bus_register_notifier(&platform_bus_type,
>> +			      &ppc_swiotlb_plat_bus_notifier);
>> +	bus_register_notifier(&of_platform_bus_type,
>> +			      &ppc_swiotlb_of_bus_notifier);
>> +
>> +	return 0;
>> +}
>
> I think we should move all this into the platform code for now.  I  
> don't like having to duplicate it but that gives us the proper  
> flexibility for now.

Ugh, gross.  I'd like to think about this some more.

-B




More information about the Linuxppc-dev mailing list