diff options
author | Michael Brown <mcb30@ipxe.org> | 2015-03-05 02:30:58 +0000 |
---|---|---|
committer | Michael Brown <mcb30@ipxe.org> | 2015-03-05 02:30:58 +0000 |
commit | 81166302a082210346e8006b37167bbaf89b3e85 (patch) | |
tree | ce7ac80ed754124a761b16560582755daded888e /src/arch | |
parent | fbc4ba4b4ed13cc86cb8fdea0bac6c3be0164ed5 (diff) | |
download | ipxe-81166302a082210346e8006b37167bbaf89b3e85.tar.gz |
[i386] Move real_to_user() to realmode.h
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/arch')
-rw-r--r-- | src/arch/i386/include/librm.h | 12 | ||||
-rw-r--r-- | src/arch/i386/include/realmode.h | 12 | ||||
-rw-r--r-- | src/arch/i386/interface/pxe/pxe_tftp.c | 1 | ||||
-rw-r--r-- | src/arch/i386/interface/pxe/pxe_udp.c | 1 |
4 files changed, 14 insertions, 12 deletions
diff --git a/src/arch/i386/include/librm.h b/src/arch/i386/include/librm.h index c37373dd..a8a578a3 100644 --- a/src/arch/i386/include/librm.h +++ b/src/arch/i386/include/librm.h @@ -170,18 +170,6 @@ extern uint16_t __text16 ( rm_cs ); extern uint16_t __text16 ( rm_ds ); #define rm_ds __use_text16 ( rm_ds ) -/** - * Convert segment:offset address to user buffer - * - * @v segment Real-mode segment - * @v offset Real-mode offset - * @ret buffer User buffer - */ -static inline __always_inline userptr_t -real_to_user ( unsigned int segment, unsigned int offset ) { - return ( phys_to_user ( ( segment << 4 ) + offset ) ); -} - extern uint16_t copy_user_to_rm_stack ( userptr_t data, size_t size ); extern void remove_user_from_rm_stack ( userptr_t data, size_t size ); diff --git a/src/arch/i386/include/realmode.h b/src/arch/i386/include/realmode.h index 5727e5ac..4defd3b9 100644 --- a/src/arch/i386/include/realmode.h +++ b/src/arch/i386/include/realmode.h @@ -65,6 +65,18 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL ); */ /** + * Convert segment:offset address to user buffer + * + * @v segment Real-mode segment + * @v offset Real-mode offset + * @ret buffer User buffer + */ +static inline __always_inline userptr_t +real_to_user ( unsigned int segment, unsigned int offset ) { + return ( phys_to_user ( ( segment << 4 ) + offset ) ); +} + +/** * Copy data to base memory * * @v dest_seg Destination segment diff --git a/src/arch/i386/interface/pxe/pxe_tftp.c b/src/arch/i386/interface/pxe/pxe_tftp.c index 9ec3e96e..068d8a7b 100644 --- a/src/arch/i386/interface/pxe/pxe_tftp.c +++ b/src/arch/i386/interface/pxe/pxe_tftp.c @@ -41,6 +41,7 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL ); #include <ipxe/open.h> #include <ipxe/process.h> #include <ipxe/uri.h> +#include <realmode.h> #include <pxe.h> /** A PXE TFTP connection */ diff --git a/src/arch/i386/interface/pxe/pxe_udp.c b/src/arch/i386/interface/pxe/pxe_udp.c index 81e873f1..071cb59d 100644 --- a/src/arch/i386/interface/pxe/pxe_udp.c +++ b/src/arch/i386/interface/pxe/pxe_udp.c @@ -11,6 +11,7 @@ #include <ipxe/udp.h> #include <ipxe/uaccess.h> #include <ipxe/process.h> +#include <realmode.h> #include <pxe.h> /* |