Welcome! Log In Create A New Profile

Advanced

Debian on Freecom Silverstore 2 NAS

Posted by garagoyun 
Re: Debian on Freecom Silverstore 2 NAS
November 18, 2018 07:56AM
Hello there,

i'm running this device for years with the mainline kernel myself, maybe i can help out here.

as for the cpu frequency the device is based on a armada 310 (88F6283) this is a low power variant of the 88F6282 with only up to 1 GHz cpu clock. http://natisbad.org/NAS/refs/Marvell/armada_310.pdf

I would not recommend to overclock since the 88F6282 integrates an heatsink there the 88F6283 is not.

ethernet runs stable out of the box, make sure you got the marvell phy driver in place. and have it properly defined in the devicetree.

I also got the source files from the vendor, if anyone is interested. mostly marvell vendor stuff with some u-boot modifications (ethernet phy, firmware restore, fan control).

best regards
erik
Attachments:
open | download - silverstore.dts (7.2 KB)
open | download - u-boot-silverstore.kwb (462.3 KB)
Re: Debian on Freecom Silverstore 2 NAS
November 18, 2018 08:37AM
generik Wrote:
-------------------------------------------------------
> Hello there,
>
> i'm running this device for years with the
> mainline kernel myself, maybe i can help out
> here.
>
> as for the cpu frequency the device is based on a
> armada 310 (88F6283) this is a low power variant
> of the 88F6282 with only up to 1 GHz cpu clock.
> http://natisbad.org/NAS/refs/Marvell/armada_310.pdf
>
> I would not recommend to overclock since the
> 88F6282 integrates an heatsink there the 88F6283
> is not.
>
> ethernet runs stable out of the box, make sure you
> got the marvell phy driver in place. and have it
> properly defined in the devicetree.
>
> I also got the source files from the vendor, if
> anyone is interested. mostly marvell vendor stuff
> with some u-boot modifications (ethernet phy,
> firmware restore, fan control).
>
> best regards
> erik


Erik,

Thanks for your message and attached files.

This topic is now very long, so I assume you have not read it all through. But in a nutshell: bodhi has created working DTS for this device. One of my devices is running Debian 9 for over a month now, all stable. I also just recently managed to create a patch and rebuild the stock u-boot (I also have the vendors GPL), which alloows to boot straight to Debian without the need of serial connection. Running stable and with the right envs its possible to boot Debian from usb or hard disc or run the original os if wished so. I am not sure how different your DTS and u-boot is to the ones I am already using? The DTS and u-boot I am using could be downloaded in this topic as well. Maybe I should amend the first post and write a short how to?

Regarding the CPU Freq I was already suspecting that the device could be 88F6283 and not 88F6282 as advertised.

Thanks again for your contribution!!

---------------------------------


Regards,
garagoyun
Re: Debian on Freecom Silverstore 2 NAS
November 18, 2018 03:36PM
@erik,

Thanks for the info about

Quote

Armada 310 (88F6283) this is a low power variant of the 88F6282 with only up to 1 GHz cpu clock

@garagoyun,

Does it say on the chip marking it is 88F6283?

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Freecom Silverstore 2 NAS
November 18, 2018 04:40PM
bodhi Wrote:
-------------------------------------------------------
> @garagoyun,
>
> Does it say on the chip marking it is 88F6283?

I just had to completely disassemble the device to see the marking. It is 88F6283 indeed.

---------------------------------


Regards,
garagoyun
Attachments:
open | download - 88F6283.jpg (204.4 KB)
Re: Debian on Freecom Silverstore 2 NAS
November 18, 2018 04:51PM
bodhi,

The TDS file from Erik has some additional GPIO as well as Silverstore mtdparts. I have attached a diff file, it includes the code from Erik against your DTS and I have slightly modified some other parts. I could not convert dts to dtb so could not try the file from Erik.

---------------------------------


Regards,
garagoyun
Attachments:
open | download - kirkwood-silverstore-hncn2.dts_generik.patch (6.1 KB)
Re: Debian on Freecom Silverstore 2 NAS
November 18, 2018 04:52PM
garagoyun,

> I just had to completely disassemble the device to
> see the marking. It is 88F6283 indeed.

So it is false advertisement on the vendor part. And we assumed it is 6282 based on that 1.6Ghz advertisement and u-boot log!

Also, I've looked at Eric's DTS. Wish we knew about before that this is available somewhere :) But it is OK, is was a good excercise for you, I hope :)

It also mean that we should not ever try to mainline our version of the DTS, as a courtesy to Eric.

-bodhi
===========================
Forum Wiki
bodhi's corner



Edited 1 time(s). Last edit at 11/18/2018 04:54PM by bodhi.
Re: Debian on Freecom Silverstore 2 NAS
November 18, 2018 04:53PM
garagoyun,

> The TDS file from Erik has some additional GPIO as
> well as Silverstore mtdparts.

We should not use the Silverstore stock mtdparts as they are. The version I wrote has capitalized mtdparts name to make it different from stock. This was done on purpose (not just cosmetics).

-bodhi
===========================
Forum Wiki
bodhi's corner



Edited 2 time(s). Last edit at 11/18/2018 04:59PM by bodhi.
Re: Debian on Freecom Silverstore 2 NAS
November 18, 2018 05:08PM
garagoyun,
>
> > The TDS file from Erik has some additional GPIO
> as
> > well as Silverstore mtdparts.
>
> We should not use the Silverstore stock mtdparts
> as they are. The version I wrote has capitalized
> mtdparts name to make it different from stock.
> This was done on purpose (not just cosmetics).

Actually I had modified our version a bit (but have not uploaded here) let me see if I can add your diff and post it.

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Freecom Silverstore 2 NAS
November 19, 2018 03:46AM
Quote
bodhi
Wish we knew about before that this is available somewhere :) But it is OK, is was a good excercise for you, I hope :)

I wish as well. But it was a good exercise indeed. I have learnt quite alot starting from zero knowledge.

Quote
bodhi
It also mean that we should not ever try to mainline our version of the DTS, as a courtesy to Eric.

I believe his DTS is complete. I havent had the chance to test it and I am not familiar with DTS structures etc. I have zero knowledge or understanding. Hence I created the diff, mostly to educate myself and try to understand the logic behind. Eric has done an excellent job as it looks. I have tested his uboot as well. It is based on a newer version (2017?) and has support for ext4, as far as I could understand. It was giving a "Bad CRC" message. I just had to add few envs to be able to boot bodhi's kernel.

Regarding the diff I have uploaded, as mentioned, it was just an excersise for me. The job was done by Eric already I have amended only the value for memory (0x800000 to 0x080000, I am not sure if that is correct either :-), with 0x200000 it was already working fine) and changed the word green to white, as there are only red and white leds on the device. I am not sure if it has any impact at all.

Feel free to use my diff if Eric has nothing against that either. If you have time to place some remarks in the DTS, it would be appreciated as well, so I can see what exactly various enviroments achieve.

If you could upload a modified DTB it would be appreciated. I do not have a cross compiler for arm.

---------------------------------


Regards,
garagoyun
Re: Debian on Freecom Silverstore 2 NAS
November 19, 2018 04:15AM
Hi garagoyun,

> memory (0x800000 to 0x080000, I am not sure if
> that is correct either :-), with 0x200000 it was
> already working fine)

That's memory node is actuall not used. What u-boot passes along is what the kernel knows. It is there in the DTS for completeness. But it should be corrected anyway, to 128MB. I recall that is the size?

> and changed the word green
> to white, as there are only red and white leds on
> the device. I am not sure if it has any impact at
> all.

It does not have any impact. The name is whatever we decide to call it (GPIO number is the real thing). So green was what I picked since I've never seen this box for real, only in picture :)


> Feel free to use my diff if Eric has nothing
> against that either. If you have time to place
> some remarks in the DTS, it would be appreciated
> as well, so I can see what exactly various
> enviroments achieve.

Sure. I will make a copyright reference to Eric, since we will copy Eric's other GPIOs. And will add more comments.


> If you could upload a modified DTB it would be
> appreciated. I do not have a cross compiler for
> arm.

I'll do that tomorrow.

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Freecom Silverstore 2 NAS
November 19, 2018 06:13AM
Hi there,

back in the days, i hold back sharing or pushing the dts upstream because of minor things that are missing, these are:

= hdd status leds =

there are 4 more leds, hdd1/hdd2 white (activity), hdd1/hdd2 red (fail)

hdd1 (red) gpo7
hdd2 (red) gpio13
these should work but need to test.

hdd1 (white) gpio15, gpio17
hdd2 (white) gpio14, gpio16
not sure what is going on here, the actual led pins are somewhat multeplexed with sata-present and sata-activity gpios

= regulators =

