1b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells/* MN10300 Kernel thread trampoline function 2b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells * 3b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells * Copyright (C) 2007 Red Hat, Inc. All Rights Reserved. 4b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells * Written by Mark Salter (msalter@redhat.com) 5b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells * 6b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells * This program is free software; you can redistribute it and/or 7b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells * modify it under the terms of the GNU General Public Licence 8b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells * as published by the Free Software Foundation; either version 9b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells * 2 of the Licence, or (at your option) any later version. 10b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells */ 11b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells .text 12b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells 13b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells############################################################################### 14b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells# 15b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells# kernel_thread_helper - trampoline for kernel_thread() 16b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells# 17b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells# On entry: 18b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells# A2 = address of function to call 19b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells# D2 = function argument 20b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells# 21b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells############################################################################### 22b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells .globl kernel_thread_helper 23b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells .type kernel_thread_helper,@function 24b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howellskernel_thread_helper: 25b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells mov do_exit,d1 26b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells mov d1,(sp) 27b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells mov d1,mdr 28b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells mov d2,d0 29b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells jmp (a2) 30b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells 31b920de1b77b72ca9432ac3f97edb26541e65e5ddDavid Howells .size kernel_thread_helper,.-kernel_thread_helper 32