Author: scottl
Date: Wed Jun 19 04:57:47 2013
New Revision: 251986
URL: http://svnweb.freebsd.org/changeset/base/251986

Log:
  Tweak the CAM_DATA flags that were added with r251874 to allow source
  compatibility and almost 100% binary compatibility.  The old
  CAM_SG_LIST_PHYS flag is essentially lost in binary compatibility for
  legacy SIM drivers.  The use of this flag is excedingly rare.
  
  Obtained from:        Netflix

Modified:
  stable/9/sys/cam/cam_ccb.h

Modified: stable/9/sys/cam/cam_ccb.h
==============================================================================
--- stable/9/sys/cam/cam_ccb.h  Wed Jun 19 04:47:41 2013        (r251985)
+++ stable/9/sys/cam/cam_ccb.h  Wed Jun 19 04:57:47 2013        (r251986)
@@ -63,7 +63,7 @@ typedef enum {
                                              * Perform transport negotiation
                                              * with this command.
                                              */
-       CAM_DATA_ISPHYS         = 0x00000010,/* Data type with physical addrs */
+       CAM_DATA_ISPHYS         = 0x00200000,/* Data type with physical addrs */
        CAM_DIS_AUTOSENSE       = 0x00000020,/* Disable autosense feature     */
        CAM_DIR_BOTH            = 0x00000000,/* Data direction (00:IN/OUT)    */
        CAM_DIR_IN              = 0x00000040,/* Data direction (01:DATA IN)   */
@@ -71,10 +71,10 @@ typedef enum {
        CAM_DIR_NONE            = 0x000000C0,/* Data direction (11:no data)   */
        CAM_DIR_MASK            = 0x000000C0,/* Data direction Mask           */
        CAM_DATA_VADDR          = 0x00000000,/* Data type (000:Virtual)       */
-       CAM_DATA_PADDR          = 0x00000010,/* Data type (001:Physical)      */
-       CAM_DATA_SG             = 0x00040000,/* Data type (010:sglist)        */
-       CAM_DATA_SG_PADDR       = 0x00040010,/* Data type (011:sglist phys)   */
-       CAM_DATA_BIO            = 0x00200000,/* Data type (100:bio)           */
+       CAM_DATA_PADDR          = 0x00200000,/* Data type (001:Physical)      */
+       CAM_DATA_SG             = 0x00000010,/* Data type (010:sglist)        */
+       CAM_DATA_SG_PADDR       = 0x00200010,/* Data type (011:sglist phys)   */
+       CAM_DATA_BIO            = 0x00040000,/* Data type (100:bio)           */
        CAM_DATA_MASK           = 0x00240010,/* Data type mask                */
        CAM_SOFT_RST_OP         = 0x00000100,/* Use Soft reset alternative    */
        CAM_ENG_SYNC            = 0x00000200,/* Flush resid bytes on complete */
@@ -91,6 +91,11 @@ typedef enum {
        CAM_CDB_PHYS            = 0x00400000,/* CDB poiner is physical        */
        CAM_ENG_SGLIST          = 0x00800000,/* SG list is for the HBA engine */
 
+/* Compatibility for FreeBSD 9.x*/
+       CAM_SCATTER_VALID       = 0x00000010,/* These exist for src compat for*/
+       CAM_SG_LIST_PHYS        = 0x00200010,/* old drivers.  Hardly anything */
+       CAM_DATA_PHYS           = 0x00200000,/* uses them.                    */
+
 /* Phase cognizant mode flags */
        CAM_DIS_AUTOSRP         = 0x01000000,/* Disable autosave/restore ptrs */
        CAM_DIS_AUTODISC        = 0x02000000,/* Disable auto disconnect       */
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to