it is possible to control usb power via gpio but unfortunetly i lost my notes :(

= clocks =

memory clock is not correctly set, this is only an cosmetic issue, but i think i know whats going on here, will try something later.

/sys/kernel/debug/clk

clock enable_cnt prepare_cnt rate accuracy phase
----------------------------------------------------------------------------------------
cpuclk 2 2 1000000000 0 0
ddrclk 2 2 0 0 0
powersave 1 1 0 0 0
l2clk 0 0 333333333 0 0
tclk 10 10 200000000 0 0
tdm 0 0 200000000 0 0
ge1 0 0 200000000 0 0
pex1 0 0 200000000 0 0
crypto 1 1 200000000 0 0
xor1 1 1 200000000 0 0
sata1 1 1 200000000 0 0
sata0 2 2 200000000 0 0
audio 0 0 200000000 0 0
xor0 1 1 200000000 0 0
runit 7 7 200000000 0 0
tsu 0 0 200000000 0 0
sdio 0 0 200000000 0 0
usb0 1 1 200000000 0 0
pex0 2 2 200000000 0 0
ge0 2 2 200000000 0 0


best regards generik
Re: Debian on Freecom Silverstore 2 NAS
November 19, 2018 09:32AM
generik,

Thanks for your contribution. Highly appreciated.

---------------------------------


Regards,
garagoyun
Re: Debian on Freecom Silverstore 2 NAS
November 19, 2018 10:27AM
hi there,

great news i fixed the clock issue.

it comes down to this function
https://github.com/torvalds/linux/blob/master/drivers/clk/mvebu/kirkwood.c#L137
that tries to derive the ddrclk from cpuclk using the sar register value that defines multiplier and devider.

unfortunately the 88F6283 uses some undocumented settings here and to my knowledge there are no datasheets for armada 3x0 available yet.

To reverse engeneer the sar value definition i "measured" the ddrclk using the kirkwood-cpufreq module, it switches between cpu speed between cpuclk and ddrclk (https://github.com/torvalds/linux/blob/master/drivers/cpufreq/kirkwood-cpufreq.c)

silverstore /usr/src/linux # echo powersave > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor && openssl speed camellia && echo performance > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor && openssl speed camellia
Doing camellia-128 cbc for 3s on 16 size blocks: 576824 camellia-128 cbc's in 2.99s
Doing camellia-128 cbc for 3s on 64 size blocks: 170247 camellia-128 cbc's in 2.99s
Doing camellia-128 cbc for 3s on 256 size blocks: 44729 camellia-128 cbc's in 2.99s
Doing camellia-128 cbc for 3s on 1024 size blocks: 11288 camellia-128 cbc's in 2.99s
Doing camellia-128 cbc for 3s on 8192 size blocks: 1417 camellia-128 cbc's in 3.00s
Doing camellia-192 cbc for 3s on 16 size blocks: 465608 camellia-192 cbc's in 3.00s
Doing camellia-192 cbc for 3s on 64 size blocks: 133630 camellia-192 cbc's in 3.00s
Doing camellia-192 cbc for 3s on 256 size blocks: 34666 camellia-192 cbc's in 2.99s
Doing camellia-192 cbc for 3s on 1024 size blocks: 8742 camellia-192 cbc's in 2.99s
Doing camellia-192 cbc for 3s on 8192 size blocks: 1096 camellia-192 cbc's in 3.00s
Doing camellia-256 cbc for 3s on 16 size blocks: 468651 camellia-256 cbc's in 3.00s
Doing camellia-256 cbc for 3s on 64 size blocks: 133853 camellia-256 cbc's in 3.00s
Doing camellia-256 cbc for 3s on 256 size blocks: 34681 camellia-256 cbc's in 3.00s
Doing camellia-256 cbc for 3s on 1024 size blocks: 8750 camellia-256 cbc's in 3.00s
Doing camellia-256 cbc for 3s on 8192 size blocks: 1096 camellia-256 cbc's in 3.00s
OpenSSL 1.0.2p  14 Aug 2018
built on: reproducible build, date unspecified
options:bn(64,32) rc4(ptr,char) des(idx,cisc,16,long) aes(partial) idea(int) blowfish(ptr)
compiler: armv5tel-softfloat-linux-uclibceabi-gcc -I. -I.. -I../include  -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -Wall -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -Os -march=armv5te -mtune=xscale -fno-ident -frename-registers -mthumb -msoft-float -fexcess-precision=fast -fomit-frame-pointer -fweb -fno-stack-protector -pipe --param l1-cache-size=16 --param l1-cache-line-size=32 --param l2-cache-size=256 -flto -fuse-linker-plugin -fno-strict-aliasing -Wa,--noexecstack
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
camellia-128 cbc     3086.68k     3644.08k     3829.64k     3865.86k     3869.35k
camellia-192 cbc     2483.24k     2850.77k     2968.06k     2993.92k     2992.81k
camellia-256 cbc     2499.47k     2855.53k     2959.45k     2986.67k     2992.81k
Doing camellia-128 cbc for 3s on 16 size blocks: 1444429 camellia-128 cbc's in 3.00s
Doing camellia-128 cbc for 3s on 64 size blocks: 427924 camellia-128 cbc's in 3.00s
Doing camellia-128 cbc for 3s on 256 size blocks: 112129 camellia-128 cbc's in 3.00s
Doing camellia-128 cbc for 3s on 1024 size blocks: 28375 camellia-128 cbc's in 3.00s
Doing camellia-128 cbc for 3s on 8192 size blocks: 3557 camellia-128 cbc's in 3.00s
Doing camellia-192 cbc for 3s on 16 size blocks: 1156745 camellia-192 cbc's in 3.00s
Doing camellia-192 cbc for 3s on 64 size blocks: 334272 camellia-192 cbc's in 3.00s
Doing camellia-192 cbc for 3s on 256 size blocks: 86809 camellia-192 cbc's in 3.00s
Doing camellia-192 cbc for 3s on 1024 size blocks: 21910 camellia-192 cbc's in 3.00s
Doing camellia-192 cbc for 3s on 8192 size blocks: 2744 camellia-192 cbc's in 3.00s
Doing camellia-256 cbc for 3s on 16 size blocks: 1168936 camellia-256 cbc's in 3.00s
Doing camellia-256 cbc for 3s on 64 size blocks: 334912 camellia-256 cbc's in 3.00s
Doing camellia-256 cbc for 3s on 256 size blocks: 86833 camellia-256 cbc's in 3.00s
Doing camellia-256 cbc for 3s on 1024 size blocks: 21910 camellia-256 cbc's in 3.00s
Doing camellia-256 cbc for 3s on 8192 size blocks: 2743 camellia-256 cbc's in 3.00s
OpenSSL 1.0.2p  14 Aug 2018
built on: reproducible build, date unspecified
options:bn(64,32) rc4(ptr,char) des(idx,cisc,16,long) aes(partial) idea(int) blowfish(ptr)
compiler: armv5tel-softfloat-linux-uclibceabi-gcc -I. -I.. -I../include  -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -Wall -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DAES_ASM -DBSAES_ASM -DGHASH_ASM -Os -march=armv5te -mtune=xscale -fno-ident -frename-registers -mthumb -msoft-float -fexcess-precision=fast -fomit-frame-pointer -fweb -fno-stack-protector -pipe --param l1-cache-size=16 --param l1-cache-line-size=32 --param l2-cache-size=256 -flto -fuse-linker-plugin -fno-strict-aliasing -Wa,--noexecstack
The 'numbers' are in 1000s of bytes per second processed.
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
camellia-128 cbc     7703.62k     9129.05k     9568.34k     9685.33k     9712.98k
camellia-192 cbc     6169.31k     7131.14k     7407.70k     7478.61k     7492.95k
camellia-256 cbc     6234.33k     7144.79k     7409.75k     7478.61k     7490.22k

So it turns out that on powersave mode the cpu operates 2.5x slower (400 MHz, no suprise there) that leaves us with an 2/5 clock divider ratio that indeed is not supported by linux.

so finally cpuinfo prints correct values.

silverstore /usr/src/linux # lscpu
Architecture:        armv5tel
Byte Order:          Little Endian
CPU(s):              1
On-line CPU(s) list: 0
Thread(s) per core:  1
Core(s) per socket:  1
Socket(s):           1
Vendor ID:           Marvell
Model:               1
Model name:          Feroceon 88FR131
Stepping:            0x2
CPU max MHz:         1000.0000
CPU min MHz:         400.0000
BogoMIPS:            160.00
Flags:               swp half thumb fastmult edsp

silverstore /usr/src/linux # cpupower frequency-info
analyzing CPU 0:
  driver: kirkwood-cpufreq
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 5.0 us
  hardware limits: 400 MHz - 1000 MHz
  available frequency steps:  1000 MHz, 400 MHz
  available cpufreq governors: powersave ondemand performance
  current policy: frequency should be within 400 MHz and 1000 MHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency: 400 MHz (asserted by call to hardware)

best regards
generik
Attachments:
open | download - add_1ghz_cpu2ddr_6283_sar.patch (810 bytes)
Re: Debian on Freecom Silverstore 2 NAS
November 19, 2018 02:48PM
generik,

Excellent work. I saw a similar code in the original source a few days ago. I thought it was relevant to help overclock the device as the ratio CPU to DDR was 2/5. I thought changing the ratio might increase the CPU frequency, however, it was only affecting the sysclock. CPU clock stayed 1000MHz.

./build/u-boot-3.5.9/board/mv_feroceon/mv_kw/kw_family/ctrlEnv/mvCtrlEnvRegs.h

/* CPU clock for 6281,6192,6282  0->Resereved */
#define MV_CPU_CLCK_TBL { 	0,		400000000,	0, 		0,	\
			     	600000000, 	0,		800000000,	1000000000,	\
			     	0,	 	1200000000,	0,		0,		\
			     	1500000000,	1600000000,		1800000000,		2000000000}

/* DDR clock RATIO for 6281,6192,6282 {0,0}->Reserved */
#define MV_DDR_CLCK_RTIO_TBL	{\
	{1, 1}, {0, 0}, {2, 1}, {5, 2}, \
	{3, 1}, {0, 0}, {4, 1}, {9, 2}, \
	{5, 1}, {6, 1}, {0, 0}, {0, 0}, \
	{0, 0}, {0, 0}, {0, 0}, {0, 0} \
}

/* L2 clock RATIO for 6281,6192,6282 {1,1}->Reserved */
#define MV_L2_CLCK_RTIO_TBL	{\
	{1, 1}, {2, 1}, {2, 1}, {3, 1}, \
	{0, 0}, {4, 1}, {0, 0}, {0, 0} \
}

/* 6180 have different clk reset sampling 		*/
/* ARM CPU, DDR, L2 clock for 6180 {0,0,0}->Reserved 	*/
#define MV_CPU6180_DDR_L2_CLCK_TBL    { \
	{0,   		0,   		0		},\
	{0,   		0,   		0		},\
	{0,   		0,   		0		},\
	{0,   		0,   		0		},\
	{0,   		0,   		0		},\
	{600000000, 	200000000, 	300000000	},\
	{800000000, 	200000000, 	400000000	},\
	{1000000000,   	200000000,   500000000		}\
}

Bellow the values I currently have from my device with Debian 9:
root@silverdebian:/sys/kernel/debug/clk# cat clk_summary
   clock                         enable_cnt  prepare_cnt        rate   accuracy   phase
----------------------------------------------------------------------------------------
 cpuclk                                   3            3  1000000000          0 0  
    powersave                             1            1  1000000000          0 0  
    ddrclk                                1            1           0          0 0  
    l2clk                                 0            0   333333333          0 0  
 tclk                                    10           10   200000000          0 0  
    tdm                                   0            0   200000000          0 0  
    ge1                                   0            0   200000000          0 0  
    pex1                                  0            0   200000000          0 0  
    crypto                                2            2   200000000          0 0  
    xor1                                  1            1   200000000          0 0  
    sata1                                 1            1   200000000          0 0  
    sata0                                 2            2   200000000          0 0  
    audio                                 0            0   200000000          0 0  
    xor0                                  1            1   200000000          0 0  
    runit                                 7            7   200000000          0 0  
    tsu                                   0            0   200000000          0 0  
    sdio                                  0            0   200000000          0 0  
    usb0                                  1            1   200000000          0 0  
    pex0                                  2            2   200000000          0 0  
    ge0                                   2            2   200000000          0 0  
