diff mbox

ARM: dts: BCM5301X: Add basic DT for Linksys EA9500

Message ID 20170223104025.5755-1-zajec5@gmail.com (mailing list archive)
State Changes Requested, archived
Headers show

Commit Message

Rafał Miłecki Feb. 23, 2017, 10:40 a.m. UTC
From: Rafał Miłecki <rafal@milecki.pl>

It's tri-band wireless home router based on BCM47094 AKA BCM4709C0. It
uses 3 x BCM4366 chipsets for wireless.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
---
 arch/arm/boot/dts/Makefile                    |  1 +
 arch/arm/boot/dts/bcm47094-linksys-ea9500.dts | 36 +++++++++++++++++++++++++++
 2 files changed, 37 insertions(+)
 create mode 100644 arch/arm/boot/dts/bcm47094-linksys-ea9500.dts

Comments

Imre Kaloz Feb. 23, 2017, 12:27 p.m. UTC | #1
Hi Rafal,

As discussed for other platforms as well, please use the board's name as 
the same board can end up being sold under multiple model numbers.

So please rename the file to bcm47094-linksys-panamera.dts


Best,

Imre


On 2017-02-23 11:40, Rafał Miłecki wrote:
> From: Rafał Miłecki <rafal@milecki.pl>
>
> It's tri-band wireless home router based on BCM47094 AKA BCM4709C0. It
> uses 3 x BCM4366 chipsets for wireless.
>
> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
> ---
>  arch/arm/boot/dts/Makefile                    |  1 +
>  arch/arm/boot/dts/bcm47094-linksys-ea9500.dts | 36 +++++++++++++++++++++++++++
>  2 files changed, 37 insertions(+)
>  create mode 100644 arch/arm/boot/dts/bcm47094-linksys-ea9500.dts
>
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index 52a05289c538..931db0b41246 100644
> --- a/arch/arm/boot/dts/Makefile
> +++ b/arch/arm/boot/dts/Makefile
> @@ -93,6 +93,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \
>  	bcm4709-netgear-r8000.dtb \
>  	bcm4709-tplink-archer-c9-v1.dtb \
>  	bcm47094-dlink-dir-885l.dtb \
> +	bcm47094-linksys-ea9500.dtb \
>  	bcm47094-luxul-xwr-3100.dtb \
>  	bcm47094-netgear-r8500.dtb \
>  	bcm94708.dtb \
> diff --git a/arch/arm/boot/dts/bcm47094-linksys-ea9500.dts b/arch/arm/boot/dts/bcm47094-linksys-ea9500.dts
> new file mode 100644
> index 000000000000..31639e5b8c72
> --- /dev/null
> +++ b/arch/arm/boot/dts/bcm47094-linksys-ea9500.dts
> @@ -0,0 +1,36 @@
> +/*
> + * Copyright (C) 2017 Rafał Miłecki <rafal@milecki.pl>
> + *
> + * Licensed under the ISC license.
> + */
> +
> +/dts-v1/;
> +
> +#include "bcm47094.dtsi"
> +#include "bcm5301x-nand-cs0-bch8.dtsi"
> +
> +/ {
> +	compatible = "linksys,ea9500", "brcm,bcm47094", "brcm,bcm4708";
> +	model = "Linksys EA9500";
> +
> +	chosen {
> +		bootargs = "console=ttyS0,115200";
> +	};
> +
> +	memory {
> +		reg = <0x00000000 0x08000000
> +		       0x88000000 0x08000000>;
> +	};
> +
> +	gpio-keys {
> +		compatible = "gpio-keys";
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +
> +		wps {
> +			label = "WPS";
> +			linux,code = <KEY_WPS_BUTTON>;
> +			gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>;
> +		};
> +	};
> +};
>
Rafał Miłecki Feb. 23, 2017, 12:29 p.m. UTC | #2
On 23 February 2017 at 13:27, Imre Kaloz <kaloz@openwrt.org> wrote:
> As discussed for other platforms as well, please use the board's name as the
> same board can end up being sold under multiple model numbers.
>
> So please rename the file to bcm47094-linksys-panamera.dts

Huh? Where did you get panamera name from?!
Imre Kaloz Feb. 23, 2017, 12:44 p.m. UTC | #3
Dear Rafal,

