[OpenWrt-Devel] [PATCH v2 12/14] package/base-files: add caldata_sysfsload_from_file()

mail at adrianschmutzler.de mail at adrianschmutzler.de
Mon Apr 20 10:21:10 EDT 2020


Hi again,

> -----Original Message-----
> From: openwrt-devel [mailto:openwrt-devel-bounces at lists.openwrt.org]
> On Behalf Of mail at adrianschmutzler.de
> Sent: Montag, 20. April 2020 16:14
> To: 'Thibaut VARÈNE' <hacks at slashdirt.org>; openwrt-
> devel at lists.openwrt.org
> Cc: koen.vandeputte at ncentric.com
> Subject: Re: [OpenWrt-Devel] [PATCH v2 12/14] package/base-files: add
> caldata_sysfsload_from_file()
> 
> Hi,
> 
> > -----Original Message-----
> > From: openwrt-devel [mailto:openwrt-devel-bounces at lists.openwrt.org]
> > On Behalf Of Thibaut VARÈNE
> > Sent: Montag, 20. April 2020 15:35
> > To: openwrt-devel at lists.openwrt.org
> > Cc: Thibaut VARÈNE <hacks at slashdirt.org>;
> koen.vandeputte at ncentric.com
> > Subject: [OpenWrt-Devel] [PATCH v2 12/14] package/base-files: add
> > caldata_sysfsload_from_file()
> >
> > This routine enables loading caldata binary via the kernel sysfs
> > loader
> >
> > Signed-off-by: Thibaut VARÈNE <hacks at slashdirt.org>
> > ---
> >  package/base-files/Makefile                       |  2 +-
> >  package/base-files/files/lib/functions/caldata.sh | 15
> > +++++++++++++++
> >  2 files changed, 16 insertions(+), 1 deletion(-)
> >
> > diff --git a/package/base-files/Makefile b/package/base-files/Makefile
> > index
> > f1f0f17a60..d8e7c31878 100644
> > --- a/package/base-files/Makefile
> > +++ b/package/base-files/Makefile
> > @@ -12,7 +12,7 @@ include $(INCLUDE_DIR)/version.mk  include
> > $(INCLUDE_DIR)/feeds.mk
> >
> >  PKG_NAME:=base-files
> > -PKG_RELEASE:=219
> > +PKG_RELEASE:=220
> >  PKG_FLAGS:=nonshared
> >
> >  PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/
> > $(GENERIC_PLATFORM_DIR)/base-files/
> > diff --git a/package/base-files/files/lib/functions/caldata.sh
> > b/package/base- files/files/lib/functions/caldata.sh
> > index e9349c7eee..a64f07778d 100644
> > --- a/package/base-files/files/lib/functions/caldata.sh
> > +++ b/package/base-files/files/lib/functions/caldata.sh
> > @@ -68,6 +68,21 @@ caldata_from_file() {
> >  		caldata_die "failed to extract calibration data from $source"
> >  }
> >
> > +caldata_sysfsload_from_file() {
> 
> Didn't get that at first. Maybe choose something like caldata_file_to_sysfs()?
> 
> > +	local source=$1
> > +	local offset=$(($2))
> > +	local count=$(($3))
> > +
> > +	# test extract to /dev/null first
> > +	dd if=$source of=/dev/null iflag=skip_bytes bs=$count skip=$offset
> > count=1 2>/dev/null || \
> > +		caldata_die "failed to extract calibration data from $source"
> > +
> > +	# can't fail now
> > +	echo 1 > /sys/$DEVPATH/loading
> 
> Maybe make $DEVPATH or /sys/$DEVPATH an argument?

On a second thought: That's not so much different from how we handle /lib/firmware/$FIRMWARE in this file.

Can you comment on whether the implementation of /sys/$DEVPATH will be as generic as /lib/firmware/$FIRMWARE? (Then we could keep it your way)
Or is this dependent on your driver implementation, and thus specific to mikrotik? Then, we could still keep it in base-files, but should reflect that in the function name.

Best

Adrian

> 
> Best
> 
> Adrian
> 
> > +	dd if=$source of=/sys/$DEVPATH/data iflag=skip_bytes bs=$count
> > skip=$offset count=1 2>/dev/null
> > +	echo 0 > /sys/$DEVPATH/loading
> > +}
> > +
> >  caldata_valid() {
> >  	local expected="$1"
> >  	local target=$2
> > --
> > 2.11.0
> >
> >
> > _______________________________________________
> > openwrt-devel mailing list
> > openwrt-devel at lists.openwrt.org
> > https://lists.openwrt.org/mailman/listinfo/openwrt-devel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: openpgp-digital-signature.asc
Type: application/pgp-signature
Size: 834 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/openwrt-devel/attachments/20200420/de02d0d3/attachment.sig>
-------------- next part --------------
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list