root@silverdebian:/sys/kernel/debug/clk# lscpu
Architecture:          armv5tel
Byte Order:            Little Endian
CPU(s):                1
On-line CPU(s) list:   0
Thread(s) per core:    1
Core(s) per socket:    1
Socket(s):             1
Model:                 1
Model name:            Feroceon 88FR131 rev 1 (v5l)
CPU max MHz:           1000.0000
CPU min MHz:           0.0000
BogoMIPS:              400.00
Flags:                 swp half thumb fastmult edsp
root@silverdebian:/sys/kernel/debug/clk# cpupower frequency-info
analyzing CPU 0:
  driver: kirkwood-cpufreq
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 5.0 us
  hardware limits: Not Available
  available frequency steps:  1000 MHz, 
  available cpufreq governors: powersave performance
  Unable to determine current policy
  current CPU frequency: 1000 MHz (asserted by call to hardware)

---------------------------------


Regards,
garagoyun
Re: Debian on Freecom Silverstore 2 NAS
November 19, 2018 06:06PM
generik,

Quote

it comes down to this function
https://github.com/torvalds/linux/blob/master/drivers/clk/mvebu/kirkwood.c#L137
that tries to derive the ddrclk from cpuclk using the sar register value that defines multiplier and devider.

Good work :)

Quote

hdd1 (white) gpio15, gpio17
hdd2 (white) gpio14, gpio16
not sure what is going on here, the actual led pins are somewhat multeplexed with sata-present and sata-activity gpios

One of the 2 is likely sata-present. Booting with stock u-boot, they have set those correctly.


In case you did not already know, in your u-boot source patch, you probably need to do activate it like this (mainline normally does not have them for unsupported boxes).

Example (my patch for Stora or one of the other Kirkwood boxes):
root@tldDebian:/usr/src/u-boot-2017.07-tld/arch/arm/mach-kirkwood/include/mach# diff mpp.h.orig mpp.h -Naur
--- mpp.h.orig	2017-07-10 10:07:38.000000000 -0700
+++ mpp.h	2017-08-28 03:33:01.030818065 -0700
@@ -217,10 +217,12 @@
 #define MPP33_GPIO		MPP( 33, 0x0, 1, 1, 0,   1,   1,   1    )
 #define MPP33_TDM_DTX		MPP( 33, 0x2, 0, 1, 0,   0,   1,   1    )
 #define MPP33_GE1_13		MPP( 33, 0x3, 0, 0, 0,   1,   1,   1    )
+#define MPP33_SATA1_ACTn        MPP( 33, 0x5, 0, 1, 0,   1,   1,   1    )

Thanks!

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Freecom Silverstore 2 NAS
November 19, 2018 11:26PM
garagoyun,

Here is the revised DTS and DTB. Please try.

-bodhi
===========================
Forum Wiki
bodhi's corner
Attachments:
open | download - kirkwood-silverstore-hncn2.dtb (11.9 KB)
open | download - kirkwood-silverstore-hncn2.dts (5 KB)
Re: Debian on Freecom Silverstore 2 NAS
November 20, 2018 12:19PM
bodhi Wrote:
-------------------------------------------------------
> garagoyun,
>
> Here is the revised DTS and DTB. Please try.


Thanks bodhi, I will try as soon I can find some free time.

@generic,
You have been using this device with new kernel for years you mentioned. Was just curious, what are you using it mainly for, any specific application?

---------------------------------


Regards,
garagoyun
Re: Debian on Freecom Silverstore 2 NAS
November 20, 2018 02:11PM
Hi there,

@garagoyun
thanks for the mvCtrlEnvRegs.h pointer this confirms this value, after applying my patch it should be show the actual ddrclk.

   clock                         enable_cnt  prepare_cnt        rate   accuracy   phase
----------------------------------------------------------------------------------------
 cpuclk                                   2            2  1000000000          0 0
    ddrclk                                2            2   400000000          0 0
       powersave                          1            1   400000000          0 0
    l2clk                                 0            0   333333333          0 0
 tclk                                    10           10   200000000          0 0
    tdm                                   0            0   200000000          0 0
    ge1                                   0            0   200000000          0 0
    pex1                                  0            0   200000000          0 0
    crypto                                2            2   200000000          0 0
    xor1                                  1            1   200000000          0 0
    sata1                                 1            1   200000000          0 0
    sata0                                 2            2   200000000          0 0
    audio                                 0            0   200000000          0 0
    xor0                                  1            1   200000000          0 0
    runit                                 7            7   200000000          0 0
    tsu                                   0            0   200000000          0 0
    sdio                                  0            0   200000000          0 0
    usb0                                  1            1   200000000          0 0
    pex0                                  2            2   200000000          0 0
    ge0                                   2            2   200000000          0 0

As for device usage, i use this NAS as my daily driver, beside essentual stuff like nfs and samba it will handle most php/sqlite based applications quite well, i got dokuwiki, miniflux, sonerezh, working planing to install nextcloud soon. The most limiting factor is the low memory configuration, you can't really use memcache and such with only 128mb ram. Things like thumb and uclibc can help out a bit. In fact i got a qnap ts-221 (2GHz 88F6283, 1GB RAM) lying arround but the freecom is good enough ;)

@bodhi
thanks for the uboot info i will have a look into that eventually, unfortunetly i lost my uboot config, but i think it was more or less kirwood_defconfig anyway. I added the hdd-fail (red) leds they work fine, since hdd-activity (white) led are configured in uboot it makes sense to not put them in devicetree since sata activity trigger are not available.
https://github.com/torvalds/linux/blob/master/drivers/ata/sata_mv.c#L3428
I also changed white-sys to white-led-status, since led-status is "one" led with red or white color.

best regards
generik
Attachments:
open | download - kirkwood-silverstore-hncn2.dts (5.4 KB)
Re: Debian on Freecom Silverstore 2 NAS
November 21, 2018 03:11AM
generik,

Quote

I also changed white-sys to white-led-status, since led-status is "one" led with red or white color.

It does make it more descriptive.

Thanks for the updated DTS!

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Freecom Silverstore 2 NAS
November 21, 2018 03:24AM
Here is the new DTB with Erik's changes incorporated in the DTS.

-bodhi
===========================
Forum Wiki
bodhi's corner
Attachments:
open | download - kirkwood-silverstore-hncn2.dtb (12.2 KB)
open | download - kirkwood-silverstore-hncn2.dts (5.4 KB)
Re: Debian on Freecom Silverstore 2 NAS
November 21, 2018 05:36AM
@generic, @bodhi,

I appreciate you have included me in the DTS, but I have not really contributed to it :-) . You both are the sole contributors.

---------------------------------


Regards,
garagoyun
Re: Debian on Freecom Silverstore 2 NAS
November 21, 2018 04:21PM
Hi garagoyun,

You've contributed a lot in research, analysis, testing, reviewing. Embedded Linux hobby projects are small, so often time we only see 1 or 2 persons but don't see the unsung heros :)

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Debian on Freecom Silverstore 2 NAS
November 22, 2018 03:42PM
bodhi,

