Re: [PATCH] prereq-build: require python3-distutils

2021-08-23 Thread Andre Heider

Nice, sounds good, thanks!

On 23/08/2021 23:12, Hauke Mehrtens wrote:

Hi Andre,

I will backport this to 21.02 in the next days. I want to wait if there 
are more problems showing up in master.


Hauke

On 8/23/21 10:47 PM, Andre Heider wrote:

Hi Hauke,

thanks for merging the patch!

Can we also get this cherry-picked to the 21.02 branch, please?

Jeffery makes some good points as to why here:
https://github.com/openwrt/packages/pull/16304#issuecomment-904097018

I too can see that package backports could get unnecessarily painful 
in the future without this in 21.02.


Thanks,
Andre

On 10/08/2021 12:22, Andre Heider wrote:

Debian and Ubuntu ship a python3-minimal package which does not include
the distutils module. This is not supported by upstream and can be
considered a broken python distribution.

In practice, many scripts depend on said module, and this is a 
reoccuring

pain point for building various OpenWrt packages.

Require and check for said module, enough time has been wasted on this.

A list of just the most recent issues:
https://github.com/openwrt/packages/pull/16304
https://github.com/openwrt/packages/pull/16027
https://github.com/openwrt/packages/pull/15443
https://github.com/openwrt/packages/pull/14394
https://github.com/openwrt/packages/pull/12909
https://github.com/openwrt/packages/issues/12443
https://github.com/openwrt/packages/pull/11035
https://github.com/openwrt/packages/issues/10993

Signed-off-by: Andre Heider 
---
  include/prereq-build.mk | 4 
  1 file changed, 4 insertions(+)

diff --git a/include/prereq-build.mk b/include/prereq-build.mk
index 8fbf6f22c4..922e7c544b 100644
--- a/include/prereq-build.mk
+++ b/include/prereq-build.mk
@@ -170,6 +170,10 @@ $(eval $(call SetupHostCommand,python3,Please 
install Python >= 3.6, \

  python3.6 -V 2>&1 | grep 'Python 3', \
  python3 -V 2>&1 | grep -E 'Python 3\.[6-9]\.?'))
+$(eval $(call TestHostCommand,python3-distutils, \
+    Please install the Python3 distutils module, \
+    $(STAGING_DIR_HOST)/bin/python3 -c 'import distutils'))
+
  $(eval $(call SetupHostCommand,git,Please install Git (git-core) >= 
1.7.12.2, \
  git --exec-path | xargs -I % -- grep -q -- --recursive 
%/git-submodule))









___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH] prereq-build: require python3-distutils

2021-08-23 Thread Hauke Mehrtens

Hi Andre,

I will backport this to 21.02 in the next days. I want to wait if there 
are more problems showing up in master.


Hauke

On 8/23/21 10:47 PM, Andre Heider wrote:

Hi Hauke,

thanks for merging the patch!

Can we also get this cherry-picked to the 21.02 branch, please?

Jeffery makes some good points as to why here:
https://github.com/openwrt/packages/pull/16304#issuecomment-904097018

I too can see that package backports could get unnecessarily painful in 
the future without this in 21.02.


Thanks,
Andre

On 10/08/2021 12:22, Andre Heider wrote:

Debian and Ubuntu ship a python3-minimal package which does not include
the distutils module. This is not supported by upstream and can be
considered a broken python distribution.

In practice, many scripts depend on said module, and this is a reoccuring
pain point for building various OpenWrt packages.

Require and check for said module, enough time has been wasted on this.

A list of just the most recent issues:
https://github.com/openwrt/packages/pull/16304
https://github.com/openwrt/packages/pull/16027
https://github.com/openwrt/packages/pull/15443
https://github.com/openwrt/packages/pull/14394
https://github.com/openwrt/packages/pull/12909
https://github.com/openwrt/packages/issues/12443
https://github.com/openwrt/packages/pull/11035
https://github.com/openwrt/packages/issues/10993

Signed-off-by: Andre Heider 
---
  include/prereq-build.mk | 4 
  1 file changed, 4 insertions(+)

