Re: [PATCH v4] arm: msm: Add MSM IOMMU support.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



 On 8/16/2010 11:32 AM, Konrad Rzeszutek Wilk wrote:
I did a very brief look.

+	dmac_flush_range(fl_table, fl_table + SZ_16K);
+
+	for (i = 0; i<  4096; i++)
Can you use a #define for the 4096? Will that value ever change?
I suppose a #define can be used, but this is a HW-specific number that will never ever change.

+		if ((fl_table[i]&  0x03) == FL_TYPE_TABLE) {
+			void *sl_table = __va(fl_table[i]&  0xFFFFFC00);
Does it make sense to define say:
#define MASK_XX (x) x&  0xFFFFFC00
and
#define MASK_XY (x) x&  0xFFFF0000

and use those instead of these hard-coded values?
I guess so.. again, HW specific.


+	priv->pgtable = (unsigned long *)__get_free_pages(GFP_KERNEL, 2);
Ugh.  Can you use get_order(SZ_16K) instead?

+	/* Invalidate context TLB */
+	SET_CTX_TLBIALL(base, ctx, 0);
+	SET_V2PPR_VA(base, ctx, va>>  12);
Hmm, PAGE_SHIFT can't be used? Or some other #define?
I guess I can use the IOMMU PA shift. PAGE_SHIFT is not appropriate here because that is MMU-specific.

I can put out a v5 early next week.

Thanks
Steve
--
To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux