tree 200c902b187dfc7f540f0016f9d39c267d651bc7
parent f376c3bd71b87c532474aa204861028c577d6dab
author magicse7en <magicse7en@outlook.com> 1603735652 +0800
committer GitHub <noreply@github.com> 1603735652 -0700
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJflxBkCRBK7hj4Ov3rIwAAdHIIABEWHmKLaNa5t14vDSirgLv4
 F009FTI0UcE6fR3H6rbZC40fpdd1xt+6oetyssEWmh/1SO5C7wYcS4iBcivsaHDs
 aiwjmgHQI9EyYhx4GgRtULDo7bPLjJvKMFfhCvCOhWoS3YOMhHyQtBinvY4ZamWn
 f8enj8LhlL5jCpAoLaUZatyEC0DC7vqIyIJOFFfBj7vHuflqIb7tcfFsKh9Ptsp7
 TbRbX2cs9fcuseAoY+pxFPl+An/HE8HC1oipdNdq+v/TEr++0qggJY1584lP00yz
 7u91bOZeThLHh3LmcbQNxksF/Oddgo26HingHUZLr1iYCl6ae90TaaBuLMy42D0=
 =0M6I
 -----END PGP SIGNATURE-----
 

Xtensa: fix stack overlap coproc_area issue (#118)

In function pxPortInitialiseStack of port.c:
	sp = ( StackType_t * ) ( ( ( UBaseType_t ) ( pxTopOfStack + 1 )  - XT_CP_SIZE - XT_STK_FRMSZ ) & ~0xf );
We assume XT_CP_SIZE is 0xE4, XT_STK_FRMSZ is 0xA0, pxTopOfStack is 0xA0000000, sp is 0x9FFFFE80.
From port.c, we know the frame->a1 as below:
	frame->a1 = ( UBaseType_t ) sp + XT_STK_FRMSZ;  /* physical top of stack frame    */
So frame->a1 is 0x9FFFFF20. Therefore the interrupt stack frame range is 0x9FFFFE80 ~ 0x9FFFFF20.

The coproc_area is: p = ( uint32_t * ) ( ( ( uint32_t ) pxTopOfStack - XT_CP_SIZE ) & ~0xf );
So its value is 0x9FFFFF10. Obviously, the interrupt stack frame overlaps the coproc_area.

Co-authored-by: Carl Lundin <53273776+lundinc2@users.noreply.github.com>