Hello Marek, On Fri, Jan 23, 2015 at 1:40 PM, Marek Szyprowski <m.szyprowski@xxxxxxxxxxx> wrote: >>> + >>> + list_add_tail(&data->owner_node, &owner->clients); >> >> This is the line that causes the kernel to hang, if I comment the >> list_add_tail() call then the kernel boots. >> >> I checked that neither data nor owner are NULL and that the >> owner->clients list_head is initialized. Do you have any ideas what >> could be happening? > > > This is really strange. However the hang is definitely not caused by > adding the controller to the list, but rather the fact that it is later > being initialized, probably in exynos_iommu_attach_device(). > Yes, I knew adding to the list was not the issue but a side effect of being in the list. I'm not familiar with Exynos sysmmu/iommu to figure out though. > Just a quick question - does bootloader on Exynos5420 Peach Pit sets > any image on the display? > Yes u-boot does initialize the display, I see the boot messages and have an u-boot prompt. > If so then we will get IOMMU page fault on init (DMA engine of FIMD is > left enabled from bootloader) and such case is not yet handled. > Besides that I have no idea for any other reason for such failure. > I see, that's a reasonable explanation and in fact your patch makes at least the kernel to start booting. > To check if this is caused by io page fault, please temporarily add the > following hack: > --->8--- > diff --git a/arch/arm/mm/dma-mapping.c b/arch/arm/mm/dma-mapping.c > index 7864797609b3..5e70cf7eb31b 100644 > --- a/arch/arm/mm/dma-mapping.c > +++ b/arch/arm/mm/dma-mapping.c > @@ -2011,6 +2011,9 @@ static bool arm_setup_iommu_dma_ops(struct device > *dev, u64 dma_base, u64 size, > return false; > } > > + iommu_map(mapping->domain, 0x40000000, 0x40000000, 0x80000000, > + IOMMU_READ | IOMMU_WRITE); > + > if (arm_iommu_attach_device(dev, mapping)) { The kernel still hangs but the boot does indeed go further. Here is my boot log [0] although I couldn't find an evident cause. Best regards, Javier [0]: http://paste.debian.net/plain/141968 -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html