diff --git a/include/prereq-build.mk b/include/prereq-build.mk
index 8fbf6f22c4..922e7c544b 100644
--- a/include/prereq-build.mk
+++ b/include/prereq-build.mk
@@ -170,6 +170,10 @@ $(eval $(call SetupHostCommand,python3,Please 
install Python >= 3.6, \

  python3.6 -V 2>&1 | grep 'Python 3', \
  python3 -V 2>&1 | grep -E 'Python 3\.[6-9]\.?'))
+$(eval $(call TestHostCommand,python3-distutils, \
+    Please install the Python3 distutils module, \
+    $(STAGING_DIR_HOST)/bin/python3 -c 'import distutils'))
+
  $(eval $(call SetupHostCommand,git,Please install Git (git-core) >= 
1.7.12.2, \
  git --exec-path | xargs -I % -- grep -q -- --recursive 
%/git-submodule))








OpenPGP_0x93DD20630910B515.asc
Description: OpenPGP public key


OpenPGP_signature
Description: OpenPGP digital signature
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH] prereq-build: require python3-distutils

2021-08-23 Thread Andre Heider

Hi Hauke,

thanks for merging the patch!

Can we also get this cherry-picked to the 21.02 branch, please?

Jeffery makes some good points as to why here:
https://github.com/openwrt/packages/pull/16304#issuecomment-904097018

I too can see that package backports could get unnecessarily painful in 
the future without this in 21.02.


Thanks,
Andre

On 10/08/2021 12:22, Andre Heider wrote:

Debian and Ubuntu ship a python3-minimal package which does not include
the distutils module. This is not supported by upstream and can be
considered a broken python distribution.

In practice, many scripts depend on said module, and this is a reoccuring
pain point for building various OpenWrt packages.

Require and check for said module, enough time has been wasted on this.

A list of just the most recent issues:
https://github.com/openwrt/packages/pull/16304
https://github.com/openwrt/packages/pull/16027
https://github.com/openwrt/packages/pull/15443
https://github.com/openwrt/packages/pull/14394
https://github.com/openwrt/packages/pull/12909
https://github.com/openwrt/packages/issues/12443
https://github.com/openwrt/packages/pull/11035
https://github.com/openwrt/packages/issues/10993

Signed-off-by: Andre Heider 
---
  include/prereq-build.mk | 4 
  1 file changed, 4 insertions(+)

diff --git a/include/prereq-build.mk b/include/prereq-build.mk
index 8fbf6f22c4..922e7c544b 100644
--- a/include/prereq-build.mk
+++ b/include/prereq-build.mk
@@ -170,6 +170,10 @@ $(eval $(call SetupHostCommand,python3,Please install Python 
>= 3.6, \
python3.6 -V 2>&1 | grep 'Python 3', \
python3 -V 2>&1 | grep -E 'Python 3\.[6-9]\.?'))
  
+$(eval $(call TestHostCommand,python3-distutils, \

+   Please install the Python3 distutils module, \
+   $(STAGING_DIR_HOST)/bin/python3 -c 'import distutils'))
+
  $(eval $(call SetupHostCommand,git,Please install Git (git-core) >= 1.7.12.2, 
\
git --exec-path | xargs -I % -- grep -q -- --recursive %/git-submodule))
  




___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[PATCH v4] ath79: add support for onion omega

2021-08-23 Thread Jan-Niklas Burfeind
The Onion Omega is a hardware development platform with built-in WiFi.

https://onioniot.github.io/wiki/

Specifications:
 - QCA9331 @ 400 MHz (MIPS 24Kc Big-Endian Processor)
 - 64MB of DDR2 RAM running at 400 MHz
 - 16MB of on-board flash storage
 - Support for USB 2.0
 - Support for Ethernet at 100 Mbps
 - 802.11b/g/n WiFi at 150 Mbps
 - 18 digital GPIOs
 - A single Serial UART
 - Support for SPI
 - Support for I2S

Flash instructions:
The device is running OpenWrt upon release using the ar71xx target.
Both a sysupgrade
and uploading the factory image using u-boots web-UI do work fine.

Depending on the ssh client, it might be necessary to enable outdated
KeyExchange methods e.g. in the clients ssh-config:

Host 192.168.1.1
KexAlgorithms +diffie-hellman-group1-sha1

The stock credentials are: root onioneer

For u-boots web-UI manually configure `192.168.1.2/24` on your computer,
connect to `192.168.1.1`.