On 2017-02-23 13:29, Rafał Miłecki wrote:
> On 23 February 2017 at 13:27, Imre Kaloz <kaloz@openwrt.org> wrote:
>> As discussed for other platforms as well, please use the board's name as the
>> same board can end up being sold under multiple model numbers.
>>
>> So please rename the file to bcm47094-linksys-panamera.dts
> Huh? Where did you get panamera name from?!
Your manners shine on these dark days of winter. For about a decade now, 
http://192.168.1.1/sysinfo.cgi will show you quite a bit of information 
if you are too lazy to look into the GPL tarball or at the original 
bootlogs.


Best,

Imre
Rafał Miłecki Feb. 23, 2017, 12:51 p.m. UTC | #4
On 23 February 2017 at 13:44, Imre Kaloz <kaloz@openwrt.org> wrote:
> On 2017-02-23 13:29, Rafał Miłecki wrote:
>>
>> On 23 February 2017 at 13:27, Imre Kaloz <kaloz@openwrt.org> wrote:
>>>
>>> As discussed for other platforms as well, please use the board's name as
>>> the
>>> same board can end up being sold under multiple model numbers.
>>>
>>> So please rename the file to bcm47094-linksys-panamera.dts
>>
>> Huh? Where did you get panamera name from?!
>
> Your manners shine on these dark days of winter. For about a decade now,
> http://192.168.1.1/sysinfo.cgi will show you quite a bit of information if
> you are too lazy to look into the GPL tarball or at the original bootlogs.

Sadly Linksys doesn't sponsor me or provide me any hardware. The
bootlogs I found:
https://www.snbforums.com/threads/ea9500-serial-console-to-cfe.35228/
http://www.dd-wrt.com/phpBB2/viewtopic.php?t=288470&start=30
didn't include board name. As you probably can guess
http://192.168.1.1/ was useful in my case as well.
Rafał Miłecki Feb. 23, 2017, 12:57 p.m. UTC | #5
On 23 February 2017 at 13:51, Rafał Miłecki <zajec5@gmail.com> wrote:
> On 23 February 2017 at 13:44, Imre Kaloz <kaloz@openwrt.org> wrote:
>> On 2017-02-23 13:29, Rafał Miłecki wrote:
>>>
>>> On 23 February 2017 at 13:27, Imre Kaloz <kaloz@openwrt.org> wrote:
>>>>
>>>> As discussed for other platforms as well, please use the board's name as
>>>> the
>>>> same board can end up being sold under multiple model numbers.
>>>>
>>>> So please rename the file to bcm47094-linksys-panamera.dts
>>>
>>> Huh? Where did you get panamera name from?!
>>
>> Your manners shine on these dark days of winter. For about a decade now,
>> http://192.168.1.1/sysinfo.cgi will show you quite a bit of information if
>> you are too lazy to look into the GPL tarball or at the original bootlogs.
>
> Sadly Linksys doesn't sponsor me or provide me any hardware. The
> bootlogs I found:
> https://www.snbforums.com/threads/ea9500-serial-console-to-cfe.35228/
> http://www.dd-wrt.com/phpBB2/viewtopic.php?t=288470&start=30
> didn't include board name. As you probably can guess
> http://192.168.1.1/ was useful in my case as well.

Or rather "useless" ;)
Imre Kaloz Feb. 23, 2017, 12:59 p.m. UTC | #6
Dear Rafal,

On 2017-02-23 13:51, Rafał Miłecki wrote:
> On 23 February 2017 at 13:44, Imre Kaloz <kaloz@openwrt.org> wrote:
>> On 2017-02-23 13:29, Rafał Miłecki wrote:
>>> On 23 February 2017 at 13:27, Imre Kaloz <kaloz@openwrt.org> wrote:
>>>> As discussed for other platforms as well, please use the board's name as
>>>> the
>>>> same board can end up being sold under multiple model numbers.
>>>>
>>>> So please rename the file to bcm47094-linksys-panamera.dts
>>> Huh? Where did you get panamera name from?!
>> Your manners shine on these dark days of winter. For about a decade now,
>> http://192.168.1.1/sysinfo.cgi will show you quite a bit of information if
>> you are too lazy to look into the GPL tarball or at the original bootlogs.
> Sadly Linksys doesn't sponsor me or provide me any hardware. The
> bootlogs I found:
> https://www.snbforums.com/threads/ea9500-serial-console-to-cfe.35228/
> http://www.dd-wrt.com/phpBB2/viewtopic.php?t=288470&start=30
> didn't include board name. As you probably can guess
> http://192.168.1.1/ was useful in my case as well.
>

I've guessed you have the hardware - so you're submitting dts files 
without testing it? I know they don't do much, but still, this is an 
interesting concept.

