Re: [PATCH 05/31] Constify struct dma_map_ops for 2.6.32 v1

From: Emese Revfy
Date: Fri Dec 04 2009 - 21:24:19 EST


Stephen Rothwell wrote:
> Hi Emese,
>
> On Sat, 05 Dec 2009 03:00:25 +0100 Emese Revfy <re.emese@xxxxxxxxx> wrote:
>> Ok, I made the changes, I also removed the vio_cmo_set_dma_ops function
>> because I think it is now unnecessary.
>
> It is necessary because vio_dma_mapping_ops is only defined when
> CONFIG_PPC_SMLPAR is set, but that function was called from unconditional
> code (and there was a trivial version for when CONFIG_PPC_SMLPAR was not
> set) i.e. we only want the dma_ops set if we were built with
> CONFIG_PPC_SMLPAR.

I already took care of these, look at these hunks:

@@ -1033,7 +1026,6 @@ int vio_cmo_entitlement_update(size_t new_entitlement) { return 0; }
void vio_cmo_set_dev_desired(struct vio_dev *viodev, size_t desired) {}
static int vio_cmo_bus_probe(struct vio_dev *viodev) { return 0; }
static void vio_cmo_bus_remove(struct vio_dev *viodev) {}
-static void vio_cmo_set_dma_ops(struct vio_dev *viodev) {}
static void vio_cmo_bus_init(void) {}
static void vio_cmo_sysfs_init(void) { }
#endif /* CONFIG_PPC_SMLPAR */
@@ -1233,7 +1225,7 @@ struct vio_dev *vio_register_device_node(struct device_node *of_node)
viodev->dev.archdata.of_node = of_node_get(of_node);

if (firmware_has_feature(FW_FEATURE_CMO))
- vio_cmo_set_dma_ops(viodev);
+ viodev->dev.archdata.dma_ops = &vio_dma_mapping_ops;
else
viodev->dev.archdata.dma_ops = &dma_iommu_ops;
set_iommu_table_base(&viodev->dev, vio_build_iommu_table(viodev));


If you think it's not enough please let me know.
--
Emese
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/