# Copyright 2018 The Chromium OS Authors. All rights reserved.
# Distributed under the terms of the GNU General Public License v2

EAPI=6

DESCRIPTION="PS8805-A2 Firmware Binary"
SRC_URI="gs://chromeos-localmirror/distfiles/${P}.tar.xz"

LICENSE="Google-Partners-Website"
SLOT="0"
KEYWORDS="*"
IUSE=""

S="${WORKDIR}"

# We must ensure that the older private package is not installed
DEPEND="
	!sys-boot/chromeos-firmware-ps8805
"

RDEPEND="${DEPEND}"

# Here are the steps to uprev the PS8805 firmware.
#
# 1) Unzip the .zip file emailed from the vendor.
# 2) Convert from hex to bin.
#    ex: objcopy -I ihex --output-target=binary PS8805_FW_0x0C_20180810_A2.hex \
#          parade-ps8805a2-firmware-12/ps8805_a2_0x0c.bin
# 3) Tarball it up using XZ, including the right directory.
#    ex: tar -cJf parade-ps8805a2-firmware-12.tar.xz \
#          parade-ps8805a2-firmware-12/ps8805_a2_0x0c.bin
# 4) Then upload it at https://pantheon.corp.google.com/storage/browser/chromeos-localmirror/distfiles
# 5) On the uploaded file, click the three-dot-menu, "Edit Permissions", and
#    add a new User "allUsers" with Reader permission.
# 6) Finally run `ebuild parade-ps8805a2-firmware-8.ebuild manifest`

src_install() {
	local fw_rev_hex=$(printf '%02x' "${PV}")
	local bf=ps8805_a2.bin
	local hf=ps8805_a2.hash

	printf "\\xa2\\x${fw_rev_hex}" > "${hf}"
	insinto /firmware/ps8805
	newins "${hf}" "${hf}"
	newins "${P}/ps8805_a2_0x${fw_rev_hex}.bin" "${bf}"
}