MAC addresses as verified by OEM firmware:
2G   phy0  label
LAN  eth0  label - 1

LAN is only available in combination with an optional expansion dock.

Based on vendor acked commit:
commit 5cd49bb067ca ("ar71xx: add support for Onion Omega")

Partly reverts:
commit fc553c7e4c8e ("ath79: drop unused/incomplete dts")

Signed-off-by: Jan-Niklas Burfeind 
---

I adressed Adrians comments on v3 and built and deployed the image.
Everything seems to work as well as before.

Thanks!
Aiyion

 target/linux/ath79/dts/ar9331_onion_omega.dts | 137 ++
 .../generic/base-files/etc/board.d/02_network |   1 +
 target/linux/ath79/image/generic.mk   |  13 ++
 3 files changed, 151 insertions(+)
 create mode 100644 target/linux/ath79/dts/ar9331_onion_omega.dts

diff --git a/target/linux/ath79/dts/ar9331_onion_omega.dts 
b/target/linux/ath79/dts/ar9331_onion_omega.dts
new file mode 100644
index 00..09e4234194
--- /dev/null
+++ b/target/linux/ath79/dts/ar9331_onion_omega.dts
@@ -0,0 +1,137 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+
+#include "ar9331.dtsi"
+
+#include 
+#include 
+
+/ {
+   model = "Onion Omega";
+   compatible = "onion,omega", "qca,ar9331";
+
+   aliases {
+   serial0 = 
+   label-mac-device = 
+   led-boot = _system;
+   led-failsafe = _system;
+   led-running = _system;
+   led-upgrade = _system;
+   };
+
+   leds {
+   compatible = "gpio-leds";
+
+   led_system: system {
+   label = "amber:system";
+   gpios = < 27 GPIO_ACTIVE_LOW>;
+   };
+   };
+
+   keys {
+   compatible = "gpio-keys";
+
+   reset {
+   label = "reset";
+   linux,code = ;
+   gpios = < 11 GPIO_ACTIVE_HIGH>;
+   debounce-interval = <60>;
+   };
+   };
+
+   reg_usb_vbus: reg_usb_vbus {
+   compatible = "regulator-fixed";
+   regulator-name = "usb_vbus";
+   regulator-min-microvolt = <500>;
+   regulator-max-microvolt = <500>;
+   gpio = < 8 GPIO_ACTIVE_HIGH>;
+   enable-active-high;
+   };
+};
+
+ {
+   clock-frequency = <2500>;
+};
+
+ {
+   status = "okay";
+
+   vbus-supply = <_usb_vbus>;
+   dr_mode = "host";
+};
+
+_phy {
+   status = "okay";
+};
+
+ {
+   status = "okay";
+
+   compatible = "syscon", "simple-mfd";
+};
+
+ {
+   status = "okay";
+
+   nvmem-cells = <_uboot_1fc00>;
+   nvmem-cell-names = "mac-address";
+   mac-address-increment = <(-1)>;
+
+   gmac-config {
+   device = <>;
+   switch-phy-addr-swap = <4>;
+   switch-phy-swap = <4>;
+   };
+};
+
+ {
+   status = "okay";
+
+   flash@0 {
+   compatible = "jedec,spi-nor";
+   spi-max-frequency = <2500>;
+   reg = <0>;
+
+   partitions {
+   compatible = "fixed-partitions";
+   #address-cells = <1>;
+   #size-cells = <1>;
+
+   uboot: partition@0 {
+   label = "u-boot";
+   reg = <0x00 0x02>;
+   read-only;
+   };
+
+   partition@2 {
+   compatible = "tplink,firmware";
+   label = "firmware";
+   reg = <0x02 0xfd>;
+   };
+
+   art: partition@ff {
+   label = "art";
+   reg = <0xff 0x01>;
+   read-only;
+   };
+   };
+   };
+};
+
+ {
+   status = "okay";
+
+   mtd-cal-data = < 0x1000>;
+
+   

Re: [PATCH v4] ath79: add support for onion omega

2021-08-23 Thread Jan-Niklas Burfeind
On 8/22/21 2:18 PM, Adrian Schmutzler wrote:
> It's common practice at the moment to put a separate block for defining the 
> MAC addresses at the end of the file.
> Please do so, just look at any other DTS file in recent master.

I was under the impression that the separate block was part of a scripts
output and not intended in the first place.
Is there any documentation on this matter, that I can read up on?

Thanks
Aiyion


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: bug in base-files: add option to make /var persistent ?

2021-08-23 Thread Stijn Tintel
On 23/08/2021 10:22, e9hack wrote:
> Hi,
>
> I didn't select 'make /var persistent' but /var is generated
> persistent. I think in the Makefile the test for
> CONFIG_TARGET_ROOTFS_PERSIST_VAR = n must be changed to y (or empty).
>
> --- a/package/base-files/Makefile
> +++ b/package/base-files/Makefile
> @@ -181,12 +181,12 @@ define Package/base-files/install
>  mkdir -p $(1)/www
>  mkdir -p $(1)/root
>  $(LN) /proc/mounts $(1)/etc/mtab
> -ifeq ($(CONFIG_TARGET_ROOTFS_PERSIST_VAR),n)
> -    rm -f $(1)/var
> -    $(LN) tmp $(1)/var
> -else
> +ifeq ($(CONFIG_TARGET_ROOTFS_PERSIST_VAR),y)
>  mkdir -p $(1)/var
>  $(LN) /tmp/run $(1)/var/run
> +else
> +    rm -f $(1)/var
> +    $(LN) tmp $(1)/var
>  endif
>  mkdir -p $(1)/etc
>  $(LN) /tmp/resolv.conf /tmp/TZ /tmp/localtime $(1)/etc/ 


Good catch. I had initially named the option CONFIG_LN_VAR_TMP or
something, but didn't like the name. Guess I didn't think things through
when renaming the option. Sorry about that. Will push a fix.

Thanks,
Stijn


___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [PATCH v3] ath79: add support for onion omega

2021-08-23 Thread Mike Bernardo
Hi,

Thanks for the reply, I did not realize that this is for an Omega rather than 
Omega2+ which is what I have :facepalm:

It looks like there is already support for the omega2+, which is working for me 
right now.


> On 2021/08/22, at 17:25:02 CDT (-05:00), Lech Perczak 
>  wrote:
> 
> Hi,
> Answer below.
> 
> W dniu 2021-08-22 o 21:29, Mike Bernardo pisze:
>> Hi All,
>> 
>> Thanks Jan-Niklas for working on this! I am trying to test this on my onion 
>> omega2+ (in the arduino dock) .. consoled in via a TTL serial adapter and I 
>> tried doing a forced sysupgrade to 
>> openwrt-ath79-generic-onion_omega-squashfs-sysupgrade.bin which I built by 
>> applying the patch to v21.02.0-rc4 
>> (134ac824c5a154edbbe1c581bcbc42d265dc20c0). I tried forcing after sysupgrade 
>> said that it didn't support omega2p .. now it won't boot, any ideas? Boot 
>> attempt below.
>> 
>> Note that the below is after I tried flashing 
>> openwrt-ath79-generic-onion_omega-squashfs-factory.bin via usb (filename 
>> omega2.bin put on a FAT16 filesystem and you select usb flash in the menu 
>> after tapping the reset button on powerup. Failing with the same message 
>> though.
>> 
>> --
>> 
>> Board: Onion Omega2 APSoC DRAM:  128 MB
>> relocate_code Pointer at: 87f6
>> **
>> Software System Reset Occurred
>> **
>> flash manufacture id: c2, device id 20 19
>> find flash: MX25L25635E
>> *** Warning - bad CRC, using default environment
>> 
>> 
>> Onion Omega2 UBoot Version: 4.3.0.3
>> 
>> ASIC 7628_MP (Port5<->None)
>> DRAM component: 1024 Mbits DDR, width 16
>> DRAM bus: 16 bit
>> Total memory: 128 MBytes
>> Flash component: SPI Flash
>> Date:Oct 18 2016  Time:17:29:05
>> 
>> icache: sets:512, ways:4, linesz:32 ,total:65536
>> dcache: sets:256, ways:4, linesz:32 ,total:32768
>> CPU freq = 575 MHZ
>> Estimated memory size = 128 Mbytes
>> Resetting MT7628 PHY.
>> Initializing MT7688 GPIO system.
>> 
>> 
>> **
>> * Hold Reset button for more options *
>> **
>> 
>> 
>> 
>> Boot Linux from Flash NO RESET PRESSED.
>> ## Booting image at bc05 ...
>> Bad Magic Number,0100
> 
> Long story short, you tried loading an image for ath79 architecture (QCA9331 
> in this case) on an MT7628 board. You probably need to use U-boot console to 
> flash correct image for your device over TFTP.
>> 
>> 
>>> On 2021/08/22, at 07:18:32 CDT (-05:00), Adrian Schmutzler 
>>>  wrote:
>>> 
>>> Hi,
>>> 
 -Original Message-
 From: openwrt-devel [mailto:openwrt-devel-boun...@lists.openwrt.org]
 On Behalf Of Jan-Niklas Burfeind
 Sent: Samstag, 14. August 2021 15:55
 To: openwrt-devel@lists.openwrt.org
 Cc: open...@sebastianschaper.net; m...@david-bauer.net; Jan-Niklas
 Burfeind
 Subject: [PATCH v3] ath79: add support for onion omega
>>> some inline comments below.
>>> 
 The Onion Omega is a hardware development platform with built-in WiFi.
 
 https://onioniot.github.io/wiki/
 
 Specifications:
 - QCA9331 @ 400 MHz (MIPS 24Kc Big-Endian Processor)
 - 64MB of DDR2 RAM running at 400 MHz
 - 16MB of on-board flash storage
 - Support for USB 2.0
 - Support for Ethernet at 100 Mbps
 - 802.11b/g/n WiFi at 150 Mbps
 - 18 digital GPIOs
 - A single Serial UART
 - Support for SPI
 - Support for I2S
 
 Flash instructions:
 The device is running OpenWrt upon release using the ar71xx target.
 Both a sysupgrade
 and uploading the factory image using u-boots web-UI do work fine.
 
 Depending on the ssh client, it might be necessary to enable outdated
 KeyExchange methods e.g. in the clients ssh-config:
 
 Host 192.168.1.1
KexAlgorithms +diffie-hellman-group1-sha1
 
 The stock credentials are: root onioneer
 
 For u-boots web-UI manually configure `192.168.1.2/24` on your computer,
 connect to `192.168.1.1`.
 
 MAC addresses as verified by OEM firmware:
 2G   phy0  label
 LAN  eth0  label - 1
 
 LAN is only available in combination with an optional expansion dock.
 
 Based on vendor acked commit:
 commit 5cd49bb067ca ("ar71xx: add support for Onion Omega")
 
 Partly reverts:
 commit fc553c7e4c8e ("ath79: drop unused/incomplete dts")
 
 Signed-off-by: Jan-Niklas Burfeind 
 ---
 kmod-usb-chipidea2 is now included as well as tested; usb devices are now
 recognized.
 
 I added the usb vbus section, like the pisen wmm003n has it and verified 
 the
 gpio looking at the ar71xx commit.
 
 target/linux/ath79/dts/ar9331_onion_omega.dts | 137
 ++
 .../generic/base-files/etc/board.d/02_network |   1 +
 

bug in base-files: add option to make /var persistent ?

2021-08-23 Thread e9hack

Hi,

I didn't select 'make /var persistent' but /var is generated persistent. I 
think in the Makefile the test for CONFIG_TARGET_ROOTFS_PERSIST_VAR = n must be 
changed to y (or empty).

--- a/package/base-files/Makefile
+++ b/package/base-files/Makefile
@@ -181,12 +181,12 @@ define Package/base-files/install
mkdir -p $(1)/www
mkdir -p $(1)/root
$(LN) /proc/mounts $(1)/etc/mtab
-ifeq ($(CONFIG_TARGET_ROOTFS_PERSIST_VAR),n)
-   rm -f $(1)/var
-   $(LN) tmp $(1)/var
-else
+ifeq ($(CONFIG_TARGET_ROOTFS_PERSIST_VAR),y)
mkdir -p $(1)/var
$(LN) /tmp/run $(1)/var/run
+else
+   rm -f $(1)/var
+   $(LN) tmp $(1)/var
 endif
mkdir -p $(1)/etc
$(LN) /tmp/resolv.conf /tmp/TZ /tmp/localtime $(1)/etc/

Regards,
Hartmut

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel