Skip to content

Commit

Permalink
powerpc/pseries: Improve stream generation comments in copypage/user
Browse files Browse the repository at this point in the history
No code changes, just documenting what's happening a little better.

Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
  • Loading branch information
Michael Neuling authored and Benjamin Herrenschmidt committed May 31, 2013
1 parent a515348 commit 280a5ba
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 13 deletions.
19 changes: 11 additions & 8 deletions arch/powerpc/lib/copypage_power7.S
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,14 @@ _GLOBAL(copypage_power7)
* aligned we don't need to clear the bottom 7 bits of either
* address.
*/
ori r9,r3,1 /* stream=1 */
ori r9,r3,1 /* stream=1 => to */

#ifdef CONFIG_PPC_64K_PAGES
lis r7,0x0E01 /* depth=7, units=512 */
lis r7,0x0E01 /* depth=7
* units/cachelines=512 */
#else
lis r7,0x0E00 /* depth=7 */
ori r7,r7,0x1000 /* units=32 */
ori r7,r7,0x1000 /* units/cachelines=32 */
#endif
ori r10,r7,1 /* stream=1 */

Expand All @@ -43,12 +44,14 @@ _GLOBAL(copypage_power7)

.machine push
.machine "power4"
dcbt r0,r4,0b01000
dcbt r0,r7,0b01010
dcbtst r0,r9,0b01000
dcbtst r0,r10,0b01010
/* setup read stream 0 */
dcbt r0,r4,0b01000 /* addr from */
dcbt r0,r7,0b01010 /* length and depth from */
/* setup write stream 1 */
dcbtst r0,r9,0b01000 /* addr to */
dcbtst r0,r10,0b01010 /* length and depth to */
eieio
dcbt r0,r8,0b01010 /* GO */
dcbt r0,r8,0b01010 /* all streams GO */
.machine pop

#ifdef CONFIG_ALTIVEC
Expand Down
12 changes: 7 additions & 5 deletions arch/powerpc/lib/copyuser_power7.S
Original file line number Diff line number Diff line change
Expand Up @@ -318,12 +318,14 @@ err1; stb r0,0(r3)

.machine push
.machine "power4"
dcbt r0,r6,0b01000
dcbt r0,r7,0b01010
dcbtst r0,r9,0b01000
dcbtst r0,r10,0b01010
/* setup read stream 0 */
dcbt r0,r6,0b01000 /* addr from */
dcbt r0,r7,0b01010 /* length and depth from */
/* setup write stream 1 */
dcbtst r0,r9,0b01000 /* addr to */
dcbtst r0,r10,0b01010 /* length and depth to */
eieio
dcbt r0,r8,0b01010 /* GO */
dcbt r0,r8,0b01010 /* all streams GO */
.machine pop

beq cr1,.Lunwind_stack_nonvmx_copy
Expand Down

0 comments on commit 280a5ba

Please sign in to comment.