This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
HAL_*_STRING
- From: Leandro Fanzone <leandro at hasar dot com>
- To: ecos-discuss at ecos dot sourceware dot org
- Date: Wed, 15 Jun 2005 11:28:13 -0300
- Subject: [ECOS] HAL_*_STRING
Hello,
I'm using ecos 2.0 under x86, and tried to use the HAL_*_STRING
macros, both for reading and writing. They don't work properly; the
assembly output shows that they lack the rep instruction preceding the
insb/outsb instructions. So the macros would be:
#define HAL_READ_UINT8_STRING( _register_, _buf_, _count_) \
CYG_MACRO_START \
asm volatile ( "rep insb" \
: \
: "c" (_count_), "d"(_register_), "D"(_buf_) \
); \
CYG_MACRO_END
#define HAL_WRITE_UINT8_STRING( _register_, _buf_, _count_) \
CYG_MACRO_START \
asm volatile ( "rep outsb" \
: \
: "c" (_count_), "d"(_register_), "S"(_buf_) \
); \
CYG_MACRO_END
The same thing for the 16 bit and 32 bit versions.
Regards,
Leandro Fanzone
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss