ARM: 8033/1: fix big endian __pv_phys_pfn_offset size related issue
authorVictor Kamensky <victor.kamensky@linaro.org>
Tue, 22 Apr 2014 01:25:36 +0000 (02:25 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Tue, 22 Apr 2014 21:24:00 +0000 (22:24 +0100)
commite3892e9160a6ae40abc45192df30f3e31b6dd0ff
treef0d5502336bd86079a77e9ca5f62c8048715075f
parent4530e4b6a450af14973c2b0703edfb02d66cbd41
ARM: 8033/1: fix big endian __pv_phys_pfn_offset size related issue

Fix e26a9e00afc482b971afcaef1db8c9034d4d6d7c 'ARM: Better
virt_to_page() handling' replaced __pv_phys_offset with
__pv_phys_pfn_offset. Also note that size of __pv_phys_offset
was quad but size of __pv_phys_pfn_offset is word. Instruction
that used to update __pv_phys_offset which address is in r6
had to update low word of __pv_phys_offset so it used #LOW_OFFSET
macro for store offset. Now when size of __pv_phys_pfn_offset is
word, no difference between little endian and big endian should
exist - i.e no offset should be used when __pv_phys_pfn_offset
is stored.

Note that for little endian image proposed change is noop,
since in little endian case #LOW_OFFSET is defined 0 anyway.

Reported-by: Taras Kondratiuk <taras.kondratiuk@linaro.org>
Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org>
Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/kernel/head.S