CROSSYSTEM(1)

πŸ’– CROSSYSTEM(1) πŸ’–

okay bestie, sit down, we're learning crossystem today and honestly? it's iconic. this is the Chrome OS firmware/system interface utility, living its best life in section 1, user commands. let's get into it 🫢


✨ NAME ✨

crossystem β€” Chrome OS firmware/system interface utility


πŸ¦‹ DESCRIPTION πŸ¦‹

πŸ“– Usage

okay so there are exactly four ways to talk to this thing. pick your fighter πŸ’…

crossystem [--all]

Prints every single parameter with its description and its current value. and if you throw --all in there, it prints the normally hidden fields too β€” no secrets in this house πŸ’€

crossystem [param1 [param2 [...]]]

Prints the current value(s) of the parameter(s) you asked for. just, like, reading. very chill.

crossystem [param1=value1] [param2=value2 [...]]]

Sets the parameter(s) to the value(s) you gave. this one writes. main character energy, but careful.

crossystem [param1?value1] [param2?value2 [...]]]

Checks if the parameter(s) all contain the specified value(s). it's giving quiz time, bestie.

heads up 🚨 it stops at the first error. no "let me just finish the list", no second chances. first oopsie and it's out.

πŸŽ€ Valid parameters

here's the whole roster, every single one, in order, no skips. iykyk.

  • arch β€” Platform architecture
  • backup_nvram_request β€” Backup the nvram somewhere at the next boot. Cleared on success.
  • battery_cutoff_request β€” Cut off battery and shutdown on next boot.
  • block_devmode β€” Block all use of developer mode
  • clear_tpm_owner_request β€” Clear TPM owner on next boot
  • clear_tpm_owner_done β€” Clear TPM owner done
  • cros_debug β€” OS should allow debug features
  • dbg_reset β€” Debug reset mode request (writable)
  • debug_build β€” OS image built for debug features
  • dev_boot_usb β€” Enable developer mode boot from USB/SD (writable)
  • dev_boot_legacy β€” Enable developer mode boot Legacy OSes (writable)
  • dev_boot_signed_only β€” Enable developer mode boot only from official kernels (writable)
  • dev_default_boot β€” default boot from legacy or usb (writable)
  • devsw_boot β€” Developer switch position at boot
  • devsw_cur β€” Developer switch current position
  • disable_dev_request β€” Disable virtual dev-mode on next boot
  • ecfw_act β€” Active EC firmware
  • fmap_base β€” Main firmware flashmap physical address
  • fwb_tries β€” Try firmware B count (writable)
  • fw_vboot2 β€” 1 if firmware was selected by vboot2 or 0 otherwise
  • fwid β€” Active firmware ID
  • fwupdate_tries β€” Times to try OS firmware update (writable, inside kern_nv)
  • fw_tried β€” Firmware tried this boot (vboot2)
  • fw_try_count β€” Number of times to try fw_try_next (writable)
  • fw_try_next β€” Firmware to try next (vboot2,writable)
  • fw_result β€” Firmware result this boot (vboot2,writable)
  • fw_prev_tried β€” Firmware tried on previous boot (vboot2)
  • fw_prev_result β€” Firmware result of previous boot (vboot2)
  • hwid β€” Hardware ID
  • kern_nv β€” Non-volatile field for kernel use
  • kernkey_vfy β€” Type of verification done on kernel key block
  • loc_idx β€” Localization index for firmware screens (writable)
  • mainfw_act β€” Active main firmware
  • mainfw_type β€” Active main firmware type
  • nvram_cleared β€” Have NV settings been lost? Write 0 to clear
  • oprom_needed β€” Should we load the VGA Option ROM at boot?
  • recovery_reason β€” Recovery mode reason for current boot
  • recovery_request β€” Recovery mode request (writable)
  • recovery_subcode β€” Recovery reason subcode (writable)
  • recoverysw_boot β€” Recovery switch position at boot
  • recoverysw_cur β€” Recovery switch current position
  • recoverysw_ec_boot β€” Recovery switch position at EC boot
  • ro_fwid β€” Read-only firmware ID
  • sw_wpsw_boot β€” Firmware write protect software setting enabled at boot (Baytrail only)
  • tpm_attack β€” TPM was interrupted since this flag was cleared
  • tpm_fwver β€” Firmware version stored in TPM
  • tpm_kernver β€” Kernel version stored in TPM
  • tpm_rebooted β€” TPM requesting repeated reboot (vboot2)
  • try_ro_sync β€” try read only software sync
  • tried_fwb β€” Tried firmware B before A this boot
  • vdat_flags β€” Flags from VbSharedData
  • vdat_lfdebug β€” LoadFirmware() debug data (not in print-all)
  • vdat_lkdebug β€” LoadKernel() debug data (not in print-all)
  • vdat_timers β€” Timer values from VbSharedData
  • wipeout_request β€” Firmware requested factory reset (wipeout)
  • wpsw_boot β€” Firmware write protect hardware switch position at boot
  • wpsw_cur β€” Firmware write protect hardware switch current position

🌈 SEE ALSO 🌈

so like, the full documentation for crossystem is maintained as a Texinfo manual</> manual (Texinfo manual πŸ’œ). if the info and crossystem programs are properly installed at your site, this command:

info crossystem

should give you access to the complete manual. go read it, bestie, it's the director's cut πŸ“


and that's the whole page, periodt. this was crossystem, dated July 2016, and it ate. no crumbs. now go forth and vibe check your firmware πŸ’…βœ¨πŸ¦‹πŸ‘‘