~ubuntu-branches/ubuntu/vivid/virtualbox-ose/vivid

« back to all changes in this revision

Viewing changes to src/VBox/Devices/Storage/DevLsiLogicSCSI.cpp

  • Committer: Bazaar Package Importer
  • Author(s): Felix Geyer
  • Date: 2010-03-11 17:16:37 UTC
  • mfrom: (0.3.4 upstream) (0.4.8 sid)
  • Revision ID: james.westby@ubuntu.com-20100311171637-43z64ia3ccpj8vqn
Tags: 3.1.4-dfsg-2ubuntu1
* Merge from Debian unstable (LP: #528561), remaining changes:
  - VirtualBox should go in Accessories, not in System tools (LP: #288590)
    - debian/virtualbox-ose-qt.files/virtualbox-ose.desktop
  - Add Apport hook
    - debian/virtualbox-ose.files/source_virtualbox-ose.py
    - debian/virtualbox-ose.install
  - Add Launchpad integration
    - debian/control
    - debian/lpi-bug.xpm
    - debian/patches/u02-lp-integration.dpatch
  - Replace *-source packages with transitional packages for *-dkms
* Fix crash in vboxvideo_drm with kernel 2.6.33 / backported drm code
  (LP: #535297)
* Add a list of linux-headers packages to the apport hook
* Update debian/patches/u02-lp-integration.dpatch with a
  DEP-3 compliant header
* Add ${misc:Depends} to virtualbox-ose-source and virtualbox-ose-guest-source
  Depends

Show diffs side-by-side

added added

removed removed

Lines of Context:
2141
2141
# define LSILOGIC_REG_DOORBELL_GET_SIZE(x)             (((x) & 0x00ff0000) >> 16)
2142
2142
 
2143
2143
#define LSILOGIC_REG_WRITE_SEQUENCE    0x04
 
2144
 
2144
2145
#define LSILOGIC_REG_HOST_DIAGNOSTIC   0x08
 
2146
# define LSILOGIC_REG_HOST_DIAGNOSTIC_DIAG_MEM_ENABLE     (RT_BIT(0))
 
2147
# define LSILOGIC_REG_HOST_DIAGNOSTIC_DISABLE_ARM         (RT_BIT(1))
 
2148
# define LSILOGIC_REG_HOST_DIAGNOSTIC_RESET_ADAPTER       (RT_BIT(2))
 
2149
# define LSILOGIC_REG_HOST_DIAGNOSTIC_DIAG_RW_ENABLE      (RT_BIT(4))
 
2150
# define LSILOGIC_REG_HOST_DIAGNOSTIC_RESET_HISTORY       (RT_BIT(5))
 
2151
# define LSILOGIC_REG_HOST_DIAGNOSTIC_FLASH_BAD_SIG       (RT_BIT(6))
 
2152
# define LSILOGIC_REG_HOST_DIAGNOSTIC_DRWE                (RT_BIT(7))
 
2153
# define LSILOGIC_REG_HOST_DIAGNOSTIC_PREVENT_IOC_BOOT    (RT_BIT(9))
 
2154
# define LSILOGIC_REG_HOST_DIAGNOSTIC_CLEAR_FLASH_BAD_SIG (RT_BIT(10))
 
2155
 
2145
2156
#define LSILOGIC_REG_TEST_BASE_ADDRESS 0x0c
2146
2157
#define LSILOGIC_REG_DIAG_RW_DATA      0x10
2147
2158
#define LSILOGIC_REG_DIAG_RW_ADDRESS   0x14
2888
2899
            }
2889
2900
            break;
2890
2901
        }
 
2902
        case LSILOGIC_REG_HOST_DIAGNOSTIC:
 
2903
        {
 
2904
#ifndef IN_RING3
 
2905
            return VINF_IOM_HC_IOPORT_WRITE;
 
2906
#else
 
2907
            if (u32 & LSILOGIC_REG_HOST_DIAGNOSTIC_RESET_ADAPTER)
 
2908
            {
 
2909
                lsilogicHardReset(pThis);
 
2910
            }
 
2911
            break;
 
2912
#endif
 
2913
        }
2891
2914
        default: /* Ignore. */
2892
2915
        {
2893
2916
            break;
2963
2986
        }
2964
2987
        case LSILOGIC_REG_HOST_DIAGNOSTIC:
2965
2988
        {
2966
 
            //AssertMsgFailed(("todo\n"));
2967
 
            break;
2968
 
        }
2969
 
        case LSILOGIC_REG_TEST_BASE_ADDRESS:
2970
 
        {
2971
 
            AssertMsgFailed(("todo\n"));
2972
 
            break;
2973
 
        }
 
2989
            if (pThis->fDiagnosticEnabled)
 
2990
                *pu32 = LSILOGIC_REG_HOST_DIAGNOSTIC_DRWE;
 
2991
            else
 
2992
                *pu32 = 0;
 
2993
            break;
 
2994
        }
 
2995
        case LSILOGIC_REG_TEST_BASE_ADDRESS: /* The spec doesn't say anything about these registers, so we just ignore them */
2974
2996
        case LSILOGIC_REG_DIAG_RW_DATA:
2975
 
        {
2976
 
            AssertMsgFailed(("todo\n"));
2977
 
            break;
2978
 
        }
2979
2997
        case LSILOGIC_REG_DIAG_RW_ADDRESS:
2980
 
        {
2981
 
            AssertMsgFailed(("todo\n"));
2982
 
            break;
2983
 
        }
2984
2998
        default: /* Ignore. */
2985
2999
        {
2986
3000
            break;