commit | 827a438156e4c423b6875a092e272933952a2910 | [log] [tgz] |
---|---|---|
author | Vincent Chen <vincentc@andestech.com> | Tue Oct 02 16:52:31 2018 +0800 |
committer | Palmer Dabbelt <palmer@sifive.com> | Mon Oct 22 17:02:56 2018 -0700 |
tree | b06c4c99ec6e728b6447a5a6c6d61bac60c84e78 | |
parent | 757331db921428295948fed5e7377a436e66d34e [diff] |
RISC-V: Avoid corrupting the upper 32-bit of phys_addr_t in ioremap For 32bit, the upper 32-bit of phys_addr_t will be flushed to zero after AND with PAGE_MASK because the data type of PAGE_MASK is unsigned long. To fix this problem, the page alignment is done by subtracting the page offset instead of AND with PAGE_MASK. Signed-off-by: Vincent Chen <vincentc@andestech.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Palmer Dabbelt <palmer@sifive.com>