[haiku-commits] r36996 - in haiku/trunk/headers: build/config_build build/os/support config os/support private/fs_shell

  • From: ingo_weinhold@xxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Wed, 2 Jun 2010 20:22:38 +0200 (CEST)

Author: bonefish
Date: 2010-06-02 20:22:38 +0200 (Wed, 02 Jun 2010)
New Revision: 36996
Changeset: http://dev.haiku-os.org/changeset/36996/haiku

Modified:
   haiku/trunk/headers/build/config_build/types.h
   haiku/trunk/headers/build/os/support/SupportDefs.h
   haiku/trunk/headers/config/types.h
   haiku/trunk/headers/os/support/SupportDefs.h
   haiku/trunk/headers/private/fs_shell/fssh_api_wrapper.h
   haiku/trunk/headers/private/fs_shell/fssh_types.h
Log:
Introduced types [__haiku_]generic_{addr,size}_t which are wide enough for
virtual and physical addresses.


Modified: haiku/trunk/headers/build/config_build/types.h
===================================================================
--- haiku/trunk/headers/build/config_build/types.h      2010-06-01 19:04:00 UTC 
(rev 36995)
+++ haiku/trunk/headers/build/config_build/types.h      2010-06-02 18:22:38 UTC 
(rev 36996)
@@ -70,5 +70,14 @@
 #endif
 #define __HAIKU_PHYS_SADDR_MIN         (-__HAIKU_SADDR_MAX-1)
 
+/* a generic address type wide enough for virtual and physical addresses */
+#if __HAIKU_ARCH_BITS >= __HAIKU_ARCH_PHYSICAL_BITS
+       typedef __haiku_addr_t                                  
__haiku_generic_addr_t;
+#      define __HAIKU_GENERIC_ADDR_MAX                 __HAIKU_ADDR_MAX
+#else
+       typedef __haiku_phys_addr_t                             
__haiku_generic_addr_t;
+#      define __HAIKU_GENERIC_ADDR_MAX                 __HAIKU_PHYS_ADDR_MAX
+#endif
 
+
 #endif /* _CONFIG_BUILD_TYPES_H */

Modified: haiku/trunk/headers/build/os/support/SupportDefs.h
===================================================================
--- haiku/trunk/headers/build/os/support/SupportDefs.h  2010-06-01 19:04:00 UTC 
(rev 36995)
+++ haiku/trunk/headers/build/os/support/SupportDefs.h  2010-06-02 18:22:38 UTC 
(rev 36996)
@@ -64,7 +64,10 @@
 #endif
 typedef phys_addr_t                            phys_size_t;
 
+typedef        addr_t                                  generic_addr_t;
+typedef        size_t                                  generic_size_t;
 
+
 /* printf()/scanf() format strings for [u]int* types */
 #define B_PRId8                        PRId8
 #define B_PRIi8                        PRIi8
@@ -150,6 +153,11 @@
 #      define B_PRIxPHYSADDR   B_PRIx32
 #      define B_PRIXPHYSADDR   B_PRIX32
 #endif
+/* generic_addr_t */
+#define B_PRIuGENADDR  B_PRIuADDR
+#define B_PRIoGENADDR  B_PRIoADDR
+#define B_PRIxGENADDR  B_PRIxADDR
+#define B_PRIXGENADDR  B_PRIXADDR
 /* off_t */
 #define B_PRIdOFF              B_PRId64
 #define B_PRIiOFF              B_PRIi64

Modified: haiku/trunk/headers/config/types.h
===================================================================
--- haiku/trunk/headers/config/types.h  2010-06-01 19:04:00 UTC (rev 36995)
+++ haiku/trunk/headers/config/types.h  2010-06-02 18:22:38 UTC (rev 36996)
@@ -98,4 +98,16 @@
 #endif
 
 
+/* a generic address type wide enough for virtual and physical addresses */
+#if __HAIKU_ARCH_BITS >= __HAIKU_ARCH_PHYSICAL_BITS
+       typedef __haiku_addr_t                                  
__haiku_generic_addr_t;
+#      define __HAIKU_GENERIC_ADDR_MAX                 __HAIKU_ADDR_MAX
+#      define __HAIKU_PRI_PREFIX_GENERIC_ADDR  __HAIKU_PRI_PREFIX_ADDR
+#else
+       typedef __haiku_phys_addr_t                             
__haiku_generic_addr_t;
+#      define __HAIKU_GENERIC_ADDR_MAX                 __HAIKU_PHYS_ADDR_MAX
+#      define __HAIKU_PRI_PREFIX_GENERIC_ADDR  __HAIKU_PRI_PREFIX_PHYS_ADDR
+#endif
+
+
 #endif /* _CONFIG_TYPES_H */

Modified: haiku/trunk/headers/os/support/SupportDefs.h
===================================================================
--- haiku/trunk/headers/os/support/SupportDefs.h        2010-06-01 19:04:00 UTC 
(rev 36995)
+++ haiku/trunk/headers/os/support/SupportDefs.h        2010-06-02 18:22:38 UTC 
(rev 36996)
@@ -59,7 +59,10 @@
 typedef __haiku_phys_addr_t            phys_addr_t;
 typedef phys_addr_t                            phys_size_t;
 
+typedef        __haiku_generic_addr_t  generic_addr_t;
+typedef        generic_addr_t                  generic_size_t;
 
