Loading include/asm-ppc64/abs_addr.h +7 −14 Original line number Diff line number Diff line Loading @@ -44,24 +44,17 @@ static inline unsigned long addr_to_chunk(unsigned long addr) return addr >> MSCHUNKS_CHUNK_SHIFT; } static inline unsigned long chunk_offset(unsigned long addr) static inline unsigned long phys_to_abs(unsigned long pa) { return addr & MSCHUNKS_OFFSET_MASK; } unsigned long chunk; static inline unsigned long abs_chunk(unsigned long pchunk) { if (pchunk >= mschunks_map.num_chunks) return pchunk; chunk = addr_to_chunk(pa); return mschunks_map.mapping[pchunk]; } if (chunk < mschunks_map.num_chunks) chunk = mschunks_map.mapping[chunk]; /* A macro so it can take pointers or unsigned long. */ #define phys_to_abs(pa) \ ({ unsigned long _pa = (unsigned long)(pa); \ chunk_to_addr(abs_chunk(addr_to_chunk(_pa))) + chunk_offset(_pa); \ }) return chunk_to_addr(chunk) + (pa & MSCHUNKS_OFFSET_MASK); } static inline unsigned long physRpn_to_absRpn(unsigned long rpn) Loading Loading
include/asm-ppc64/abs_addr.h +7 −14 Original line number Diff line number Diff line Loading @@ -44,24 +44,17 @@ static inline unsigned long addr_to_chunk(unsigned long addr) return addr >> MSCHUNKS_CHUNK_SHIFT; } static inline unsigned long chunk_offset(unsigned long addr) static inline unsigned long phys_to_abs(unsigned long pa) { return addr & MSCHUNKS_OFFSET_MASK; } unsigned long chunk; static inline unsigned long abs_chunk(unsigned long pchunk) { if (pchunk >= mschunks_map.num_chunks) return pchunk; chunk = addr_to_chunk(pa); return mschunks_map.mapping[pchunk]; } if (chunk < mschunks_map.num_chunks) chunk = mschunks_map.mapping[chunk]; /* A macro so it can take pointers or unsigned long. */ #define phys_to_abs(pa) \ ({ unsigned long _pa = (unsigned long)(pa); \ chunk_to_addr(abs_chunk(addr_to_chunk(_pa))) + chunk_offset(_pa); \ }) return chunk_to_addr(chunk) + (pa & MSCHUNKS_OFFSET_MASK); } static inline unsigned long physRpn_to_absRpn(unsigned long rpn) Loading