Anyways, if you are just adding support for hardware blindly, the dd-wrt 
forum you've mentioned has other posts that might help you [1].


Best,

Imre

[1] http://www.dd-wrt.com/phpBB2/viewtopic.php?p=1062050
Rafał Miłecki Feb. 23, 2017, 1:03 p.m. UTC | #7
On 23 February 2017 at 13:59, Imre Kaloz <kaloz@openwrt.org> wrote:
> On 2017-02-23 13:51, Rafał Miłecki wrote:
>>
>> On 23 February 2017 at 13:44, Imre Kaloz <kaloz@openwrt.org> wrote:
>>>
>>> On 2017-02-23 13:29, Rafał Miłecki wrote:
>>>>
>>>> On 23 February 2017 at 13:27, Imre Kaloz <kaloz@openwrt.org> wrote:
>>>>>
>>>>> As discussed for other platforms as well, please use the board's name
>>>>> as
>>>>> the
>>>>> same board can end up being sold under multiple model numbers.
>>>>>
>>>>> So please rename the file to bcm47094-linksys-panamera.dts
>>>>
>>>> Huh? Where did you get panamera name from?!
>>>
>>> Your manners shine on these dark days of winter. For about a decade now,
>>> http://192.168.1.1/sysinfo.cgi will show you quite a bit of information
>>> if
>>> you are too lazy to look into the GPL tarball or at the original
>>> bootlogs.
>>
>> Sadly Linksys doesn't sponsor me or provide me any hardware. The
>> bootlogs I found:
>> https://www.snbforums.com/threads/ea9500-serial-console-to-cfe.35228/
>> http://www.dd-wrt.com/phpBB2/viewtopic.php?t=288470&start=30
>> didn't include board name. As you probably can guess
>> http://192.168.1.1/ was useful in my case as well.
>>
>
> I've guessed you have the hardware - so you're submitting dts files without
> testing it? I know they don't do much, but still, this is an interesting
> concept.

I'm sending what was tested by EA9500 user:
https://forum.lede-project.org/t/lede-tested-on-linksys-ea9500/1612

I'm planning to add better support for this device, but it requires
extra testing which may take some time. So I just started with what I
can provide so far.
Rafał Miłecki Feb. 24, 2017, 6:02 a.m. UTC | #8
On 23 February 2017 at 13:44, Imre Kaloz <kaloz@openwrt.org> wrote:
> On 2017-02-23 13:29, Rafał Miłecki wrote:
>>
>> On 23 February 2017 at 13:27, Imre Kaloz <kaloz@openwrt.org> wrote:
>>>
>>> As discussed for other platforms as well, please use the board's name as
>>> the
>>> same board can end up being sold under multiple model numbers.
>>>
>>> So please rename the file to bcm47094-linksys-panamera.dts
>>
>> Huh? Where did you get panamera name from?!
>
> Your manners shine on these dark days of winter. For about a decade now,
> http://192.168.1.1/sysinfo.cgi will show you quite a bit of information if
> you are too lazy to look into the GPL tarball or at the original bootlogs.

Today I decided to do my homework & check GPL sources of EA9500 fw.

I grepped them for panamera and I found this name in few files:
./checkpatches
./src/mod_bdutil/platform/brcm/usbhub.h
./src/mod_bdutil/platform/brcm/buttons.h
./src/mod_bdutil/platform/brcm/usbhub.c
./src/mod_bdutil/platform/brcm/leds_panamera.c
./src/mod_bdutil/platform/brcm/leds.c
./src/mod_bdutil/bdutil.h.panamera
./src/mod_bdutil/Makefile.panamera

Unfortunately all these results aren't very clear for getting board
name of EA9500. I checked them and panamera is only one of listed
boards there. E.g. checkpatches contains following lines:
# patched by BRCM for Panamera
# patched by BRCM for F70
# patched by BRCM for Pinnacles
# patched by BRCM for EA9200

So EA9500 board name could be any of above.

Similarly there are following Makefiles in EA9500 GPL package:
Makefile.audi
Makefile.bentley
Makefile.blk-mamba
Makefile.carrera
Makefile.esprit
Makefile.f70
Makefile.focus
Makefile.honda
Makefile.impala
Makefile.lemans
Makefile.mamba
Makefile.panamera
Makefile.pub
Makefile.r8
Makefile.spyder
Makefile.taurus
Makefile.viper
Makefile.viperuivm
Makefile.wraith

So again, any of these name could be EA9500 board name.

