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

Kumar Gala galak at kernel.crashing.org
Tue Apr 21 04:31:12 EST 2009


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.

- k



More information about the Linuxppc-dev mailing list