Only now had the chance to test the latest DTB:
root@silverdebian:~# dmesg
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.12.1-kirkwood-tld-1 (root@tldDebian) (gcc version 4.9.2 (Debian 4.9.2-10) ) #1 PREEMPT Sat Jul 15 21:40:50 PDT 2017
[    0.000000] CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=0005397f
[    0.000000] CPU: VIVT data cache, VIVT instruction cache
[    0.000000] OF: fdt: Machine model: Freecom Silverstore HNCN2
[    0.000000] bootconsole [earlycon0] enabled
[    0.000000] Memory policy: Data cache writeback
[    0.000000] On node 0 totalpages: 32768
[    0.000000] free_area_init_node: node 0, pgdat c0d9e084, node_mem_map c7ef9000
[    0.000000]   Normal zone: 256 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 32768 pages, LIFO batch:7
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    0.000000] pcpu-alloc: [0] 0 
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
[    0.000000] Kernel command line: console=ttyS0,115200 root=LABEL=rootfs rootdelay=10 mtdparts=orion_nand:0x000a0000@0x0(uboot),0x00040000@0x000a0000(param),0x00280000@0x000e0000(preroot),0x00380000@0x00360000(uimage),0x076e0000@0x006e0000(rootfs),0x00240000@0x07dc0000(misc),128m@0x0(flash) earlyprintk=serial
[    0.000000] PID hash table entries: 512 (order: -1, 2048 bytes)
[    0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
[    0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Memory: 108968K/131072K available (8192K kernel code, 716K rwdata, 1972K rodata, 1024K init, 288K bss, 22104K reserved, 0K cma-reserved)
[    0.000000] Virtual kernel memory layout:
                   vector  : 0xffff0000 - 0xffff1000   (   4 kB)
                   fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
                   vmalloc : 0xc8800000 - 0xff800000   ( 880 MB)
                   lowmem  : 0xc0000000 - 0xc8000000   ( 128 MB)
                   modules : 0xbf000000 - 0xc0000000   (  16 MB)
                     .text : 0xc0008000 - 0xc0900000   (9184 kB)
                     .init : 0xc0c00000 - 0xc0d00000   (1024 kB)
                     .data : 0xc0d00000 - 0xc0db3274   ( 717 kB)
                      .bss : 0xc0db9b9c - 0xc0e01e60   ( 289 kB)
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] clocksource: orion_clocksource: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 9556302233 ns
[    0.000008] sched_clock: 32 bits at 200MHz, resolution 5ns, wraps every 10737418237ns
[    0.007907] Switching to timer-based delay loop, resolution 5ns
[    0.014400] Console: colour dummy device 80x30
[    0.018983] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=2000000)
[    0.029588] pid_max: default: 32768 minimum: 301
[    0.034479] Security Framework initialized
[    0.038816] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.045491] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.053544] CPU: Testing write buffer coherency: ok
[    0.059544] Setting up static identity map for 0x100000 - 0x100058
[    0.066060] mvebu-soc-id: MVEBU SoC ID=0x6282, Rev=0x1
[    0.074810] devtmpfs: initialized
[    0.083276] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.093244] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.099866] prandom: seed boundary self test passed
[    0.109345] prandom: 100 self tests passed
[    0.113519] pinctrl core: initialized pinctrl subsystem
[    0.120051] NET: Registered protocol family 16
[    0.125040] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.133701] cpuidle: using governor ladder
[    0.137986] cpuidle: using governor menu
[    0.142470] Feroceon L2: Enabling L2
[    0.146154] Feroceon L2: Cache support initialised.
[    0.151528] [Firmware Info]: /ocp@f1000000/ethernet-controller@72000/ethernet0-port@0: local-mac-address is not set
[    0.168509] No ATAGs?
[    0.179539] vgaarb: loaded
[    0.185019] SCSI subsystem initialized
[    0.189096] libata version 3.00 loaded.
[    0.189449] usbcore: registered new interface driver usbfs
[    0.195080] usbcore: registered new interface driver hub
[    0.200598] usbcore: registered new device driver usb
[    0.207014] clocksource: Switched to clocksource orion_clocksource
[    0.319085] VFS: Disk quotas dquot_6.6.0
[    0.323161] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    0.342659] NET: Registered protocol family 2
[    0.347986] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.355022] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.361487] TCP: Hash tables configured (established 1024 bind 1024)
[    0.368010] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.373917] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.380466] NET: Registered protocol family 1
[    0.385355] RPC: Registered named UNIX socket transport module.
[    0.391420] RPC: Registered udp transport module.
[    0.396190] RPC: Registered tcp transport module.
[    0.401001] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.407529] PCI: CLS 0 bytes, default 32
[    0.407789] Unpacking initramfs...
[    1.227454] Freeing initrd memory: 7528K
[    1.231632] NetWinder Floating Point Emulator V0.97 (double precision)
[    1.239405] audit: initializing netlink subsys (disabled)
[    1.245355] Initialise system trusted keyrings
[    1.249955] audit: type=2000 audit(1.228:1): state=initialized audit_enabled=0 res=1
[    1.257841] Key type blacklist registered
[    1.262084] workingset: timestamp_bits=30 max_order=15 bucket_order=0
[    1.268726] zbud: loaded
[    1.272435] NFS: Registering the id_resolver key type
[    1.277652] Key type id_resolver registered
[    1.281903] Key type id_legacy registered
[    1.286003] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    1.292817] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
[    1.299470] jffs2: version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
[    1.306783] fuse init (API version 7.26)
[    1.311198] orangefs_debugfs_init: called with debug mask: :none: :0:
[    1.317977] orangefs_init: module version upstream loaded
[    1.323436] SGI XFS with ACLs, security attributes, realtime, no debug enabled
[    2.567023] random: fast init done
[    8.346959] Key type asymmetric registered
[    8.351475] Asymmetric key parser 'x509' registered
[    8.356485] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 249)
[    8.364101] io scheduler noop registered
[    8.368161] io scheduler deadline registered
[    8.372582] io scheduler cfq registered (default)
[    8.378858] kirkwood-pinctrl f1010000.pin-controller: registered pinctrl driver
[    8.388464] mvebu-pcie mbus@f1000000:pcie@82000000: PCI host bridge to bus 0000:00
[    8.396098] pci_bus 0000:00: root bus resource [io  0x1000-0xfffff]
[    8.402470] pci_bus 0000:00: root bus resource [mem 0xe0000000-0xefffffff]
[    8.409433] pci_bus 0000:00: root bus resource [bus 00-ff]
[    8.414979] pci_bus 0000:00: scanning bus
[    8.415022] pci 0000:00:01.0: [11ab:6282] type 01 class 0x060400
[    8.415066] pci 0000:00:01.0: calling pci_fixup_ide_bases+0x0/0x40
[    8.415339] pci_bus 0000:00: fixups for bus
[    8.415353] PCI: bus0: Fast back to back transfers disabled
[    8.421032] pci 0000:00:01.0: scanning [bus 00-00] behind bridge, pass 0
[    8.421043] pci 0000:00:01.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    8.429129] pci 0000:00:01.0: scanning [bus 00-00] behind bridge, pass 1
[    8.429284] pci_bus 0000:01: scanning bus
[    8.429328] pci 0000:01:00.0: [1033:0194] type 00 class 0x0c0330
[    8.429374] pci 0000:01:00.0: reg 0x10: [mem 0x90000000-0x90001fff 64bit]
[    8.429451] pci 0000:01:00.0: calling pci_fixup_ide_bases+0x0/0x40
[    8.429544] pci 0000:01:00.0: PME# supported from D0 D3hot
[    8.429557] pci 0000:01:00.0: PME# disabled
[    8.457085] pci_bus 0000:01: fixups for bus
[    8.457100] PCI: bus1: Fast back to back transfers disabled
[    8.462732] pci_bus 0000:01: bus scan returning with max=01
[    8.462745] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
[    8.462759] pci_bus 0000:00: bus scan returning with max=01
[    8.462774] pci 0000:00:01.0: fixup irq: got 0
[    8.462783] pci 0000:00:01.0: assigning IRQ 00
[    8.462892] pci 0000:01:00.0: fixup irq: got 34
[    8.462902] pci 0000:01:00.0: assigning IRQ 34
[    8.462940] pci 0000:00:01.0: BAR 14: assigned [mem 0xe0000000-0xe00fffff]
[    8.469914] pci 0000:01:00.0: BAR 0: assigned [mem 0xe0000000-0xe0001fff 64bit]
[    8.477321] pci 0000:00:01.0: PCI bridge to [bus 01]
[    8.482360] pci 0000:00:01.0:   bridge window [mem 0xe0000000-0xe00fffff]
[    8.489315] pcieport 0000:00:01.0: enabling device (0140 -> 0142)
[    8.495483] pcieport 0000:00:01.0: enabling bus mastering
[    8.495532] pci 0000:01:00.0: calling quirk_usb_early_handoff+0x0/0x64c
[    8.495548] pci 0000:00:01.0: enabling bus mastering
[    8.496180] mv_xor f1060800.xor: Marvell shared XOR driver
[    8.557919] mv_xor f1060800.xor: Marvell XOR (Registers Mode): ( xor cpy sg intr )
[    8.565780] mv_xor f1060900.xor: Marvell shared XOR driver
[    8.627903] mv_xor f1060900.xor: Marvell XOR (Registers Mode): ( xor cpy sg intr )
[    8.636034] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    8.644039] console [ttyS0] disabled
[    8.647824] f1012000.serial: ttyS0 at MMIO 0xf1012000 (irq = 26, base_baud = 12500000) is a 16550A
[    8.656869] console [ttyS0] enabled
[    8.664020] bootconsole [earlycon0] disabled
[    8.682626] loop: module loaded
[    8.686132] sata_mv f1080000.sata: version 1.28
[    8.686431] sata_mv f1080000.sata: slots 32 ports 2
[    8.694675] scsi host0: sata_mv
[    8.698406] scsi host1: sata_mv
[    8.701862] ata1: SATA max UDMA/133 irq 33
[    8.705985] ata2: SATA max UDMA/133 irq 33
[    8.710989] nand: device found, Manufacturer ID: 0xec, Chip ID: 0xf1
[    8.717493] nand: Samsung NAND 128MiB 3,3V 8-bit
[    8.722133] nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
[    8.729771] Scanning device for bad blocks
[    8.743040] Bad eraseblock 113 at 0x000000e20000
[    8.772592] Bad eraseblock 422 at 0x0000034c0000
[    8.825757] 7 cmdlinepart partitions found on MTD device orion_nand
[    8.832081] Creating 7 MTD partitions on "orion_nand":
[    8.837282] 0x000000000000-0x0000000a0000 : "uboot"
[    8.843716] 0x0000000a0000-0x0000000e0000 : "param"
[    8.850199] 0x0000000e0000-0x000000360000 : "preroot"
[    8.856826] 0x000000360000-0x0000006e0000 : "uimage"
[    8.863261] 0x0000006e0000-0x000007dc0000 : "rootfs"
[    8.870525] 0x000007dc0000-0x000008000000 : "misc"
[    8.876690] 0x000000000000-0x000008000000 : "flash"
[    8.885405] libphy: Fixed MDIO Bus: probed
[    8.890560] libphy: orion_mdio_bus: probed
[    8.900308] mv643xx_eth: MV-643xx 10/100/1000 ethernet driver version 1.4
[    9.008270] mv643xx_eth_port mv643xx_eth_port.0 eth0: port 0 with MAC address 00:50:43:47:1d:37
[    9.017239] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    9.023854] ehci-pci: EHCI PCI platform driver
[    9.028422] ehci-orion: EHCI orion driver
[    9.032717] orion-ehci f1050000.ehci: EHCI Host Controller
[    9.038323] orion-ehci f1050000.ehci: new USB bus registered, assigned bus number 1
[    9.046285] orion-ehci f1050000.ehci: irq 30, io mem 0xf1050000
[    9.077058] orion-ehci f1050000.ehci: USB 2.0 started, EHCI 1.00
[    9.083363] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    9.090222] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    9.097502] usb usb1: Product: EHCI Host Controller
[    9.102404] usb usb1: Manufacturer: Linux 4.12.1-kirkwood-tld-1 ehci_hcd
[    9.109159] usb usb1: SerialNumber: f1050000.ehci
[    9.114751] hub 1-0:1.0: USB hub found
[    9.118633] hub 1-0:1.0: 1 port detected
[    9.123325] xhci_hcd 0000:01:00.0: enabling bus mastering
[    9.123338] xhci_hcd 0000:01:00.0: xHCI Host Controller
[    9.128689] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 2
[    9.136498] xhci_hcd 0000:01:00.0: hcc params 0x014042cb hci version 0x96 quirks 0x00000004
[    9.144956] xhci_hcd 0000:01:00.0: enabling Mem-Wr-Inval
[    9.145211] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
[    9.152071] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    9.159353] usb usb2: Product: xHCI Host Controller
[    9.164255] usb usb2: Manufacturer: Linux 4.12.1-kirkwood-tld-1 xhci-hcd
[    9.171010] usb usb2: SerialNumber: 0000:01:00.0
[    9.176432] hub 2-0:1.0: USB hub found
[    9.180313] hub 2-0:1.0: 2 ports detected
[    9.184908] xhci_hcd 0000:01:00.0: xHCI Host Controller
[    9.190241] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 3
[    9.197832] usb usb3: We don't know the algorithms for LPM for this host, disabling LPM.
[    9.206125] usb usb3: New USB device found, idVendor=1d6b, idProduct=0003
[    9.212981] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    9.220290] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl F300)
[    9.226873] ata1.00: ATA-7: Hitachi HDS721680PLA380, P21OABDA, max UDMA/100
[    9.226882] ata1.00: 156301488 sectors, multi 0: LBA48 NCQ (depth 31/32)
[    9.241363] ata1.00: configured for UDMA/100
[    9.245836] usb usb3: Product: xHCI Host Controller
[    9.251147] scsi 0:0:0:0: Direct-Access     ATA      Hitachi HDS72168 ABDA PQ: 0 ANSI: 5
[    9.252408] sd 0:0:0:0: [sda] 156301488 512-byte logical blocks: (80.0 GB/74.5 GiB)
[    9.252495] sd 0:0:0:0: [sda] Write Protect is off
[    9.252506] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
[    9.252657] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[    9.285144] usb usb3: Manufacturer: Linux 4.12.1-kirkwood-tld-1 xhci-hcd
[    9.292542] usb usb3: SerialNumber: 0000:01:00.0
[    9.297997] hub 3-0:1.0: USB hub found
[    9.301815] hub 3-0:1.0: 2 ports detected
[    9.306732] usbcore: registered new interface driver usb-storage
[    9.314158]  sda: sda1 sda2 sda3
[    9.317504] mousedev: PS/2 mouse device common for all mice
[    9.318222] rtc-mv f1010300.rtc: rtc core: registered f1010300.rtc as rtc0
[    9.318380] i2c /dev entries driver
[    9.332964] kirkwood-pinctrl f1010000.pin-controller: unsupported function gpio on pin mpp7
[    9.332972] pinctrl core: failed to register map default (0): invalid type given                                                                                 
[    9.332989] leds-gpio: probe of gpio-leds failed with error -22
[    9.333136] hidraw: raw HID events driver (C) Jiri Kosina
[    9.333569] drop_monitor: Initializing network drop monitor service
[    9.333838] NET: Registered protocol family 17
[    9.333927] Key type dns_resolver registered
[    9.334877] registered taskstats version 1
[    9.334883] Loading compiled-in X.509 certificates
[    9.334939] zswap: loaded using pool lzo/zbud
[    9.358415] Key type big_key registered
[    9.382647] Key type encrypted registered
[    9.384190] rtc-mv f1010300.rtc: setting system clock to 2018-11-22 21:16:57 UTC (1542921417)
[    9.384372] PM: Hibernation image not present or could not be loaded.
[    9.438036] sd 0:0:0:0: [sda] Attached SCSI disk
[    9.477062] usb 1-1: new high-speed USB device number 2 using orion-ehci
[    9.590411] ata2: SATA link down (SStatus 0 SControl F300)
[    9.609661] Freeing unused kernel memory: 1024K
[    9.678817] usb 1-1: New USB device found, idVendor=048d, idProduct=9006
[    9.685580] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    9.705190] usb 1-1: Product: USB Deivce
[    9.711030] usb 1-1: Manufacturer: ITE Technologies, Inc.
[   10.208656] input: ITE Technologies, Inc. USB Deivce as /devices/platform/ocp@f1000000/f1050000.ehci/usb1/1-1/1-1:1.1/0003:048D:9006.0001/input/input0
[   10.337855] hid-generic 0003:048D:9006.0001: input,hidraw0: USB HID v1.01 Keyboard [ITE Technologies, Inc. USB Deivce] on usb-f1050000.ehci-1/input1
[   10.393331] usbcore: registered new interface driver usbhid
[   10.418833] usbhid: USB HID core driver
[   21.085188] EXT4-fs (sda1): mounting ext3 file system using the ext4 subsystem
[   21.108973] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null)
[   22.540447] NET: Registered protocol family 10
[   22.546080] Segment Routing with IPv6
[   22.566221] ip_tables: (C) 2000-2006 Netfilter Core Team
[   22.639685] systemd[1]: systemd 232 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN)
[   22.658492] systemd[1]: Detected architecture arm.
[   22.717977] systemd[1]: Set hostname to <silverdebian>.
[   23.875986] systemd[1]: Listening on udev Kernel Socket.
[   23.907576] systemd[1]: Listening on Syslog Socket.
[   23.937480] systemd[1]: Listening on RPCbind Server Activation Socket.
[   23.977448] systemd[1]: Listening on fsck to fsckd communication Socket.
[   24.017581] systemd[1]: Listening on Journal Socket.
[   24.047755] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[   24.087513] systemd[1]: Listening on Journal Socket (/dev/log).
[   24.807288] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro
[   25.648397] systemd-journald[185]: Received request to flush runtime journal from PID 1
[   26.585673] input: gpio_keys as /devices/platform/gpio_keys/input/input1
[   26.697183] (NULL device *): hwmon_device_register() is deprecated. Please convert the driver to use hwmon_device_register_with_info().
[   27.080846] adt7475 0-002e: hwmon_device_register() is deprecated. Please convert the driver to use hwmon_device_register_with_info().
[   27.102402] orion_wdt: Initial timeout 21 sec
[   27.189273] random: crng init done
[   27.228384] marvell-cesa f1030000.crypto: CESA device successfully registered
[   27.317499] sd 0:0:0:0: Attached scsi generic sg0 type 0
[   27.424385] media: Linux media interface: v0.10
[   27.432783] adt7475 0-002e: ADT7473 device, revision 0
[   27.505805] dvb_usb_af9035 1-1:1.0: prechip_version=83 chip_version=02 chip_type=9135
[   27.549706] usb 1-1: dvb_usb_v2: found a 'ITE 9135(9006) Generic' in cold state
[   27.565641] usb 1-1: dvb_usb_v2: downloading firmware from file 'dvb-usb-it9135-02.fw'
[   27.713440] dvb_usb_af9035 1-1:1.0: firmware version=3.42.3.3
[   27.713476] usb 1-1: dvb_usb_v2: found a 'ITE 9135(9006) Generic' in warm state
[   27.713488] dvb_usb_af9035 1-1:1.0: [0] overriding tuner from 00 to 60
[   27.714328] usb 1-1: dvb_usb_v2: will pass the complete MPEG2 transport stream to the software demuxer
[   27.714614] dvbdev: DVB: registering new adapter (ITE 9135(9006) Generic)
[   27.714629] usb 1-1: media controller created
[   27.716335] dvbdev: dvb_create_media_entity: media entity 'dvb-demux' registered.
[   27.786950] af9033 1-001c: firmware version: LINK 3.42.3.3 - OFDM 3.29.3.3
[   27.786960] af9033 1-001c: Afatech AF9033 successfully attached
[   27.787175] usb 1-1: DVB: registering adapter 0 frontend 0 (Afatech AF9033 (DVB-T))...
[   27.787198] dvbdev: dvb_create_media_entity: media entity 'Afatech AF9033 (DVB-T)' registered.
[   27.830242] it913x it9133bx-tuner.0.auto: ITE IT913X BX successfully attached
[   27.850441] rc rc0: ITE 9135(9006) Generic as /devices/platform/ocp@f1000000/f1050000.ehci/usb1/1-1/rc/rc0
[   27.917185] Registered IR keymap rc-it913x-v1
[   27.917548] input: ITE 9135(9006) Generic as /devices/platform/ocp@f1000000/f1050000.ehci/usb1/1-1/rc/rc0/input2
[   27.917573] usb 1-1: dvb_usb_v2: 'ITE 9135(9006) Generic' successfully initialized and connected
[   27.917707] usbcore: registered new interface driver dvb_usb_af9035
[   28.439298] adt7475 0-002e: Optional features: fan4 pwm2
[   28.697404] Adding 2097148k swap on /dev/sda2.  Priority:-1 extents:1 across:2097148k FS
[   29.380222] EXT4-fs (sda3): mounted filesystem with ordered data mode. Opts: (null)
[   30.963556] Process accounting resumed
[   33.028469] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   34.685492] mv643xx_eth_port mv643xx_eth_port.0 eth0: link up, 100 Mb/s, full duplex, flow control disabled
[   34.695500] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   43.855092] NFSD: starting 90-second grace period (net c0d94190)
[   78.038658] usb 1-1: DVB: adapter 0 frontend 0 frequency 0 out of range (174000000..862000000)
root@silverdebian:~#

