Home | History | Annotate | Download | only in lib
      1 # This file describes the properties of a given virtual device configuration file.
      2 #
      3 # Note: Most top-level properties are boolean that control whether a feature is
      4 #       present or not. Sub-features that depend on it are ignored if their
      5 #       parent is set to 'false' or 'no'
      6 #
      7 # This file is parsed by 'android/scripts/gen-hw-config.py' to generate
      8 # 'android/avd/hw-config-defs.h'. The latter is a special header containing
      9 # macro statements that is used several times:
     10 #
     11 #  - once to define the fields of the AndroidHwConfig structure
     12 #    (see android/avd/hw-config.h)
     13 #
     14 #  - once to implement the hardware configuration loader
     15 #    (see android/avd/hw-config.h)
     16 #
     17 # It is also packaged by the SDK and parsed by tools to let the developers
     18 # create AVDs.
     19 #
     20 # NOTE: if you remove items from this file, be sure that you do not break
     21 #       the emulator build.
     22 #
     23 
     24 # CPU Architecture
     25 name        = hw.cpu.arch
     26 type        = string
     27 default     = arm
     28 abstract    = CPU Architecture
     29 description = The CPU Architecture to emulator
     30 
     31 # CPU Model
     32 # Leave it empty, and the default value will be computed from
     33 # hw.cpu.arch. This is only useful for experimentation for now.
     34 name        = hw.cpu.model
     35 type        = string
     36 default     =
     37 abstract    = CPU model
     38 description = The CPU model (QEMU-specific string)
     39 
     40 # SMP count: Number of processors to emulate when SMP is supported.
     41 # Must be > 0.
     42 name        = hw.cpu.ncore
     43 type        = integer
     44 default     = 2
     45 abstract    = SMP CPU core count
     46 description = Number of cores in a simulated SMP CPU.
     47 
     48 # Ram size
     49 # Default value will be computed based on screen pixels
     50 # or skin version
     51 name        = hw.ramSize
     52 type        = integer
     53 default     = 0
     54 abstract    = Device ram size
     55 description = The amount of physical RAM on the device, in megabytes.
     56 
     57 # Touch screen type
     58 name        = hw.screen
     59 type        = string
     60 enum        = touch, multi-touch, no-touch
     61 default     = multi-touch
     62 abstract    = Touch screen type
     63 description = Defines type of the screen.
     64 
     65 # Hardware main keys (back/home)
     66 name        = hw.mainKeys
     67 type        = boolean
     68 default     = yes
     69 abstract    = Hardware Back/Home keys
     70 description = Whether there are hardware back/home keys on the device.
     71 
     72 # Trackball support
     73 name        = hw.trackBall
     74 type        = boolean
     75 default     = yes
     76 abstract    = Track-ball support
     77 description = Whether there is a trackball on the device.
     78 
     79 # Keyboard support (qwerty/azerty)
     80 name        = hw.keyboard
     81 type        = boolean
     82 default     = no
     83 abstract    = Keyboard support
     84 description = Whether the device has a QWERTY keyboard.
     85 
     86 # Keyboard lid support
     87 # (I.e. can the qwerty keyboard be closed/hidden or opened/visible)
     88 # this will be ignored if hw.keyboard is false
     89 #
     90 # NOTE: As a special case, the default value will be 'false' if the
     91 #       AVD targets API level 12 or higher. See hwConfig_init()
     92 #       in external/qemu/android/avd/hw-config.c for more details.
     93 #
     94 name        = hw.keyboard.lid
     95 type        = boolean
     96 default     = yes
     97 abstract    = Keyboard lid support
     98 description = Whether the QWERTY keyboard can be opened/closed.
     99 
    100 # The name of the hardware charmap for this device.
    101 #
    102 # NOTE: This should always be the default 'qwerty2' unless you have
    103 #        modified the system image accordingly. This name is sent to
    104 #        the kernel at boot time. Using an incorrect name will result
    105 #        in an unusable machine.
    106 name        = hw.keyboard.charmap
    107 type        = string
    108 default     = qwerty2
    109 abstract    = Keyboard charmap name
    110 description = Name of the system keyboard charmap file.
    111 
    112 # DPad keys
    113 name        = hw.dPad
    114 type        = boolean
    115 default     = yes
    116 abstract    = DPad support
    117 description = Whether the device has DPad keys
    118 
    119 # Rotary input
    120 name        = hw.rotaryInput
    121 type        = boolean
    122 default     = no
    123 abstract    = Rotary input support
    124 description = Whether the device has rotary input
    125 
    126 # GSM Modem support
    127 name        = hw.gsmModem
    128 type        = boolean
    129 default     = yes
    130 abstract    = GSM modem support
    131 description = Whether there is a GSM modem in the device.
    132 
    133 # GPS support
    134 name        = hw.gps
    135 type        = boolean
    136 default     = yes
    137 abstract    = GPS support
    138 description = Whether there is a GPS in the device.
    139 
    140 # Battery
    141 name        = hw.battery
    142 type        = boolean
    143 default     = yes
    144 abstract    = Battery support
    145 description = Whether the device can run on a battery.
    146 
    147 # Accelerometer (used for auto-rotation)
    148 name        = hw.accelerometer
    149 type        = boolean
    150 default     = yes
    151 abstract    = Accelerometer
    152 description = Whether there is an accelerometer in the device.
    153 
    154 # Gyroscope (used for VR)
    155 name        = hw.gyroscope
    156 type        = boolean
    157 default     = yes
    158 abstract    = Gyroscope
    159 description = Whether there is a gyroscope in the device.
    160 
    161 # Audio input
    162 name        = hw.audioInput
    163 type        = boolean
    164 default     = yes
    165 abstract    = Audio recording support
    166 description = Whether the device can record audio
    167 
    168 # Audio output
    169 name        = hw.audioOutput
    170 type        = boolean
    171 default     = yes
    172 abstract    = Audio playback support
    173 description = Whether the device can play audio
    174 
    175 # SDCard support
    176 name        = hw.sdCard
    177 type        = boolean
    178 default     = yes
    179 abstract    = SD Card support
    180 description = Whether the device supports insertion/removal of virtual SD Cards.
    181 
    182 name        = hw.sdCard.path
    183 type        = string
    184 default     =
    185 abstract    = SD Card image path
    186 
    187 name        = hw.logcatOutput.path
    188 type        = string
    189 default     =
    190 abstract    = Logcat Output File Path
    191 
    192 # Cache partition
    193 name        = disk.cachePartition
    194 type        = boolean
    195 default     = yes
    196 abstract    = Cache partition support
    197 description = Whether we use a /cache partition on the device.
    198 
    199 name        = disk.cachePartition.path
    200 type        = string
    201 default     =
    202 abstract    = Cache partition
    203 description = Cache partition to use on the device. Ignored if disk.cachePartition is not 'yes'.
    204 
    205 name        = disk.cachePartition.size
    206 type        = diskSize
    207 abstract    = Cache partition size
    208 default     = 66MB
    209 
    210 name        = test.quitAfterBootTimeOut
    211 type        = integer
    212 default     = -1
    213 abstract    = Quit emulator after guest boots completely, or after time out. Default: end of universe.
    214 
    215 # LCD width
    216 name        = hw.lcd.width
    217 type        = integer
    218 default     = 320
    219 abstract    = LCD pixel width
    220 
    221 name        = hw.lcd.height
    222 type        = integer
    223 default     = 640
    224 abstract    = LCD pixel height
    225 
    226 name        = hw.lcd.depth
    227 type        = integer
    228 enum        = 16, 32
    229 default     = 16
    230 abstract    = LCD color depth
    231 description = Color bit depth of emulated framebuffer.
    232 
    233 # LCD density
    234 name        = hw.lcd.density
    235 type        = integer
    236 enum        = 120, 160, 240, 213, 320
    237 default     = 160
    238 abstract    = Abstracted LCD density
    239 description = A value used to roughly describe the density of the LCD screen for automatic resource/asset selection.
    240 
    241 # LCD backlight - Enable/Disable LCD backlight simulation
    242 # default = no  : Disabled
    243 # default = yes : Enabled
    244 name        = hw.lcd.backlight
    245 type        = boolean
    246 default     = yes
    247 abstract    = LCD backlight
    248 description = Enable/Disable LCD backlight simulation,yes-enabled,no-disabled.
    249 
    250 # Hardware OpenGLES emulation support
    251 #
    252 name        = hw.gpu.enabled
    253 type        = boolean
    254 default     = no
    255 abstract    = GPU emulation
    256 description = Enable/Disable emulated OpenGLES GPU
    257 
    258 name        = hw.gpu.mode
    259 type        = string
    260 default     = auto
    261 enum        = auto, host, mesa
    262 abstract    = GPU emulation mode
    263 description = This value determines how GPU emulation is implemented.
    264 
    265 name        = hw.gpu.blacklisted
    266 type        = string
    267 default     = no
    268 enum        = no, yes
    269 abstract    = GPU on-blacklist mode
    270 description = This value determines if the GPU is considered blacklisted. Testing purposes only.
    271 
    272 # Configures the initial orientation: portrait or landscape
    273 #
    274 name        = hw.initialOrientation
    275 type        = string
    276 enum        = portrait, landscape
    277 default     = portrait
    278 abstract    = Initial screen orientation
    279 description = Setup initial screen orientation, can be rotated later on.
    280 
    281 # Configures camera facing back
    282 #
    283 name        = hw.camera.back
    284 type        = string
    285 enum        = emulated, none, webcam0, ...
    286 default     = emulated
    287 abstract    = Configures camera facing back
    288 description = Must be 'emulated' for a fake camera, 'webcam<N>' for a web camera, or 'none' if back camera is disabled.
    289 
    290 # Configures camera facing front
    291 #
    292 name        = hw.camera.front
    293 type        = string
    294 enum        = emulated, none, webcam0, ...
    295 default     = none
    296 abstract    = Configures camera facing front
    297 description = Must be 'emulated' for a fake camera, 'webcam<N>' for a web camera, or 'none' if front camera is disabled.
    298 
    299 # Maximum VM heap size
    300 # Higher values are required for high-dpi devices
    301 # Default will depend on RAM size.
    302 name        = vm.heapSize
    303 type        = integer
    304 default     = 0
    305 abstract    = Max VM application heap size
    306 description = The maximum heap size a Dalvik application might allocate before being killed by the system. Value is in megabytes.
    307 
    308 # Light sensor
    309 name        = hw.sensors.light
    310 type        = boolean
    311 default     = yes
    312 abstract    = Light support
    313 description = Whether there is a light sensor in the device
    314 
    315 # Pressure sensor
    316 name        = hw.sensors.pressure
    317 type        = boolean
    318 default     = yes
    319 abstract    = Pressure support
    320 description = Whether there is a pressure sensor in the device
    321 
    322 # Humidity sensor
    323 name        = hw.sensors.humidity
    324 type        = boolean
    325 default     = yes
    326 abstract    = Humidity support
    327 description = Whether there is a relative humidity sensor in the device
    328 
    329 # Proximity sensor
    330 name        = hw.sensors.proximity
    331 type        = boolean
    332 default     = yes
    333 abstract    = Proximity support
    334 description = Whether there is an proximity in the device.
    335 
    336 # Magnetic field sensor
    337 name        = hw.sensors.magnetic_field
    338 type        = boolean
    339 default     = yes
    340 abstract    = Magnetic field support
    341 description = Provides magnetic field sensor values.
    342 
    343 # Uncalibrated magnetometer (used for VR)
    344 name        = hw.sensors.magnetic_field_uncalibrated
    345 type        = boolean
    346 default     = yes
    347 abstract    = Uncalibrated magnetic field suport
    348 description = Provides uncalibrated magnetic field sensor values.
    349 
    350 # Uncalibrated gyroscope
    351 name        = hw.sensors.gyroscope_uncalibrated
    352 type        = boolean
    353 default     = yes
    354 abstract    = Uncalibrated gyroscope support
    355 description = Provides uncalibrated gyroscope sensor values.
    356 
    357 # Orientation sensor
    358 name        = hw.sensors.orientation
    359 type        = boolean
    360 default     = yes
    361 abstract    = Orientation support
    362 description = Provides orientation sensor values.
    363 
    364 # Temperature sensor
    365 name        = hw.sensors.temperature
    366 type        = boolean
    367 default     = yes
    368 abstract    = Temperature support
    369 description = Provides temperature sensor values.
    370 
    371 # File system
    372 name        = hw.useext4
    373 type        = boolean
    374 default     = yes
    375 abstract    = Deprecated option. Ignored.
    376 description = Used to specify the Ext4 partition image type. This is now autodetected.
    377 
    378 # Chrome OS devices
    379 name        = hw.arc
    380 type        = boolean
    381 default     = no
    382 abstract    = Chrome OS device (App Runtime for Chrome)
    383 description = The emulated device is a Chrome OS machine.
    384 
    385 # Autologin for Chrome OS devices
    386 name        = hw.arc.autologin
    387 type        = boolean
    388 default     = no
    389 abstract    = Auto login for Chrome OS devices
    390 description = Used to enable auto login into Chrome OS devices
    391 
    392 # Kernel image.
    393 #
    394 # kernel.path        specified the path to the kernel image
    395 # kernel.parameters  specifies the string of kernel boot parameters.
    396 #
    397 name        = kernel.path
    398 type        = string
    399 default     =
    400 abstract    = Path to the kernel image
    401 description = Path to the kernel image.
    402 
    403 name        = kernel.parameters
    404 type        = string
    405 default     =
    406 abstract    = kernel boot parameters string.
    407 
    408 name        = kernel.newDeviceNaming
    409 type        = string
    410 enum        = autodetect, yes, no
    411 default     = autodetect
    412 abstract    = Does the kernel require a new device naming scheme?
    413 description = Used to specify whether the kernel requires a new device naming scheme. Typically for Linux 3.10 and above.
    414 
    415 name        = kernel.supportsYaffs2
    416 type        = string
    417 enum        = autodetect, yes, no
    418 default     = autodetect
    419 abstract    = Does the kernel supports YAFFS2 partitions?
    420 description = Used to specify whether the kernel supports YAFFS2 partition images. Typically before 3.10 only.
    421 
    422 # Path to the ramdisk image.
    423 name        = disk.ramdisk.path
    424 type        = string
    425 default     =
    426 abstract    = Path to the ramdisk image
    427 description = Path to the ramdisk image.
    428 
    429 # System partition image(s).
    430 #
    431 # disk.systemPartition.path points to the read/write system partition image.
    432 #   if empty, a temporary file will be created, initialized with the content
    433 #   of .initPath
    434 #
    435 # disk.systemPartition.initPath is only used when .path is empty. It must
    436 # then point to a read-only initialization system image file.
    437 #
    438 # disk.systemPartition.size is the ideal size of the system partition. The
    439 # size is ignored if the actual system partition image is larger. Otherwise,
    440 # it indicates the maximum size the disk image file can grow to.
    441 #
    442 name        = disk.systemPartition.path
    443 type        = string
    444 default     =
    445 abstract    = Path to runtime system partition image
    446 
    447 name        = disk.systemPartition.initPath
    448 type        = string
    449 default     =
    450 abstract    = Initial system partition image
    451 
    452 name        = disk.systemPartition.size
    453 type        = diskSize
    454 default     = 0
    455 abstract    = Ideal size of system partition
    456 
    457 # Vendor partition image(s).
    458 
    459 name        = disk.vendorPartition.path
    460 type        = string
    461 default     =
    462 abstract    = Path to runtime vendor partition image
    463 
    464 name        = disk.vendorPartition.initPath
    465 type        = string
    466 default     =
    467 abstract    = Initial vendor partition image
    468 
    469 name        = disk.vendorPartition.size
    470 type        = diskSize
    471 default     = 0
    472 abstract    = Ideal size of vendor partition
    473 
    474 # Path to the data partition.
    475 name        = disk.dataPartition.path
    476 type        = string
    477 default     = <temp>
    478 abstract    = Path to data partition file
    479 description = Path to data partition file. Cannot be empty. Special value <temp> means using a temporary file. If disk.dataPartition.initPath is not empty, its content will be copied to the disk.dataPartition.path file at boot-time.
    480 
    481 # Initial path to the data partition.
    482 name        = disk.dataPartition.initPath
    483 type        = string
    484 default     =
    485 abstract    = Initial data partition
    486 description = If not empty, its content will be copied to the disk.dataPartition.path file at boot-time.
    487 
    488 # Data partition size.
    489 name        = disk.dataPartition.size
    490 type        = diskSize
    491 default     = 0
    492 abstract    = Ideal size of data partition
    493 
    494 # Path to the data partition.
    495 name        = disk.encryptionKeyPartition.path
    496 type        = string
    497 default     =
    498 abstract    = Path to encryption key partition file
    499 description = Path to encryption key partition file. Should be at least 16K bytes empty disk without any filesystem on it.
    500 
    501 # Path to the snapshots storage file.
    502 name        = disk.snapStorage.path
    503 type        = string
    504 default     =
    505 abstract    = Path to snapshot storage
    506 description = Path to a 'snapshot storage' file, where all snapshots are stored.
    507 
    508 # Is the AVD compatible with Google Play?
    509 name        = PlayStore.enabled
    510 type        = boolean
    511 default     = no
    512 abstract    = PlayStore
    513 description = Does the device supports Google Play?
    514 
    515 # Android AVD name
    516 # This is set automatically before launching a core.
    517 #
    518 name        = avd.name
    519 type        = string
    520 default     = <build>
    521 abstract    = Name of the AVD being run
    522 
    523 # Force cold boot
    524 # Don't use snapshots for quick booting but boot from scratch instead
    525 #
    526 name        = fastboot.forceColdBoot
    527 type        = boolean
    528 default     = no
    529 abstract    = Always use cold boot
    530 description = If set, AVD will always use the full cold boot instead of snapshot-based quick boot process
    531