On Sat, 2022-12-17 at 15:02 -0700, Simon Glass wrote: > Hi Ivan, > > On Tue, 13 Dec 2022 at 11:51, Ivan Mikhaylov <fr0st6...@gmail.com> > wrote: > > > > On Fri, 2022-11-18 at 13:50 -0700, Simon Glass wrote: > > > Hi Ivan, > > > > > > On Thu, 15 Sept 2022 at 13:44, Ivan Mikhaylov > > > <fr0st6...@gmail.com> > > > wrote: > > > > > > > > On Wed, 2022-09-07 at 15:10 -0600, Simon Glass wrote: > > > > > Hi Ivan, > > > > > > > > > > Section data comes from the BuildSectionData() method, so you > > > > > could > > > > > try calling that. > > > > > > > > > > See also collect_contents_to_file() > > > > > > > > > > Regards, > > > > > Simon > > > > > > > > Simon, I've tried both these ways and they both don't work to > > > > me. > > > > What > > > > I've got: > > > > > > > > def SignEntries(image_fname, input_fname, privatekey_fname, > > > > algo, > > > > entry_paths): > > > > image_fname = os.path.abspath(image_fname) > > > > image = Image.FromFile(image_fname) > > > > state.PrepareFromLoadedData(image) > > > > image.LoadData() > > > > > > > > 1. BuildSectionData > > > > > > > > for entry_path in entry_paths: > > > > entry = image.FindEntryPath(entry_path) > > > > > > > > try: > > > > entry.BuildSectionData(True) > > > > except Exception as e: > > > > logging.error(traceback.format_exc()) > > > > > > > > > > > > ERROR:root:AttributeError: 'NoneType' object has no attribute > > > > 'run' > > > > Hi Simon, sorry for long delay. > > > > binman: 'NoneType' object has no attribute 'run' > > > > Traceback (most recent call last): > > File "/home/fr/upstream_uboot/tools/binman/binman", line 133, in > > RunBinman > > ret_code = control.Binman(args) > > File "/home/fr/upstream_uboot/tools/binman/control.py", line 684, > > in > > Binman > > SignEntries(args.image, args.file, args.key, args.algo, > > args.paths) > > File "/home/fr/upstream_uboot/tools/binman/control.py", line 469, > > in > > SignEntries > > entry.BuildSectionData(True) > > File "/home/fr/upstream_uboot/tools/binman/etype/fit.py", line > > 426, > > in BuildSectionData > > if self.mkimage.run(reset_timestamp=True, > > output_fname=output_fname, > > AttributeError: 'NoneType' object has no attribute 'run' > > > > You need to call image.CollectBintolls() like ReadEntry() and other > functions similar to yours that read images from a file. This is the > only way that the 'mkimage' tool becomes available to fit.py > > See fit.AddBintools() which is called by that function and sets > 'self.mkimage' > > Simon, thanks, now this part works fine but there is still issue with updating of fit section, saw that there exists some functions like WriteData but for section(etype/fit.py) it is not implemented yet.
ValueError: Node '/fit': Replacing sections is not implemented yet Also tried SetContents but it doesn't update fit section in place. Any suggestions here? Thanks.