There is in the log : unsupported function gpio on pin mpp7


I have also attached LED description from the manual. Currently, Activity LED is constantly on in Debian. In stock OS it is off in normal mode.

Active LED also should be flashing during boot and shutdown in Debian, what is not the case at the moment. I assume it needs the following patch (also attached):

 		white-led-status {
 			label = "hncn2:white:status";
  			gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
- 			linux,default-trigger = "default-on";
- 		};
+            linux,default-trigger = "heartbeat";
+            default-state = "off";
+        };

---------------------------------


Regards,
garagoyun
Attachments:
open | download - led.pdf (111.7 KB)
open | download - kirkwood-silverstore-hncn2.patch (952 bytes)
Re: Debian on Freecom Silverstore 2 NAS
November 22, 2018 05:07PM
garagoyun,

[    0.151528] [Firmware Info]: /ocp@f1000000/ethernet-controller@72000/ethernet0-port@0: local-mac-address is not set
This is OK. We don't want to use local mac address.

[    9.332964] kirkwood-pinctrl f1010000.pin-controller: unsupported function gpio on pin mpp7
So Pin 7 has wrong definition or not available. We need to look at this.


Quote

I have also attached LED description from the manual. Currently, Activity LED is constantly on in Debian. In stock OS it is off in normal mode.

Active LED also should be flashing during boot and shutdown in Debian, what is not the case at the moment. I assume it needs the following patch (also attached):

+ linux,default-trigger = "heartbeat";


The above is not quite what we want.

The System LED should stay on after Linux has booted.

The flashing usually occurs when power on by u-boot control. And then the flashing stops at the time Linux has booted, and the LED should be on constantly. After that, its behavior should be whatever each user decides it to be.

To trigger the heartbeat, if desire at Linux boot and shutdown, you should do this in /etc/default/rcS.
echo heartbeat > /sys/class/leds/hncn2:white:status/trigger
and of course turn it on at end of /etc/rc.local
echo default-on > /sys/class/leds/hncn2:white:status/trigger