+
 /* printf()/scanf() format strings for [u]int* types */
 #define B_PRId8                        "d"
 #define B_PRIi8                        "i"
@@ -126,6 +129,11 @@
 #define B_PRIoPHYSADDR __HAIKU_PRI_PREFIX_PHYS_ADDR "o"
 #define B_PRIxPHYSADDR __HAIKU_PRI_PREFIX_PHYS_ADDR "x"
 #define B_PRIXPHYSADDR __HAIKU_PRI_PREFIX_PHYS_ADDR "X"
+/* generic_addr_t */
+#define B_PRIuGENADDR  __HAIKU_PRI_PREFIX_GENERIC_ADDR "u"
+#define B_PRIoGENADDR  __HAIKU_PRI_PREFIX_GENERIC_ADDR "o"
+#define B_PRIxGENADDR  __HAIKU_PRI_PREFIX_GENERIC_ADDR "x"
+#define B_PRIXGENADDR  __HAIKU_PRI_PREFIX_GENERIC_ADDR "X"
 /* off_t */
 #define B_PRIdOFF              B_PRId64
 #define B_PRIiOFF              B_PRIi64

Modified: haiku/trunk/headers/private/fs_shell/fssh_api_wrapper.h
===================================================================
--- haiku/trunk/headers/private/fs_shell/fssh_api_wrapper.h     2010-06-01 
19:04:00 UTC (rev 36995)
+++ haiku/trunk/headers/private/fs_shell/fssh_api_wrapper.h     2010-06-02 
18:22:38 UTC (rev 36996)
@@ -1493,6 +1493,8 @@
 #define addr_t                 fssh_addr_t
 #define phys_addr_t            fssh_phys_addr_t
 #define phys_size_t            fssh_phys_size_t
+#define generic_addr_t fssh_generic_addr_t
+#define generic_size_t fssh_generic_size_t
 
 #define dev_t                  fssh_dev_t
 #define ino_t                  fssh_ino_t
@@ -1573,6 +1575,16 @@
 #define B_PRIoADDR             FSSH_B_PRIoADDR
 #define B_PRIxADDR             FSSH_B_PRIxADDR
 #define B_PRIXADDR             FSSH_B_PRIXADDR
+/* phys_addr_t */
+#define B_PRIuPHYSADDR FSSH_B_PRIuPHYSADDR
+#define B_PRIoPHYSADDR FSSH_B_PRIoPHYSADDR
+#define B_PRIxPHYSADDR FSSH_B_PRIxPHYSADDR
+#define B_PRIXPHYSADDR FSSH_B_PRIXPHYSADDR
+/* generic_addr_t */
+#define B_PRIuGENADDR  FSSH_B_PRIuGENADDR
+#define B_PRIoGENADDR  FSSH_B_PRIoGENADDR
+#define B_PRIxGENADDR  FSSH_B_PRIxGENADDR
+#define B_PRIXGENADDR  FSSH_B_PRIXGENADDR
 /* off_t */
 #define B_PRIdOFF              FSSH_B_PRIdOFF
 #define B_PRIiOFF              FSSH_B_PRIiOFF

Modified: haiku/trunk/headers/private/fs_shell/fssh_types.h
===================================================================
--- haiku/trunk/headers/private/fs_shell/fssh_types.h   2010-06-01 19:04:00 UTC 
(rev 36995)
+++ haiku/trunk/headers/private/fs_shell/fssh_types.h   2010-06-02 18:22:38 UTC 
(rev 36996)
@@ -15,15 +15,18 @@
 #ifdef HAIKU_HOST_PLATFORM_64_BIT
 typedef uint64_t       fssh_addr_t;
 typedef uint64_t       fssh_phys_addr_t;
+typedef uint64_t       fssh_generic_addr_t;
 typedef uint64_t       fssh_size_t;
 typedef int64_t                fssh_ssize_t;
 #else
 typedef uint32_t       fssh_addr_t;
 typedef uint32_t       fssh_phys_addr_t;
+typedef uint32_t       fssh_generic_addr_t;
 typedef uint32_t       fssh_size_t;
 typedef int32_t                fssh_ssize_t;
 #endif
 typedef fssh_phys_addr_t       fssh_phys_size_t;
+typedef fssh_generic_addr_t    fssh_generic_size_t;
 
 typedef int32_t                fssh_dev_t;
 typedef int64_t                fssh_ino_t;
@@ -134,6 +137,11 @@
 #      define FSSH_B_PRIxPHYSADDR      FSSH_B_PRIx32
 #      define FSSH_B_PRIXPHYSADDR      FSSH_B_PRIX32
 #endif
+/* generic_addr_t */
+#define FSSH_B_PRIuGENADDR     FSSH_B_PRIuPHYSADDR
+#define FSSH_B_PRIoGENADDR     FSSH_B_PRIoPHYSADDR
+#define FSSH_B_PRIxGENADDR     FSSH_B_PRIxPHYSADDR
+#define FSSH_B_PRIXGENADDR     FSSH_B_PRIXPHYSADDR
 /* off_t */
 #define FSSH_B_PRIdOFF         FSSH_B_PRId64
 #define FSSH_B_PRIiOFF         FSSH_B_PRIi64


Other related posts:

  • » [haiku-commits] r36996 - in haiku/trunk/headers: build/config_build build/os/support config os/support private/fs_shell - ingo_weinhold