xtensa: Fix argument passing for sys_call5 and sys_call6 functions

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
This commit is contained in:
Gustavo Henrique Nihei 2022-05-12 18:37:10 -03:00 committed by Masayuki Ishikawa
parent f7f8a21486
commit ba2829adb2

View File

@ -350,7 +350,7 @@ static inline uintptr_t sys_call5(unsigned int nbr, uintptr_t parm1,
uintptr_t parm4, uintptr_t parm5)
{
register long reg0 __asm__("a2") = (long)(nbr);
register long reg5 __asm__("a7") = (long)(parm4);
register long reg5 __asm__("a7") = (long)(parm5);
register long reg4 __asm__("a6") = (long)(parm4);
register long reg3 __asm__("a5") = (long)(parm3);
register long reg2 __asm__("a4") = (long)(parm2);
@ -384,8 +384,8 @@ static inline uintptr_t sys_call6(unsigned int nbr, uintptr_t parm1,
uintptr_t parm6)
{
register long reg0 __asm__("a2") = (long)(nbr);
register long reg6 __asm__("a8") = (long)(parm4);
register long reg5 __asm__("a7") = (long)(parm4);
register long reg6 __asm__("a8") = (long)(parm6);
register long reg5 __asm__("a7") = (long)(parm5);
register long reg4 __asm__("a6") = (long)(parm4);
register long reg3 __asm__("a5") = (long)(parm3);
register long reg2 __asm__("a4") = (long)(parm2);