-bodhi
===========================
Forum Wiki
bodhi's corner



Edited 1 time(s). Last edit at 11/22/2018 05:08PM by bodhi.
Re: Debian on Freecom Silverstore 2 NAS
November 23, 2018 10:14AM
Sorry my bad, i missed the fact that mpp7 is gpo while transfering the configuration to the .dts

                        pmx_led_hdd1_red: pmx-led-hdd1-red {
                                marvell,pins = "mpp7";
                                marvell,function = "gpo";
                        };

atached devicetree works for me

datenhaven /usr/src/linux # cat /sys/kernel/debug/gpio
gpiochip0: GPIOs 0-31, parent: platform/f1010100.gpio, f1010100.gpio:
 gpio-7   (hncn2:hdd1:red      ) out lo
 gpio-13  (hncn2:hdd2:red      ) out lo

gpiochip1: GPIOs 32-49, parent: platform/f1010140.gpio, f1010140.gpio:
 gpio-36  (gpio_poweroff       ) out lo
 gpio-37  (hncn2:red:status    ) out hi
 gpio-38  (hncn2:white:status  ) out hi
 gpio-39  (hncn2:white:power   ) out lo
 gpio-47  (SATA1 Power         ) out hi

best regards
generik
Attachments:
open | download - kirkwood-silverstore-hncn2.dts (5.4 KB)
open | download - kirkwood-silverstore-hncn2.dtb (12.6 KB)
Re: Debian on Freecom Silverstore 2 NAS
November 23, 2018 01:23PM
generik,

Thank you, thats great. The error regarding mpp7 in dmesg log is gone now:

