1*f6470b5eSDaniel Hsu #include "cpld/cpld_interface.hpp" 2*f6470b5eSDaniel Hsu 3*f6470b5eSDaniel Hsu namespace phosphor::software::cpld 4*f6470b5eSDaniel Hsu { 5*f6470b5eSDaniel Hsu 6*f6470b5eSDaniel Hsu class LatticeCPLD : public CPLDInterface 7*f6470b5eSDaniel Hsu { 8*f6470b5eSDaniel Hsu public: LatticeCPLD(sdbusplus::async::context & ctx,const std::string & chipname,uint16_t bus,uint8_t address)9*f6470b5eSDaniel Hsu LatticeCPLD(sdbusplus::async::context& ctx, const std::string& chipname, 10*f6470b5eSDaniel Hsu uint16_t bus, uint8_t address) : 11*f6470b5eSDaniel Hsu CPLDInterface(ctx, chipname, bus, address) 12*f6470b5eSDaniel Hsu {} 13*f6470b5eSDaniel Hsu 14*f6470b5eSDaniel Hsu sdbusplus::async::task<bool> updateFirmware( 15*f6470b5eSDaniel Hsu bool force, const uint8_t* image, size_t imageSize, 16*f6470b5eSDaniel Hsu std::function<bool(int)> progress) final; 17*f6470b5eSDaniel Hsu 18*f6470b5eSDaniel Hsu sdbusplus::async::task<bool> getVersion(std::string& version) final; 19*f6470b5eSDaniel Hsu }; 20*f6470b5eSDaniel Hsu 21*f6470b5eSDaniel Hsu } // namespace phosphor::software::cpld 22