Will you be so generous to tell us how did you get EA9500 board name
by just looking at GPL sources?
Rafał Miłecki Feb. 24, 2017, 6:10 a.m. UTC | #9
On 24 February 2017 at 07:02, Rafał Miłecki <zajec5@gmail.com> wrote:
> On 23 February 2017 at 13:44, Imre Kaloz <kaloz@openwrt.org> wrote:
>> On 2017-02-23 13:29, Rafał Miłecki wrote:
>>>
>>> On 23 February 2017 at 13:27, Imre Kaloz <kaloz@openwrt.org> wrote:
>>>>
>>>> As discussed for other platforms as well, please use the board's name as
>>>> the
>>>> same board can end up being sold under multiple model numbers.
>>>>
>>>> So please rename the file to bcm47094-linksys-panamera.dts
>>>
>>> Huh? Where did you get panamera name from?!
>>
>> Your manners shine on these dark days of winter. For about a decade now,
>> http://192.168.1.1/sysinfo.cgi will show you quite a bit of information if
>> you are too lazy to look into the GPL tarball or at the original bootlogs.
>
> Today I decided to do my homework & check GPL sources of EA9500 fw.
>
> (...)
>
> Will you be so generous to tell us how did you get EA9500 board name
> by just looking at GPL sources?

I also tried find with -name "*panamera*". One way of guessing board
name seems to be checking names of patches in ./src/linux/patches/.
Any other, more reliable method?
Imre Kaloz Feb. 25, 2017, 10:43 p.m. UTC | #10
Dear Rafal,

On 2017-02-24 07:10, Rafał Miłecki wrote:
>>> Your manners shine on these dark days of winter. For about a decade now,
>>> http://192.168.1.1/sysinfo.cgi will show you quite a bit of information if
>>> you are too lazy to look into the GPL tarball or at the original bootlogs.
>> Today I decided to do my homework & check GPL sources of EA9500 fw.
>>
>> (...)
>>
>> Will you be so generous to tell us how did you get EA9500 board name
>> by just looking at GPL sources?
> I also tried find with -name "*panamera*". One way of guessing board
> name seems to be checking names of patches in ./src/linux/patches/.
> Any other, more reliable method?
>

First of all, it's really weird you never ever looked at the factory 
bootlogs, but let me help in hope to enhance your communication style:

filenames:

src/linux/patches/linux-2.6.36.4-panamera_000_BSP.patch
src/linux/patches/linux-2.6.36.4-panamera_001_brcm_build.patch
src/linux/patches/linux-2.6.36.4-panamera_002_brcm_build_flags_temp_fix.patch
src/linux/patches/linux-2.6.36.4-panamera_003_ctf_bypass.patch
src/linux/patches/linux-2.6.36.4-panamera_006_cisco_comment.patch
src/linux/patches/linux-2.6.36.4-panamera_007_usb_remove_oops.patch
src/linux/patches/linux-2.6.36.4-panamera_008_6rd_sit_fragment.patch
src/linux/patches/linux-2.6.36.4-panamera_009_cisco_rtsp_conntrack.patch
src/linux/patches/linux-2.6.36.4-panamera_010_cisco_rtsp_conntrack2.patch
src/linux/patches/linux-2.6.36.4-panamera_014_ftp_pasv_command.patch
src/linux/patches/linux-2.6.36.4-panamera_046_sip_alg.patch
src/linux/patches/linux-2.6.36.4-panamera_047_add_usb_led.patch
src/linux/patches/linux-2.6.36.4-panamera_050_PPTP_L2TP_ctf.patch
src/linux/patches/linux-2.6.36.4-panamera_052_cfe_pass_led_to_blink.patch
src/linux/patches/linux-2.6.36.4-panamera_201_brcm_patch_20160226.patch

file contents:

src/mod_bdutil/platform/brcm/.board_id.o.cmd
src/mod_bdutil/platform/brcm/.buttons.o.cmd
src/mod_bdutil/platform/brcm/.leds_panamera.o.cmd
src/mod_bdutil/platform/brcm/.usbhub.o.cmd


If you have further questions, feel free to mail me directly and keep 
off-topic discussion away from the lists.


Thank you and have a nice weekend,

