// Copyright 2018 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#pragma once

// clang-format off

#define CYPRESS_VID          0x04B4
#define FLASH_PROGRAMMER_PID 0x4720

// Vendor commands
#define FLASH_PROGRAMMER_WRITE 0xBA