root@debian:/sys/kernel/debug# dmesg
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.12.1-kirkwood-tld-1 (root@tldDebian) (gcc version 4.9.2 (Debian 4.9.2-10) ) #1 PREEMPT Sat Jul 15 21:40:50 PDT 2017
[    0.000000] CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=0005397f
[    0.000000] CPU: VIVT data cache, VIVT instruction cache
[    0.000000] OF: fdt: Machine model: Freecom Silverstore HNCN2
[    0.000000] bootconsole [earlycon0] enabled
[    0.000000] Memory policy: Data cache writeback
[    0.000000] On node 0 totalpages: 32768
[    0.000000] free_area_init_node: node 0, pgdat c0d9e084, node_mem_map c7ef9000
[    0.000000]   Normal zone: 256 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 32768 pages, LIFO batch:7
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    0.000000] pcpu-alloc: [0] 0 
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 32512
[    0.000000] Kernel command line: console=ttyS0,115200 root=LABEL=rootfs rootdelay=10 mtdparts=orion_nand:0x000a0000@0x0(uboot),0x00040000@0x000a0000(param),0x00280000@0x000e0000(preroot),0x00380000@0x00360000(uimage),0x076e0000@0x006e0000(rootfs),0x00240000@0x07dc0000(misc),128m@0x0(flash) earlyprintk=serial
[    0.000000] PID hash table entries: 512 (order: -1, 2048 bytes)
[    0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
[    0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Memory: 108964K/131072K available (8192K kernel code, 716K rwdata, 1972K rodata, 1024K init, 288K bss, 22108K reserved, 0K cma-reserved)
[    0.000000] Virtual kernel memory layout:
                   vector  : 0xffff0000 - 0xffff1000   (   4 kB)
                   fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
                   vmalloc : 0xc8800000 - 0xff800000   ( 880 MB)
                   lowmem  : 0xc0000000 - 0xc8000000   ( 128 MB)
                   modules : 0xbf000000 - 0xc0000000   (  16 MB)
                     .text : 0xc0008000 - 0xc0900000   (9184 kB)
                     .init : 0xc0c00000 - 0xc0d00000   (1024 kB)
                     .data : 0xc0d00000 - 0xc0db3274   ( 717 kB)
                      .bss : 0xc0db9b9c - 0xc0e01e60   ( 289 kB)
[    0.000000] Preemptible hierarchical RCU implementation.
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    0.000000] clocksource: orion_clocksource: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 9556302233 ns
[    0.000008] sched_clock: 32 bits at 200MHz, resolution 5ns, wraps every 10737418237ns
[    0.007907] Switching to timer-based delay loop, resolution 5ns
[    0.014398] Console: colour dummy device 80x30
[    0.018974] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=2000000)
[    0.029580] pid_max: default: 32768 minimum: 301
[    0.034473] Security Framework initialized
[    0.038807] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.045482] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.053532] CPU: Testing write buffer coherency: ok
[    0.059536] Setting up static identity map for 0x100000 - 0x100058
[    0.066053] mvebu-soc-id: MVEBU SoC ID=0x6282, Rev=0x1
[    0.074803] devtmpfs: initialized
[    0.083421] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.093382] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.100005] prandom: seed boundary self test passed
[    0.109486] prandom: 100 self tests passed
[    0.113657] pinctrl core: initialized pinctrl subsystem
[    0.120207] NET: Registered protocol family 16
[    0.125205] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.133854] cpuidle: using governor ladder
[    0.138140] cpuidle: using governor menu
[    0.142619] Feroceon L2: Enabling L2
[    0.146301] Feroceon L2: Cache support initialised.
[    0.151681] [Firmware Info]: /ocp@f1000000/ethernet-controller@72000/ethernet0-port@0: local-mac-address is not set
[    0.168705] No ATAGs?
[    0.179816] vgaarb: loaded
[    0.185297] SCSI subsystem initialized
[    0.189372] libata version 3.00 loaded.
[    0.189729] usbcore: registered new interface driver usbfs
[    0.195356] usbcore: registered new interface driver hub
[    0.200872] usbcore: registered new device driver usb
[    0.207273] clocksource: Switched to clocksource orion_clocksource
[    0.319363] VFS: Disk quotas dquot_6.6.0
[    0.323439] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    0.342972] NET: Registered protocol family 2
[    0.348277] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.355310] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.361771] TCP: Hash tables configured (established 1024 bind 1024)
[    0.368292] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.374203] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.380752] NET: Registered protocol family 1
[    0.385640] RPC: Registered named UNIX socket transport module.
[    0.391705] RPC: Registered udp transport module.
[    0.396475] RPC: Registered tcp transport module.
[    0.401283] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.407806] PCI: CLS 0 bytes, default 32
[    0.408071] Unpacking initramfs...
[    1.226878] Freeing initrd memory: 7532K
[    1.231170] NetWinder Floating Point Emulator V0.97 (double precision)
[    1.238843] audit: initializing netlink subsys (disabled)
[    1.244792] Initialise system trusted keyrings
[    1.249372] audit: type=2000 audit(1.227:1): state=initialized audit_enabled=0 res=1
[    1.257250] Key type blacklist registered
[    1.261553] workingset: timestamp_bits=30 max_order=15 bucket_order=0
[    1.268199] zbud: loaded
[    1.271910] NFS: Registering the id_resolver key type
[    1.277053] Key type id_resolver registered
[    1.281384] Key type id_legacy registered
[    1.285484] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    1.292281] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
[    1.298934] jffs2: version 2.2. (NAND) (SUMMARY)  \xffffffc2\xffffffa9 2001-2006 Red Hat, Inc.
[    1.306249] fuse init (API version 7.26)
[    1.310657] orangefs_debugfs_init: called with debug mask: :none: :0:
[    1.317443] orangefs_init: module version upstream loaded
[    1.322900] SGI XFS with ACLs, security attributes, realtime, no debug enabled
[    2.567283] random: fast init done
[    8.346132] Key type asymmetric registered
[    8.350617] Asymmetric key parser 'x509' registered
[    8.355623] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 249)
[    8.363237] io scheduler noop registered
[    8.367230] io scheduler deadline registered
[    8.371716] io scheduler cfq registered (default)
[    8.378020] kirkwood-pinctrl f1010000.pin-controller: registered pinctrl driver
[    8.387615] mvebu-pcie mbus@f1000000:pcie@82000000: PCI host bridge to bus 0000:00
[    8.395251] pci_bus 0000:00: root bus resource [io  0x1000-0xfffff]
[    8.401618] pci_bus 0000:00: root bus resource [mem 0xe0000000-0xefffffff]
[    8.408578] pci_bus 0000:00: root bus resource [bus 00-ff]
[    8.414124] pci_bus 0000:00: scanning bus
[    8.414166] pci 0000:00:01.0: [11ab:6282] type 01 class 0x060400
[    8.414211] pci 0000:00:01.0: calling pci_fixup_ide_bases+0x0/0x40
[    8.414483] pci_bus 0000:00: fixups for bus
[    8.414496] PCI: bus0: Fast back to back transfers disabled
[    8.420167] pci 0000:00:01.0: scanning [bus 00-00] behind bridge, pass 0
[    8.420178] pci 0000:00:01.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    8.428265] pci 0000:00:01.0: scanning [bus 00-00] behind bridge, pass 1
[    8.428420] pci_bus 0000:01: scanning bus
[    8.428463] pci 0000:01:00.0: [1033:0194] type 00 class 0x0c0330
[    8.428510] pci 0000:01:00.0: reg 0x10: [mem 0x90000000-0x90001fff 64bit]
[    8.428586] pci 0000:01:00.0: calling pci_fixup_ide_bases+0x0/0x40
[    8.428680] pci 0000:01:00.0: PME# supported from D0 D3hot
[    8.428693] pci 0000:01:00.0: PME# disabled
[    8.457342] pci_bus 0000:01: fixups for bus
[    8.457356] PCI: bus1: Fast back to back transfers disabled
[    8.462991] pci_bus 0000:01: bus scan returning with max=01
[    8.463004] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
[    8.463018] pci_bus 0000:00: bus scan returning with max=01
[    8.463033] pci 0000:00:01.0: fixup irq: got 0
[    8.463041] pci 0000:00:01.0: assigning IRQ 00
[    8.463152] pci 0000:01:00.0: fixup irq: got 34
[    8.463162] pci 0000:01:00.0: assigning IRQ 34
[    8.463201] pci 0000:00:01.0: BAR 14: assigned [mem 0xe0000000-0xe00fffff]
[    8.470180] pci 0000:01:00.0: BAR 0: assigned [mem 0xe0000000-0xe0001fff 64bit]
[    8.477580] pci 0000:00:01.0: PCI bridge to [bus 01]
[    8.482619] pci 0000:00:01.0:   bridge window [mem 0xe0000000-0xe00fffff]
[    8.489574] pcieport 0000:00:01.0: enabling device (0140 -> 0142)
[    8.495743] pcieport 0000:00:01.0: enabling bus mastering
[    8.495791] pci 0000:01:00.0: calling quirk_usb_early_handoff+0x0/0x64c
[    8.495806] pci 0000:00:01.0: enabling bus mastering
[    8.496429] mv_xor f1060800.xor: Marvell shared XOR driver
[    8.558175] mv_xor f1060800.xor: Marvell XOR (Registers Mode): ( xor cpy sg intr )
[    8.566068] mv_xor f1060900.xor: Marvell shared XOR driver
[    8.628178] mv_xor f1060900.xor: Marvell XOR (Registers Mode): ( xor cpy sg intr )
[    8.636301] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    8.644317] console [ttyS0] disabled
[    8.648100] f1012000.serial: ttyS0 at MMIO 0xf1012000 (irq = 26, base_baud = 12500000) is a 16550A
[    8.657146] console [ttyS0] enabled
[    8.664295] bootconsole [earlycon0] disabled
[    8.682868] loop: module loaded
[    8.686372] sata_mv f1080000.sata: version 1.28
[    8.686672] sata_mv f1080000.sata: slots 32 ports 2
[    8.694914] scsi host0: sata_mv
[    8.698636] scsi host1: sata_mv
[    8.702088] ata1: SATA max UDMA/133 irq 33
[    8.706208] ata2: SATA max UDMA/133 irq 33
[    8.711222] nand: device found, Manufacturer ID: 0xec, Chip ID: 0xf1
[    8.717725] nand: Samsung NAND 128MiB 3,3V 8-bit
[    8.722366] nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
[    8.730003] Scanning device for bad blocks
[    8.757574] Bad eraseblock 290 at 0x000002440000
[    8.793212] Bad eraseblock 675 at 0x000005460000
[    8.825946] 7 cmdlinepart partitions found on MTD device orion_nand
[    8.832269] Creating 7 MTD partitions on "orion_nand":
[    8.837472] 0x000000000000-0x0000000a0000 : "uboot"
[    8.843924] 0x0000000a0000-0x0000000e0000 : "param"
[    8.850411] 0x0000000e0000-0x000000360000 : "preroot"
[    8.857032] 0x000000360000-0x0000006e0000 : "uimage"
[    8.863408] 0x0000006e0000-0x000007dc0000 : "rootfs"
[    8.870693] 0x000007dc0000-0x000008000000 : "misc"
[    8.876873] 0x000000000000-0x000008000000 : "flash"
[    8.885601] libphy: Fixed MDIO Bus: probed
[    8.890755] libphy: orion_mdio_bus: probed
[    8.900549] mv643xx_eth: MV-643xx 10/100/1000 ethernet driver version 1.4
[    9.008552] mv643xx_eth_port mv643xx_eth_port.0 eth0: port 0 with MAC address 00:01:db:1e:24:c2
[    9.017503] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    9.024124] ehci-pci: EHCI PCI platform driver
[    9.028701] ehci-orion: EHCI orion driver
[    9.033004] orion-ehci f1050000.ehci: EHCI Host Controller
[    9.038610] orion-ehci f1050000.ehci: new USB bus registered, assigned bus number 1
[    9.046589] orion-ehci f1050000.ehci: irq 30, io mem 0xf1050000
[    9.077318] orion-ehci f1050000.ehci: USB 2.0 started, EHCI 1.00
[    9.083629] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    9.090490] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    9.097769] usb usb1: Product: EHCI Host Controller
[    9.102672] usb usb1: Manufacturer: Linux 4.12.1-kirkwood-tld-1 ehci_hcd
[    9.109427] usb usb1: SerialNumber: f1050000.ehci
[    9.115032] hub 1-0:1.0: USB hub found
[    9.118921] hub 1-0:1.0: 1 port detected
[    9.123607] xhci_hcd 0000:01:00.0: enabling bus mastering
[    9.123620] xhci_hcd 0000:01:00.0: xHCI Host Controller
[    9.128973] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 2
[    9.136782] xhci_hcd 0000:01:00.0: hcc params 0x014042cb hci version 0x96 quirks 0x00000004
[    9.145238] xhci_hcd 0000:01:00.0: enabling Mem-Wr-Inval
[    9.145497] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
[    9.152357] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    9.159637] usb usb2: Product: xHCI Host Controller
[    9.164540] usb usb2: Manufacturer: Linux 4.12.1-kirkwood-tld-1 xhci-hcd
[    9.171296] usb usb2: SerialNumber: 0000:01:00.0
[    9.176640] hub 2-0:1.0: USB hub found
[    9.180522] hub 2-0:1.0: 2 ports detected
[    9.185117] xhci_hcd 0000:01:00.0: xHCI Host Controller
[    9.190448] xhci_hcd 0000:01:00.0: new USB bus registered, assigned bus number 3
[    9.198036] usb usb3: We don't know the algorithms for LPM for this host, disabling LPM.
[    9.206329] usb usb3: New USB device found, idVendor=1d6b, idProduct=0003
[    9.213188] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    9.220497] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl F300)
[    9.227082] ata1.00: ATA-9: ST2000DM001-1ER164, HP51, max UDMA/100
[    9.227092] ata1.00: 3907029168 sectors, multi 0: LBA48 NCQ (depth 31/32)
[    9.240831] ata1.00: configured for UDMA/100
[    9.241417] scsi 0:0:0:0: Direct-Access     ATA      ST2000DM001-1ER1 HP51 PQ: 0 ANSI: 5
[    9.242689] sd 0:0:0:0: [sda] 3907029168 512-byte logical blocks: (2.00 TB/1.82 TiB)
[    9.242700] sd 0:0:0:0: [sda] 4096-byte physical blocks
[    9.242788] sd 0:0:0:0: [sda] Write Protect is off
[    9.242799] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
[    9.242952] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[    9.284799] usb usb3: Product: xHCI Host Controller
[    9.290335] usb usb3: Manufacturer: Linux 4.12.1-kirkwood-tld-1 xhci-hcd
[    9.297422] usb usb3: SerialNumber: 0000:01:00.0
[    9.302848] hub 3-0:1.0: USB hub found
[    9.306680] hub 3-0:1.0: 2 ports detected
[    9.312081]  sda: sda1 sda2 sda3 sda4 sda5
[    9.317026] usbcore: registered new interface driver usb-storage
[    9.325648] sd 0:0:0:0: [sda] Attached SCSI disk
[    9.330798] mousedev: PS/2 mouse device common for all mice
[    9.337106] rtc-mv f1010300.rtc: rtc core: registered f1010300.rtc as rtc0
[    9.344398] i2c /dev entries driver
[    9.351108] hidraw: raw HID events driver (C) Jiri Kosina
[    9.356983] drop_monitor: Initializing network drop monitor service
[    9.363621] NET: Registered protocol family 17
[    9.368217] Key type dns_resolver registered
[    9.373493] registered taskstats version 1
[    9.377649] Loading compiled-in X.509 certificates
[    9.382526] zswap: loaded using pool lzo/zbud
[    9.398161] Key type big_key registered
[    9.413007] Key type encrypted registered
[    9.419130] rtc-mv f1010300.rtc: setting system clock to 2018-11-23 20:09:10 UTC (1543003750)
[    9.428036] PM: Hibernation image not present or could not be loaded.
[    9.477313] usb 1-1: new high-speed USB device number 2 using orion-ehci
[    9.580486] ata2: SATA link down (SStatus 0 SControl F300)
[    9.599747] Freeing unused kernel memory: 1024K
[    9.668485] usb 1-1: New USB device found, idVendor=0781, idProduct=5530
[    9.675251] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    9.694989] usb 1-1: Product: Cruzer
[    9.700427] usb 1-1: Manufacturer: SanDisk
[    9.704553] usb 1-1: SerialNumber: 431701078BE16843
[    9.720953] usb-storage 1-1:1.0: USB Mass Storage device detected
[    9.737736] scsi host2: usb-storage 1-1:1.0
[   10.220112] usbcore: registered new interface driver uas
[   10.818454] scsi 2:0:0:0: Direct-Access     SanDisk  Cruzer           8.02 PQ: 0 ANSI: 0 CCS
[   10.833303] sd 2:0:0:0: [sdb] 31301631 512-byte logical blocks: (16.0 GB/14.9 GiB)
[   10.845532] sd 2:0:0:0: [sdb] Write Protect is off
[   10.857108] sd 2:0:0:0: [sdb] Mode Sense: 45 00 00 08
[   10.857785] sd 2:0:0:0: [sdb] No Caching mode page found
[   10.863140] sd 2:0:0:0: [sdb] Assuming drive cache: write through
[   10.887238]  sdb: sdb1
[   10.896057] sd 2:0:0:0: [sdb] Attached SCSI removable disk
[   20.941180] EXT4-fs (sdb1): mounting ext3 file system using the ext4 subsystem
[   20.961649] EXT4-fs (sdb1): mounted filesystem with ordered data mode. Opts: (null)
[   23.313520] input: gpio_keys as /devices/platform/gpio_keys/input/input0
[   23.619341] (NULL device *): hwmon_device_register() is deprecated. Please convert the driver to use hwmon_device_register_with_info().
[   23.711097] adt7475 0-002e: hwmon_device_register() is deprecated. Please convert the driver to use hwmon_device_register_with_info().
[   23.711280] adt7475 0-002e: ADT7473 device, revision 0
[   23.711289] adt7475 0-002e: Optional features: fan4 pwm2
[   23.943533] sd 0:0:0:0: Attached scsi generic sg0 type 0
[   23.981770] marvell-cesa f1030000.crypto: CESA device successfully registered
[   23.995354] sd 2:0:0:0: Attached scsi generic sg1 type 0
[   24.065996] orion_wdt: Initial timeout 21 sec
[   24.249176] random: crng init done
[   25.619712] EXT4-fs (sdb1): re-mounted. Opts: errors=remount-ro
[   31.716505] mv643xx_eth_port mv643xx_eth_port.0 eth0: link up, 1000 Mb/s, full duplex, flow control disabled
[   35.877554] NET: Registered protocol family 10
[   35.885095] Segment Routing with IPv6

However, my output for gpio is slightly diffrent. Is that ok?