Imre
Rafał Miłecki Feb. 25, 2017, 11:06 p.m. UTC | #11
On 25 February 2017 at 23:43, Imre Kaloz <kaloz@openwrt.org> wrote:
> On 2017-02-24 07:10, Rafał Miłecki wrote:
>>>>
>>>> Your manners shine on these dark days of winter. For about a decade now,
>>>> http://192.168.1.1/sysinfo.cgi will show you quite a bit of information
>>>> if
>>>> you are too lazy to look into the GPL tarball or at the original
>>>> bootlogs.
>>>
>>> Today I decided to do my homework & check GPL sources of EA9500 fw.
>>>
>>> (...)
>>>
>>> Will you be so generous to tell us how did you get EA9500 board name
>>> by just looking at GPL sources?
>>
>> I also tried find with -name "*panamera*". One way of guessing board
>> name seems to be checking names of patches in ./src/linux/patches/.
>> Any other, more reliable method?
>>
>
> First of all, it's really weird you never ever looked at the factory
> bootlogs, but let me help in hope to enhance your communication style:
>
> filenames:
>
> src/linux/patches/linux-2.6.36.4-panamera_000_BSP.patch
> src/linux/patches/linux-2.6.36.4-panamera_001_brcm_build.patch
> src/linux/patches/linux-2.6.36.4-panamera_002_brcm_build_flags_temp_fix.patch
> src/linux/patches/linux-2.6.36.4-panamera_003_ctf_bypass.patch
> src/linux/patches/linux-2.6.36.4-panamera_006_cisco_comment.patch
> src/linux/patches/linux-2.6.36.4-panamera_007_usb_remove_oops.patch
> src/linux/patches/linux-2.6.36.4-panamera_008_6rd_sit_fragment.patch
> src/linux/patches/linux-2.6.36.4-panamera_009_cisco_rtsp_conntrack.patch
> src/linux/patches/linux-2.6.36.4-panamera_010_cisco_rtsp_conntrack2.patch
> src/linux/patches/linux-2.6.36.4-panamera_014_ftp_pasv_command.patch
> src/linux/patches/linux-2.6.36.4-panamera_046_sip_alg.patch
> src/linux/patches/linux-2.6.36.4-panamera_047_add_usb_led.patch
> src/linux/patches/linux-2.6.36.4-panamera_050_PPTP_L2TP_ctf.patch
> src/linux/patches/linux-2.6.36.4-panamera_052_cfe_pass_led_to_blink.patch
> src/linux/patches/linux-2.6.36.4-panamera_201_brcm_patch_20160226.patch
>
> file contents:
>
> src/mod_bdutil/platform/brcm/.board_id.o.cmd
> src/mod_bdutil/platform/brcm/.buttons.o.cmd
> src/mod_bdutil/platform/brcm/.leds_panamera.o.cmd
> src/mod_bdutil/platform/brcm/.usbhub.o.cmd
>
>
> If you have further questions, feel free to mail me directly and keep
> off-topic discussion away from the lists.

Thanks
diff mbox

Patch

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 52a05289c538..931db0b41246 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -93,6 +93,7 @@  dtb-$(CONFIG_ARCH_BCM_5301X) += \
 	bcm4709-netgear-r8000.dtb \
 	bcm4709-tplink-archer-c9-v1.dtb \
 	bcm47094-dlink-dir-885l.dtb \
+	bcm47094-linksys-ea9500.dtb \
 	bcm47094-luxul-xwr-3100.dtb \
 	bcm47094-netgear-r8500.dtb \
 	bcm94708.dtb \
diff --git a/arch/arm/boot/dts/bcm47094-linksys-ea9500.dts b/arch/arm/boot/dts/bcm47094-linksys-ea9500.dts
new file mode 100644
index 000000000000..31639e5b8c72
--- /dev/null
+++ b/arch/arm/boot/dts/bcm47094-linksys-ea9500.dts
@@ -0,0 +1,36 @@ 
+/*
+ * Copyright (C) 2017 Rafał Miłecki <rafal@milecki.pl>
+ *
+ * Licensed under the ISC license.
+ */
+
+/dts-v1/;
+
+#include "bcm47094.dtsi"
+#include "bcm5301x-nand-cs0-bch8.dtsi"
+
+/ {
+	compatible = "linksys,ea9500", "brcm,bcm47094", "brcm,bcm4708";
+	model = "Linksys EA9500";
+
+	chosen {
+		bootargs = "console=ttyS0,115200";
+	};
+
+	memory {
+		reg = <0x00000000 0x08000000
+		       0x88000000 0x08000000>;
+	};
+
+	gpio-keys {
+		compatible = "gpio-keys";
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		wps {
+			label = "WPS";
+			linux,code = <KEY_WPS_BUTTON>;
+			gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>;
+		};
+	};
+};