1*0d6140beSAndroid Build Coastguard Workerpackage { 2*0d6140beSAndroid Build Coastguard Worker default_applicable_licenses: ["external_flashrom_license"], 3*0d6140beSAndroid Build Coastguard Worker} 4*0d6140beSAndroid Build Coastguard Worker 5*0d6140beSAndroid Build Coastguard Workerlicense { 6*0d6140beSAndroid Build Coastguard Worker name: "external_flashrom_license", 7*0d6140beSAndroid Build Coastguard Worker visibility: [":__subpackages__"], 8*0d6140beSAndroid Build Coastguard Worker license_kinds: [ 9*0d6140beSAndroid Build Coastguard Worker "SPDX-license-identifier-BSD", 10*0d6140beSAndroid Build Coastguard Worker "SPDX-license-identifier-GPL", 11*0d6140beSAndroid Build Coastguard Worker "SPDX-license-identifier-GPL-2.0", 12*0d6140beSAndroid Build Coastguard Worker ], 13*0d6140beSAndroid Build Coastguard Worker license_text: [ 14*0d6140beSAndroid Build Coastguard Worker "COPYING", 15*0d6140beSAndroid Build Coastguard Worker "LICENSE", 16*0d6140beSAndroid Build Coastguard Worker ], 17*0d6140beSAndroid Build Coastguard Worker} 18*0d6140beSAndroid Build Coastguard Worker 19*0d6140beSAndroid Build Coastguard Workergenrule { 20*0d6140beSAndroid Build Coastguard Worker name: "flashrom_version.h", 21*0d6140beSAndroid Build Coastguard Worker srcs: ["VERSION"], 22*0d6140beSAndroid Build Coastguard Worker cmd: "cat $(in) | xargs printf -- '#define FLASHROM_VERSION \"%s\"\n' > $(out)", 23*0d6140beSAndroid Build Coastguard Worker out: ["flashrom_version.h"], 24*0d6140beSAndroid Build Coastguard Worker} 25*0d6140beSAndroid Build Coastguard Worker 26*0d6140beSAndroid Build Coastguard Workercc_defaults { 27*0d6140beSAndroid Build Coastguard Worker name: "flashrom_defaults", 28*0d6140beSAndroid Build Coastguard Worker host_supported: true, 29*0d6140beSAndroid Build Coastguard Worker cflags: [ 30*0d6140beSAndroid Build Coastguard Worker "-Os", 31*0d6140beSAndroid Build Coastguard Worker "-std=c99", 32*0d6140beSAndroid Build Coastguard Worker "-Werror", 33*0d6140beSAndroid Build Coastguard Worker "-Wshadow", 34*0d6140beSAndroid Build Coastguard Worker "-Wmissing-prototypes", 35*0d6140beSAndroid Build Coastguard Worker "-Wwrite-strings", 36*0d6140beSAndroid Build Coastguard Worker "-Wno-unused-parameter", 37*0d6140beSAndroid Build Coastguard Worker "-Wno-address-of-packed-member", 38*0d6140beSAndroid Build Coastguard Worker "-Wno-enum-conversion", 39*0d6140beSAndroid Build Coastguard Worker "-Wno-missing-braces", 40*0d6140beSAndroid Build Coastguard Worker 41*0d6140beSAndroid Build Coastguard Worker "-Wno-error=gnu-pointer-arith", 42*0d6140beSAndroid Build Coastguard Worker 43*0d6140beSAndroid Build Coastguard Worker "-D_DEFAULT_SOURCE", 44*0d6140beSAndroid Build Coastguard Worker "-D_POSIX_C_SOURCE=200809L", 45*0d6140beSAndroid Build Coastguard Worker "-D_BSD_SOURCE", 46*0d6140beSAndroid Build Coastguard Worker "-D__BSD_VISIBLE", 47*0d6140beSAndroid Build Coastguard Worker "-D__XSI_VISIBLE", 48*0d6140beSAndroid Build Coastguard Worker "-D_NETBSD_SOURCE", 49*0d6140beSAndroid Build Coastguard Worker "-D_DARWIN_C_SOURCE", 50*0d6140beSAndroid Build Coastguard Worker 51*0d6140beSAndroid Build Coastguard Worker "-DCONFIG_DEFAULT_PROGRAMMER_NAME=&programmer_internal", 52*0d6140beSAndroid Build Coastguard Worker "-DCONFIG_DEFAULT_PROGRAMMER_ARGS=\"\"", 53*0d6140beSAndroid Build Coastguard Worker "-DCONFIG_DELAY_MINIMUM_SLEEP_US=100000", 54*0d6140beSAndroid Build Coastguard Worker 55*0d6140beSAndroid Build Coastguard Worker "-DHAVE_CLOCK_GETTIME=1", 56*0d6140beSAndroid Build Coastguard Worker "-DHAVE_STRNLEN=1", 57*0d6140beSAndroid Build Coastguard Worker "-DHAVE_GETOPT_H=1", 58*0d6140beSAndroid Build Coastguard Worker "-DHAVE_PCIUTILS_PCI_H=1", 59*0d6140beSAndroid Build Coastguard Worker "-DHAVE_UTSNAME=1", 60*0d6140beSAndroid Build Coastguard Worker 61*0d6140beSAndroid Build Coastguard Worker // Only LittleEndian platforms are supported. Feel free to add BigEndian support. 62*0d6140beSAndroid Build Coastguard Worker "-D__FLASHROM_LITTLE_ENDIAN__", 63*0d6140beSAndroid Build Coastguard Worker "-include flashrom_version.h", 64*0d6140beSAndroid Build Coastguard Worker 65*0d6140beSAndroid Build Coastguard Worker // programmers config 66*0d6140beSAndroid Build Coastguard Worker "-DCONFIG_DUMMY=1", 67*0d6140beSAndroid Build Coastguard Worker "-DCONFIG_INTERNAL=1", 68*0d6140beSAndroid Build Coastguard Worker "-DCONFIG_INTERNAL_DMI=1", 69*0d6140beSAndroid Build Coastguard Worker "-DCONFIG_IT8212=1", 70*0d6140beSAndroid Build Coastguard Worker "-DCONFIG_LINUX_MTD=1", 71*0d6140beSAndroid Build Coastguard Worker "-DCONFIG_LINUX_SPI=1", 72*0d6140beSAndroid Build Coastguard Worker "-DCONFIG_MEDIATEK_I2C_SPI=1", 73*0d6140beSAndroid Build Coastguard Worker "-DCONFIG_PARADE_LSPCON=1", 74*0d6140beSAndroid Build Coastguard Worker "-DCONFIG_RAIDEN_DEBUG_SPI=1", 75*0d6140beSAndroid Build Coastguard Worker "-DCONFIG_REALTEK_MST_I2C_SPI=1", 76*0d6140beSAndroid Build Coastguard Worker "-DCONFIG_SERPROG=1", 77*0d6140beSAndroid Build Coastguard Worker "-DCONFIG_STLINKV3_SPI=1", 78*0d6140beSAndroid Build Coastguard Worker 79*0d6140beSAndroid Build Coastguard Worker "-DCONFIG_CROS_EC=1", 80*0d6140beSAndroid Build Coastguard Worker "-DUSE_BIG_LOCK=1", 81*0d6140beSAndroid Build Coastguard Worker ], 82*0d6140beSAndroid Build Coastguard Worker 83*0d6140beSAndroid Build Coastguard Worker generated_headers: ["flashrom_version.h"], 84*0d6140beSAndroid Build Coastguard Worker 85*0d6140beSAndroid Build Coastguard Worker include_dirs: ["external/libusb/include/libusb"], 86*0d6140beSAndroid Build Coastguard Worker 87*0d6140beSAndroid Build Coastguard Worker static_libs: ["libpci"], 88*0d6140beSAndroid Build Coastguard Worker shared_libs: ["libusb"], 89*0d6140beSAndroid Build Coastguard Worker} 90*0d6140beSAndroid Build Coastguard Worker 91*0d6140beSAndroid Build Coastguard Workercc_library { 92*0d6140beSAndroid Build Coastguard Worker name: "libflashrom", 93*0d6140beSAndroid Build Coastguard Worker defaults: ["flashrom_defaults"], 94*0d6140beSAndroid Build Coastguard Worker host_supported: true, 95*0d6140beSAndroid Build Coastguard Worker vendor_available: true, 96*0d6140beSAndroid Build Coastguard Worker visibility: ["//external/vboot_reference"], 97*0d6140beSAndroid Build Coastguard Worker init_rc: ["flashrom.rc"], 98*0d6140beSAndroid Build Coastguard Worker 99*0d6140beSAndroid Build Coastguard Worker target: { 100*0d6140beSAndroid Build Coastguard Worker linux: { 101*0d6140beSAndroid Build Coastguard Worker cflags: ["-DIS_WINDOWS=0"], 102*0d6140beSAndroid Build Coastguard Worker srcs: [ 103*0d6140beSAndroid Build Coastguard Worker "custom_baud_linux.c", 104*0d6140beSAndroid Build Coastguard Worker "hwaccess_physmap.c", 105*0d6140beSAndroid Build Coastguard Worker ], 106*0d6140beSAndroid Build Coastguard Worker }, 107*0d6140beSAndroid Build Coastguard Worker linux_x86: { 108*0d6140beSAndroid Build Coastguard Worker srcs: [ 109*0d6140beSAndroid Build Coastguard Worker "hwaccess_x86_msr.c", 110*0d6140beSAndroid Build Coastguard Worker "hwaccess_x86_io.c", 111*0d6140beSAndroid Build Coastguard Worker ], 112*0d6140beSAndroid Build Coastguard Worker }, 113*0d6140beSAndroid Build Coastguard Worker linux_x86_64: { 114*0d6140beSAndroid Build Coastguard Worker srcs: [ 115*0d6140beSAndroid Build Coastguard Worker "hwaccess_x86_msr.c", 116*0d6140beSAndroid Build Coastguard Worker "hwaccess_x86_io.c", 117*0d6140beSAndroid Build Coastguard Worker ], 118*0d6140beSAndroid Build Coastguard Worker }, 119*0d6140beSAndroid Build Coastguard Worker windows: { 120*0d6140beSAndroid Build Coastguard Worker cflags: ["-DIS_WINDOWS=1"], 121*0d6140beSAndroid Build Coastguard Worker srcs: ["custom_baud.c"], 122*0d6140beSAndroid Build Coastguard Worker }, 123*0d6140beSAndroid Build Coastguard Worker }, 124*0d6140beSAndroid Build Coastguard Worker 125*0d6140beSAndroid Build Coastguard Worker arch: { 126*0d6140beSAndroid Build Coastguard Worker x86: { 127*0d6140beSAndroid Build Coastguard Worker srcs: [ 128*0d6140beSAndroid Build Coastguard Worker "processor_enable.c", 129*0d6140beSAndroid Build Coastguard Worker "chipset_enable.c", 130*0d6140beSAndroid Build Coastguard Worker "board_enable.c", 131*0d6140beSAndroid Build Coastguard Worker "cbtable.c", 132*0d6140beSAndroid Build Coastguard Worker "internal.c", 133*0d6140beSAndroid Build Coastguard Worker "internal_par.c", 134*0d6140beSAndroid Build Coastguard Worker "it87spi.c", 135*0d6140beSAndroid Build Coastguard Worker "sb600spi.c", 136*0d6140beSAndroid Build Coastguard Worker "superio.c", 137*0d6140beSAndroid Build Coastguard Worker "amd_imc.c", 138*0d6140beSAndroid Build Coastguard Worker "wbsio_spi.c", 139*0d6140beSAndroid Build Coastguard Worker "mcp6x_spi.c", 140*0d6140beSAndroid Build Coastguard Worker "ichspi.c", 141*0d6140beSAndroid Build Coastguard Worker "dmi.c", 142*0d6140beSAndroid Build Coastguard Worker "pcidev.c", 143*0d6140beSAndroid Build Coastguard Worker "known_boards.c", 144*0d6140beSAndroid Build Coastguard Worker ], 145*0d6140beSAndroid Build Coastguard Worker }, 146*0d6140beSAndroid Build Coastguard Worker x86_64: { 147*0d6140beSAndroid Build Coastguard Worker srcs: [ 148*0d6140beSAndroid Build Coastguard Worker "processor_enable.c", 149*0d6140beSAndroid Build Coastguard Worker "chipset_enable.c", 150*0d6140beSAndroid Build Coastguard Worker "board_enable.c", 151*0d6140beSAndroid Build Coastguard Worker "cbtable.c", 152*0d6140beSAndroid Build Coastguard Worker "internal.c", 153*0d6140beSAndroid Build Coastguard Worker "internal_par.c", 154*0d6140beSAndroid Build Coastguard Worker "it87spi.c", 155*0d6140beSAndroid Build Coastguard Worker "sb600spi.c", 156*0d6140beSAndroid Build Coastguard Worker "superio.c", 157*0d6140beSAndroid Build Coastguard Worker "amd_imc.c", 158*0d6140beSAndroid Build Coastguard Worker "wbsio_spi.c", 159*0d6140beSAndroid Build Coastguard Worker "mcp6x_spi.c", 160*0d6140beSAndroid Build Coastguard Worker "ichspi.c", 161*0d6140beSAndroid Build Coastguard Worker "dmi.c", 162*0d6140beSAndroid Build Coastguard Worker "pcidev.c", 163*0d6140beSAndroid Build Coastguard Worker "known_boards.c", 164*0d6140beSAndroid Build Coastguard Worker ], 165*0d6140beSAndroid Build Coastguard Worker }, 166*0d6140beSAndroid Build Coastguard Worker arm: { 167*0d6140beSAndroid Build Coastguard Worker srcs: [ 168*0d6140beSAndroid Build Coastguard Worker "board_enable.c", 169*0d6140beSAndroid Build Coastguard Worker "cbtable.c", 170*0d6140beSAndroid Build Coastguard Worker "chipset_enable.c", 171*0d6140beSAndroid Build Coastguard Worker "internal.c", 172*0d6140beSAndroid Build Coastguard Worker "internal_par.c", 173*0d6140beSAndroid Build Coastguard Worker "processor_enable.c", 174*0d6140beSAndroid Build Coastguard Worker "pcidev.c", 175*0d6140beSAndroid Build Coastguard Worker "known_boards.c", 176*0d6140beSAndroid Build Coastguard Worker ], 177*0d6140beSAndroid Build Coastguard Worker }, 178*0d6140beSAndroid Build Coastguard Worker arm64: { 179*0d6140beSAndroid Build Coastguard Worker srcs: [ 180*0d6140beSAndroid Build Coastguard Worker "board_enable.c", 181*0d6140beSAndroid Build Coastguard Worker "cbtable.c", 182*0d6140beSAndroid Build Coastguard Worker "chipset_enable.c", 183*0d6140beSAndroid Build Coastguard Worker "internal.c", 184*0d6140beSAndroid Build Coastguard Worker "internal_par.c", 185*0d6140beSAndroid Build Coastguard Worker "processor_enable.c", 186*0d6140beSAndroid Build Coastguard Worker "pcidev.c", 187*0d6140beSAndroid Build Coastguard Worker "known_boards.c", 188*0d6140beSAndroid Build Coastguard Worker ], 189*0d6140beSAndroid Build Coastguard Worker }, 190*0d6140beSAndroid Build Coastguard Worker }, 191*0d6140beSAndroid Build Coastguard Worker 192*0d6140beSAndroid Build Coastguard Worker srcs: [ 193*0d6140beSAndroid Build Coastguard Worker "82802ab.c", 194*0d6140beSAndroid Build Coastguard Worker "at45db.c", 195*0d6140beSAndroid Build Coastguard Worker "bitbang_spi.c", 196*0d6140beSAndroid Build Coastguard Worker "edi.c", 197*0d6140beSAndroid Build Coastguard Worker "en29lv640b.c", 198*0d6140beSAndroid Build Coastguard Worker "erasure_layout.c", 199*0d6140beSAndroid Build Coastguard Worker "flashchips.c", 200*0d6140beSAndroid Build Coastguard Worker "flashrom.c", 201*0d6140beSAndroid Build Coastguard Worker "fmap.c", 202*0d6140beSAndroid Build Coastguard Worker "helpers.c", 203*0d6140beSAndroid Build Coastguard Worker "helpers_fileio.c", 204*0d6140beSAndroid Build Coastguard Worker "ich_descriptors.c", 205*0d6140beSAndroid Build Coastguard Worker "jedec.c", 206*0d6140beSAndroid Build Coastguard Worker "printlock.c", 207*0d6140beSAndroid Build Coastguard Worker "layout.c", 208*0d6140beSAndroid Build Coastguard Worker "libflashrom.c", 209*0d6140beSAndroid Build Coastguard Worker "opaque.c", 210*0d6140beSAndroid Build Coastguard Worker "parallel.c", 211*0d6140beSAndroid Build Coastguard Worker "print.c", 212*0d6140beSAndroid Build Coastguard Worker "programmer.c", 213*0d6140beSAndroid Build Coastguard Worker "programmer_table.c", 214*0d6140beSAndroid Build Coastguard Worker "s25f.c", 215*0d6140beSAndroid Build Coastguard Worker "sfdp.c", 216*0d6140beSAndroid Build Coastguard Worker "spi25.c", 217*0d6140beSAndroid Build Coastguard Worker "spi25_statusreg.c", 218*0d6140beSAndroid Build Coastguard Worker "spi95.c", 219*0d6140beSAndroid Build Coastguard Worker "spi.c", 220*0d6140beSAndroid Build Coastguard Worker "sst28sf040.c", 221*0d6140beSAndroid Build Coastguard Worker "sst49lfxxxc.c", 222*0d6140beSAndroid Build Coastguard Worker "sst_fwhub.c", 223*0d6140beSAndroid Build Coastguard Worker "stm50.c", 224*0d6140beSAndroid Build Coastguard Worker "w29ee011.c", 225*0d6140beSAndroid Build Coastguard Worker "w39.c", 226*0d6140beSAndroid Build Coastguard Worker "writeprotect.c", 227*0d6140beSAndroid Build Coastguard Worker "writeprotect_ranges.c", 228*0d6140beSAndroid Build Coastguard Worker "udelay.c", 229*0d6140beSAndroid Build Coastguard Worker 230*0d6140beSAndroid Build Coastguard Worker "power.c", 231*0d6140beSAndroid Build Coastguard Worker "action_descriptor.c", 232*0d6140beSAndroid Build Coastguard Worker "flashchips_crosbl.c", 233*0d6140beSAndroid Build Coastguard Worker "cros_ec.c", 234*0d6140beSAndroid Build Coastguard Worker "big_lock.c", 235*0d6140beSAndroid Build Coastguard Worker "file_lock.c", 236*0d6140beSAndroid Build Coastguard Worker 237*0d6140beSAndroid Build Coastguard Worker // Programmers 238*0d6140beSAndroid Build Coastguard Worker "dummyflasher.c", 239*0d6140beSAndroid Build Coastguard Worker "it8212.c", 240*0d6140beSAndroid Build Coastguard Worker "linux_mtd.c", 241*0d6140beSAndroid Build Coastguard Worker "linux_spi.c", 242*0d6140beSAndroid Build Coastguard Worker "parade_lspcon.c", 243*0d6140beSAndroid Build Coastguard Worker "i2c_helper_linux.c", 244*0d6140beSAndroid Build Coastguard Worker "mediatek_i2c_spi.c", 245*0d6140beSAndroid Build Coastguard Worker "raiden_debug_spi.c", 246*0d6140beSAndroid Build Coastguard Worker "usb_device.c", 247*0d6140beSAndroid Build Coastguard Worker "realtek_mst_i2c_spi.c", 248*0d6140beSAndroid Build Coastguard Worker "serprog.c", 249*0d6140beSAndroid Build Coastguard Worker "serial.c", 250*0d6140beSAndroid Build Coastguard Worker "stlinkv3_spi.c", 251*0d6140beSAndroid Build Coastguard Worker "usbdev.c", 252*0d6140beSAndroid Build Coastguard Worker 253*0d6140beSAndroid Build Coastguard Worker // Platform 254*0d6140beSAndroid Build Coastguard Worker "platform/endian_little.c", 255*0d6140beSAndroid Build Coastguard Worker "platform/memaccess.c", 256*0d6140beSAndroid Build Coastguard Worker ], 257*0d6140beSAndroid Build Coastguard Worker 258*0d6140beSAndroid Build Coastguard Worker export_include_dirs: ["include"], 259*0d6140beSAndroid Build Coastguard Worker static_libs: ["libz"], 260*0d6140beSAndroid Build Coastguard Worker 261*0d6140beSAndroid Build Coastguard Worker} 262*0d6140beSAndroid Build Coastguard Worker 263*0d6140beSAndroid Build Coastguard Workercc_binary { 264*0d6140beSAndroid Build Coastguard Worker name: "flashrom", 265*0d6140beSAndroid Build Coastguard Worker defaults: ["flashrom_defaults"], 266*0d6140beSAndroid Build Coastguard Worker vendor: true, 267*0d6140beSAndroid Build Coastguard Worker 268*0d6140beSAndroid Build Coastguard Worker srcs: [ 269*0d6140beSAndroid Build Coastguard Worker "cli_classic.c", 270*0d6140beSAndroid Build Coastguard Worker "cli_common.c", 271*0d6140beSAndroid Build Coastguard Worker "cli_output.c", 272*0d6140beSAndroid Build Coastguard Worker ], 273*0d6140beSAndroid Build Coastguard Worker 274*0d6140beSAndroid Build Coastguard Worker shared_libs: ["libflashrom"], 275*0d6140beSAndroid Build Coastguard Worker} 276