root@debian:/sys/kernel/debug# mount -t debugfs debugfs /sys/kernel/debug
root@debian:/sys/kernel/debug# cat /sys/kernel/debug/gpio
gpiochip0: GPIOs 0-31, parent: platform/f1010100.gpio, f1010100.gpio:
 gpio-7   (hncn2:hdd1:red      ) out lo 
 gpio-13  (hncn2:hdd2:red      ) out lo 
 gpio-29  (Reset Button        ) in  hi (act lo) - IRQ edge  (clear  )

gpiochip1: GPIOs 32-49, parent: platform/f1010140.gpio, f1010140.gpio:
 gpio-36  (?                   ) out lo 
 gpio-37  (hncn2:red:status    ) out lo 
 gpio-38  (hncn2:white:status  ) out hi 
 gpio-39  (hncn2:white:power   ) out lo 
 gpio-47  (SATA1 Power         ) out hi 
 gpio-49  (Power Button        ) in  hi (act lo) - IRQ edge  (clear  )
root@debian:/sys/kernel/debug# dmesg

I have also realised, that now the power led is off after it boots to Debian (before it was on constantly) and the status led is constantly on with blinking red light at the same time (before it was just white light).

---------------------------------


Regards,
garagoyun



Edited 2 time(s). Last edit at 11/24/2018 01:57AM by garagoyun.
Re: Debian on Freecom Silverstore 2 NAS
November 24, 2018 05:02AM
Hello garagoyun,

your gpio output is slightly different because my gpio_keys stopped workding, if i try to register the driver. it complains about unsupported function on mpp49

kirkwood-pinctrl f1010000.pin-controller: unsupported function gpio on pin mpp49
pinctrl core: failed to register map default (0): invalid type given
gpio-keys: probe of gpio_keys failed with error -22

I'm using linux 4.14 and it seems to strictly check about gpo / gpio functionalty.

mpp49 is indeed an gpo pin.
https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/pinctrl/marvell,kirkwood-pinctrl.txt#L282
But i double checked if i register mpp49 via /sys/class/gpio i can verify that pressing power button will change the input value.

if i changed mpp49 pin to gpo
pmx_btn_power: pmx-btn-power {
        marvell,pins = "mpp49";
        marvell,function = "gpo";
};

the gpio_keys driver bails out with error -524, most likely because the driver does not allow to register gpo pins as input devices :(.
gpio-keys gpio_keys: failed to get gpio: -524
gpio-keys: probe of gpio_keys failed with error -524

@garagoyun
since your gpio_keys seems to be registered, can you check if they are acutally working?
Something like this:

~ # evtest /dev/input/event0
Input driver version is 1.0.1
Input device ID: bus 0x19 vendor 0x1 product 0x1 version 0x100
Input device name: "gpio_keys"
Supported events:
  Event type 0 (EV_SYN)
  Event type 1 (EV_KEY)
    Event code 408 (KEY_RESTART)
Properties:
Testing ... (interrupt to exit)
Event: time 1543055198.030828, type 1 (EV_KEY), code 408 (KEY_RESTART), value 1
Event: time 1543055198.030828, -------------- SYN_REPORT ------------
Event: time 1543055198.280820, type 1 (EV_KEY), code 408 (KEY_RESTART), value 0

gpio-36 looks odd, this one powers off the device, can you check if your device actually powers off after shutdown?
maybee CONFIG_POWER_RESET_GPIO is missing in the kernel configuration?

cat /sys/kernel/debug/pinctrl/f1010000.pin-controller/pinmux-pins | grep 36
pin 36 (PIN36): gpio_poweroff mvebu-gpio:36 function gpio group mpp36

as for leds, you can configure these under /sys/class/leds to your heart's content. in the devicetree it would make sense to configure the power-led always-on and i highly recommend to set heartbeat trigger to status-led-red. I mean if this is not an dedicated led for linux heartbeat trigger then what else is ;)

best regards
generik
Attachments:
open | download - heartbeat-led.jpg (21.2 KB)
Re: Debian on Freecom Silverstore 2 NAS
November 24, 2018 12:01PM
generik,

Thanks for the explanation.

My buttons are working for quite some time. bodhi advised me to use the esekeyd and I have set RESET and POWER buttons: POWER and RESTART with KEY_116 and KEY_408.

#KEY_116:/usr/bin/logger -s -i "POWER button pushed"
KEY_116:/sbin/shutdown -h now
#KEY_408:/usr/bin/logger -s -i "RESTART button pushed"
KEY_408:/sbin/shutdown -r now


My output from evtest as requested:
root@debian:~# evtest /dev/input/event0
Input driver version is 1.0.1
Input device ID: bus 0x19 vendor 0x1 product 0x1 version 0x100
Input device name: "gpio_keys"
Supported events:
  Event type 0 (EV_SYN)
  Event type 1 (EV_KEY)
    Event code 116 (KEY_POWER)
    Event code 408 (KEY_RESTART)
Properties:
Testing ... (interrupt to exit)
Event: time 1543084513.013558, type 1 (EV_KEY), code 116 (KEY_POWER), value 0
Event: time 1543084513.013558, -------------- SYN_REPORT ------------
Event: time 1543084513.173564, type 1 (EV_KEY), code 116 (KEY_POWER), value 1
Event: time 1543084513.173564, -------------- SYN_REPORT ------------
Event: time 1543084528.173561, type 1 (EV_KEY), code 116 (KEY_POWER), value 0
Event: time 1543084528.173561, -------------- SYN_REPORT ------------
Event: time 1543084528.273565, type 1 (EV_KEY), code 116 (KEY_POWER), value 1
Event: time 1543084528.273565, -------------- SYN_REPORT ------------
Event: time 1543084529.603555, type 1 (EV_KEY), code 116 (KEY_POWER), value 0
Event: time 1543084529.603555, -------------- SYN_REPORT ------------
Event: time 1543084529.733561, type 1 (EV_KEY), code 116 (KEY_POWER), value 1
Event: time 1543084529.733561, -------------- SYN_REPORT ------------
Event: time 1543084581.333551, type 1 (EV_KEY), code 408 (KEY_RESTART), value 1
Event: time 1543084581.333551, -------------- SYN_REPORT ------------
Event: time 1543084582.133555, type 1 (EV_KEY), code 408 (KEY_RESTART), value 0
Event: time 1543084582.133555, -------------- SYN_REPORT ------------

Quote
generik
gpio-36 looks odd, this one powers off the device, can you check if your device actually powers off after shutdown?
maybee CONFIG_POWER_RESET_GPIO is missing in the kernel configuration?

All lights are off after shutdown. I believe it does poweroff completely....

Below outputs from each of my devices:
root@silverdebian:/DataVolume/shares# cat /sys/kernel/debug/gpio
gpiochip0: GPIOs 0-31, parent: platform/f1010100.gpio, f1010100.gpio:
 gpio-7   (hncn2:hdd1:red      ) out lo 
 gpio-13  (hncn2:hdd2:red      ) out lo 
 gpio-29  (Reset Button        ) in  hi (act lo) - IRQ edge  (clear  )

gpiochip1: GPIOs 32-49, parent: platform/f1010140.gpio, f1010140.gpio:
 gpio-36  (?                   ) out lo 
 gpio-37  (hncn2:red:status    ) out lo 
 gpio-38  (hncn2:white:status  ) out hi 
 gpio-39  (hncn2:white:power   ) out lo 
 gpio-47  (SATA1 Power         ) out hi 
 gpio-49  (Power Button        ) in  hi (act lo) - IRQ edge  (clear  )
root@silverdebian:/DataVolume/shares# cat /sys/kernel/debug/pinctrl/f1010000.pin-controller/pinmux-pins | grep 36
pin 36 (PIN36): gpio_poweroff mvebu-gpio:36 function gpio group mpp36

I need to execute the following command for the second device, not sure why I do not need for the first one. I might have installed something:
mount -t debugfs debugfs /sys/kernel/debug
root@debian:~# cat /sys/kernel/debug/gpio
gpiochip0: GPIOs 0-31, parent: platform/f1010100.gpio, f1010100.gpio:
 gpio-7   (hncn2:hdd1:red      ) out lo 
 gpio-13  (hncn2:hdd2:red      ) out lo 
 gpio-29  (Reset Button        ) in  hi (act lo) - IRQ edge  (clear  )

gpiochip1: GPIOs 32-49, parent: platform/f1010140.gpio, f1010140.gpio:
 gpio-36  (?                   ) out lo 
 gpio-37  (hncn2:red:status    ) out lo 
 gpio-38  (hncn2:white:status  ) out hi 
 gpio-39  (hncn2:white:power   ) out lo 
 gpio-47  (SATA1 Power         ) out hi 
 gpio-49  (Power Button        ) in  hi (act lo) - IRQ edge  (clear  )
root@debian:~# cat /sys/kernel/debug/pinctrl/f1010000.pin-controller/pinmux-pins | grep 36
pin 36 (PIN36): gpio_poweroff mvebu-gpio:36 function gpio group mpp36



Quote

I mean if this is not an dedicated led for linux heartbeat trigger then what else is ;)

haha I must agree with that.

---------------------------------


Regards,
garagoyun



Edited 2 time(s). Last edit at 11/24/2018 12:29PM by garagoyun.
Re: Debian on Freecom Silverstore 2 NAS
November 24, 2018 04:07PM
@generik,


Kirkwood 49 is a GPIO.
36 is PowerOff GPIO on this box.

I believe garagoyun has tested 36 before. Indeed:

Quote

All lights are off after shutdown. I believe it does poweroff completely....

I see above, GPIO 49 is working as Power button, too.

-bodhi
===========================
Forum Wiki
bodhi's corner



Edited 1 time(s). Last edit at 11/24/2018 04:10PM by bodhi.
Re: Debian on Freecom Silverstore 2 NAS
November 24, 2018 04:12PM
Quote

generik
gpio-36 looks odd, this one powers off the device, can you check if your device actually powers off after shutdown?
maybee CONFIG_POWER_RESET_GPIO is missing in the kernel configuration?

My kernel build alway has this configured in. Perhaps the mainline kernel does not?

-bodhi
===========================
Forum Wiki
bodhi's corner



Edited 1 time(s). Last edit at 11/24/2018 04:13PM by bodhi.
Author:

Your Email:


Subject:


Spam prevention:
Please, enter the code that you see below in the input field. This is for blocking bots that try to post this form automatically. If the code is hard to read, then just try to guess it right. If you enter the wrong code, a new image is created and you get another chance to enter it right.
Message: