1*819833afSPeter Tyser /* 2*819833afSPeter Tyser * Copyright (C) 2008 Yoshihiro Shimoda <shimoda.yoshihiro@renesas.com> 3*819833afSPeter Tyser * 4*819833afSPeter Tyser * This program is free software; you can redistribute it and/or 5*819833afSPeter Tyser * modify it under the terms of the GNU General Public License as 6*819833afSPeter Tyser * published by the Free Software Foundation; either version 2 of 7*819833afSPeter Tyser * the License, or (at your option) any later version. 8*819833afSPeter Tyser * 9*819833afSPeter Tyser * This program is distributed in the hope that it will be useful, 10*819833afSPeter Tyser * but WITHOUT ANY WARRANTY; without even the implied warranty of 11*819833afSPeter Tyser * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12*819833afSPeter Tyser * GNU General Public License for more details. 13*819833afSPeter Tyser * 14*819833afSPeter Tyser * You should have received a copy of the GNU General Public License 15*819833afSPeter Tyser * along with this program; if not, write to the Free Software 16*819833afSPeter Tyser * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 17*819833afSPeter Tyser * MA 02111-1307 USA 18*819833afSPeter Tyser */ 19*819833afSPeter Tyser 20*819833afSPeter Tyser #ifndef __MACRO_H__ 21*819833afSPeter Tyser #define __MACRO_H__ 22*819833afSPeter Tyser #ifdef __ASSEMBLY__ 23*819833afSPeter Tyser 24*819833afSPeter Tyser .macro write32, addr, data 25*819833afSPeter Tyser mov.l \addr ,r1 26*819833afSPeter Tyser mov.l \data ,r0 27*819833afSPeter Tyser mov.l r0, @r1 28*819833afSPeter Tyser .endm 29*819833afSPeter Tyser 30*819833afSPeter Tyser .macro write16, addr, data 31*819833afSPeter Tyser mov.l \addr ,r1 32*819833afSPeter Tyser mov.w \data ,r0 33*819833afSPeter Tyser mov.w r0, @r1 34*819833afSPeter Tyser .endm 35*819833afSPeter Tyser 36*819833afSPeter Tyser .macro write8, addr, data 37*819833afSPeter Tyser mov.l \addr ,r1 38*819833afSPeter Tyser mov.l \data ,r0 39*819833afSPeter Tyser mov.b r0, @r1 40*819833afSPeter Tyser .endm 41*819833afSPeter Tyser 42*819833afSPeter Tyser .macro wait_timer, time 43*819833afSPeter Tyser mov.l \time ,r3 44*819833afSPeter Tyser 1: 45*819833afSPeter Tyser nop 46*819833afSPeter Tyser tst r3, r3 47*819833afSPeter Tyser bf/s 1b 48*819833afSPeter Tyser dt r3 49*819833afSPeter Tyser .endm 50*819833afSPeter Tyser 51*819833afSPeter Tyser #endif /* __ASSEMBLY__ */ 52*819833afSPeter Tyser #endif /* __MACRO_H__ */ 53