Re: [PATCH 1/4] ARM: dt: mvebu: ix4-300d: remove whole flash partition
>From mobile > Le 28 nov. 2015 à 18:38, Sebastian Hesselbarth > a écrit : > >> On 28.11.2015 17:52, Andrew Lunn wrote: >>> On Sat, Nov 28, 2015 at 12:14:05PM +0100, Sebastian Hesselbarth wrote: >>> Current NAND node has an additional flash partition for the whole >>> flash overlapping with real partitions. Remove this partition as >>> the whole flash is already represented by the NAND device itself. >> >> If i remember correctly, we discussed this when the contribution was >> made. I think the stock firmware might use this for applying updates. >> Maybe Benoit can comment? > > Yes, please. >From my memory since I'm not running the stock firmware it uses the MTD device directly. This is safe to remove. I was not very contort able with this flash dts part it was copied over from a netgear mevbu device ... > >> If so, removing this will break compatibility with stock firmware. Do >> we want to do that? There are a few other mvebu dts files with a >> partition spanning the whole flash. Should we remove them as well? > > Well, there is already a mtd device that spans the whole flash so > what is the purpose of another "partition" that isn't a part but > all of the device? Actually, I doubt that a FW update will wipe > the flash as a whole, i.e. including boot loader, boot env, user > config. > > Anyway, let's see if Benoit can shed some light on this. > > FWIW, neither single partitions nor a combined partitions node > should be a direct sub-node of the _controller_ but a NAND > _device_ node instead. Luckily, multi-device systems are not that > common, so I guess we wait with it until such a system pops up for > testing. > > Sebastian > > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 1/4] ARM: dt: mvebu: ix4-300d: remove whole flash partition
>From mobile > Le 28 nov. 2015 à 18:38, Sebastian Hesselbarth >a écrit : > >> On 28.11.2015 17:52, Andrew Lunn wrote: >>> On Sat, Nov 28, 2015 at 12:14:05PM +0100, Sebastian Hesselbarth wrote: >>> Current NAND node has an additional flash partition for the whole >>> flash overlapping with real partitions. Remove this partition as >>> the whole flash is already represented by the NAND device itself. >> >> If i remember correctly, we discussed this when the contribution was >> made. I think the stock firmware might use this for applying updates. >> Maybe Benoit can comment? > > Yes, please. >From my memory since I'm not running the stock firmware it uses the MTD device directly. This is safe to remove. I was not very contort able with this flash dts part it was copied over from a netgear mevbu device ... > >> If so, removing this will break compatibility with stock firmware. Do >> we want to do that? There are a few other mvebu dts files with a >> partition spanning the whole flash. Should we remove them as well? > > Well, there is already a mtd device that spans the whole flash so > what is the purpose of another "partition" that isn't a part but > all of the device? Actually, I doubt that a FW update will wipe > the flash as a whole, i.e. including boot loader, boot env, user > config. > > Anyway, let's see if Benoit can shed some light on this. > > FWIW, neither single partitions nor a combined partitions node > should be a direct sub-node of the _controller_ but a NAND > _device_ node instead. Luckily, multi-device systems are not that > common, so I guess we wait with it until such a system pops up for > testing. > > Sebastian > > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 0/8] Armada XP pinctrl consolidation and ix4-300d fixes
Le 15 oct. 2014 à 16:41, Andrew Lunn a écrit : >>> All the 3 branch works WHEN APPLYING A0 patch (below), with both my custom >>> kernel config and the arch/arm/configs/mvebu_v7_defconfig >> Just one thing though, one of my cron behavior change with 3.17, when I use >> the cmd "/sbin/hwclock --adjust -f /dev/rtc1" I get this new error I never >> had before: >> "hwclock: select() to /dev/rtc1 to wait for clock tick timed out: Success" >> >> where rtc1 if the i2c rtc connected to the i2C bus, can this be related to >> the i2c patch that would slow down i2c operation or somthing ? > > Hi Benoit > > It won't fix your problem, but if the built in RTC is not usable, it > would be good to disable it in the .dts file. The i2c RTC will then > become RTC0. > > > The actual "error" message is odd: > "hwclock: select() to /dev/rtc1 to wait for clock tick timed out: Success" > Yes this is the wired thing is that everything works, even getting the date via "cat /sys/class/i2c-adapter/i2c-0/0-0051/rtc/rtc1/time" is ok reading the rtc driver code it seems this message is shown when multiple resources try to access shared rtc... but why now and not before ? So I was wondering if the i2c_quirk() applied by the batch has any effect with this ? Anyhow I'll handle the message for now and see if there are performance impact on this... Benoit > Success means it actually worked, not an error. Does the RTC contain > the correct time afterwards? > >Andrew -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 0/8] Armada XP pinctrl consolidation and ix4-300d fixes
Le 15 oct. 2014 à 16:41, Andrew Lunn and...@lunn.ch a écrit : All the 3 branch works WHEN APPLYING A0 patch (below), with both my custom kernel config and the arch/arm/configs/mvebu_v7_defconfig Just one thing though, one of my cron behavior change with 3.17, when I use the cmd /sbin/hwclock --adjust -f /dev/rtc1 I get this new error I never had before: hwclock: select() to /dev/rtc1 to wait for clock tick timed out: Success where rtc1 if the i2c rtc connected to the i2C bus, can this be related to the i2c patch that would slow down i2c operation or somthing ? Hi Benoit It won't fix your problem, but if the built in RTC is not usable, it would be good to disable it in the .dts file. The i2c RTC will then become RTC0. The actual error message is odd: hwclock: select() to /dev/rtc1 to wait for clock tick timed out: Success Yes this is the wired thing is that everything works, even getting the date via cat /sys/class/i2c-adapter/i2c-0/0-0051/rtc/rtc1/time is ok reading the rtc driver code it seems this message is shown when multiple resources try to access shared rtc... but why now and not before ? So I was wondering if the i2c_quirk() applied by the batch has any effect with this ? Anyhow I'll handle the message for now and see if there are performance impact on this... Benoit Success means it actually worked, not an error. Does the RTC contain the correct time afterwards? Andrew -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 0/8] Armada XP pinctrl consolidation and ix4-300d fixes
Le 6 oct. 2014 à 18:13, Sebastian Hesselbarth a écrit : > On 10/06/2014 01:11 AM, Benoit Masson wrote: >> Le 3 oct. 2014 à 17:41, Sebastian Hesselbarth >> a écrit : >>> On 10/03/2014 05:29 PM, Benoit Masson wrote: >>>> Le 3 oct. 2014 à 17:06, Sebastian Hesselbarth >>>> a écrit : >>>>> On 10/03/2014 04:11 PM, Jason Cooper wrote: >>>>>> On Sun, Sep 21, 2014 at 04:11:23PM +0200, Benoit Masson wrote: >>>>>>>> Le 19 sept. 2014 à 22:14, Sebastian Hesselbarth >>>>>>>> a écrit : >>> [...] >>>>>>>> Patches are based on v3.17-rc1 and intended for v3.18 but I am not in >>>>>>>> a hurry. I only compile tested this, so a formal Tested-by from Benoit >>>>>>>> for the ix4 and any other Armada XP board would be great. >>>>>>> >>>>>>> I'm not sure what to test since I only receive some patch from the >>>>>>> series of 8. Should I get all 8 or only those you sent me. I'll be >>>>>>> able to test during next week. >>>>>> >>>>>> Did you ever get a chance to test this series? >>>>> >>>>> Uhm, I never prepared a branch for Benoit to test. I have pushed the >>>>> patches with Thomas Acked-by's and renamed eeprom node based on >>>>> v3.17-rc1 to >>>>> >>>>> https://github.com/shesselba/linux-dove.git devel/mvebu-ix4 >>>>> >>> [...] >> Maybe I missed something ? is this branch you sent me a bare fork >> from mainline 3.17 ? does it includes the armada XP step A0 patch ? > > Benoit, > Hi, > I prepared more branches with the series > - on top of v3.17 release: > https://github.com/shesselba/linux-dove.git devel/mvebu-ix4_v3.17 > > - on top of next-20141003 (i.e. what will become v3.18-rc1): > https://github.com/shesselba/linux-dove.git devel/mvebu-ix4_next-20141003 > > It would be great, if you can test in this order: > - vanilla v3.17 > - mvebu-ix4_v3.17 > - mvebu-ix4_next-20141003 > All the 3 branch works WHEN APPLYING A0 patch (below), with both my custom kernel config and the arch/arm/configs/mvebu_v7_defconfig The reason why it didn't worked last time was that apparently the A0 patch (copied) below was not merged into 3.17 :( This means that ix4-300d support is broken on 3.17 because of the A0 stepping patch not merged. patch (from Andrew Lunn Acked-by Gregory Clement is missing: --- arch/arm/mach-mvebu/board-v7.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/mach-mvebu/board-v7.c b/arch/arm/mach-mvebu/board-v7.c index b2524d6..b1e148d 100644 --- a/arch/arm/mach-mvebu/board-v7.c +++ b/arch/arm/mach-mvebu/board-v7.c @@ -174,7 +174,7 @@ static void __init thermal_quirk(void) static void __init mvebu_dt_init(void) { - if (of_machine_is_compatible("plathome,openblocks-ax3-4")) + if (of_machine_is_compatible("marvell,armadaxp")) i2c_quirk(); if (of_machine_is_compatible("marvell,a375-db")) { external_abort_quirk(); -- 1.9.1 > If any branch fails, you can stop and please report back. > > I also have the ix4 but I need more time for a full setup like you > already seem to have ready. Again, there is no hurry, take your time. > > Thanks! > > Sebastian -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 0/8] Armada XP pinctrl consolidation and ix4-300d fixes
Le 6 oct. 2014 à 18:13, Sebastian Hesselbarth sebastian.hesselba...@gmail.com a écrit : On 10/06/2014 01:11 AM, Benoit Masson wrote: Le 3 oct. 2014 à 17:41, Sebastian Hesselbarth sebastian.hesselba...@gmail.com a écrit : On 10/03/2014 05:29 PM, Benoit Masson wrote: Le 3 oct. 2014 à 17:06, Sebastian Hesselbarth sebastian.hesselba...@gmail.com a écrit : On 10/03/2014 04:11 PM, Jason Cooper wrote: On Sun, Sep 21, 2014 at 04:11:23PM +0200, Benoit Masson wrote: Le 19 sept. 2014 à 22:14, Sebastian Hesselbarth sebastian.hesselba...@gmail.com a écrit : [...] Patches are based on v3.17-rc1 and intended for v3.18 but I am not in a hurry. I only compile tested this, so a formal Tested-by from Benoit for the ix4 and any other Armada XP board would be great. I'm not sure what to test since I only receive some patch from the series of 8. Should I get all 8 or only those you sent me. I'll be able to test during next week. Did you ever get a chance to test this series? Uhm, I never prepared a branch for Benoit to test. I have pushed the patches with Thomas Acked-by's and renamed eeprom node based on v3.17-rc1 to https://github.com/shesselba/linux-dove.git devel/mvebu-ix4 [...] Maybe I missed something ? is this branch you sent me a bare fork from mainline 3.17 ? does it includes the armada XP step A0 patch ? Benoit, Hi, I prepared more branches with the series - on top of v3.17 release: https://github.com/shesselba/linux-dove.git devel/mvebu-ix4_v3.17 - on top of next-20141003 (i.e. what will become v3.18-rc1): https://github.com/shesselba/linux-dove.git devel/mvebu-ix4_next-20141003 It would be great, if you can test in this order: - vanilla v3.17 - mvebu-ix4_v3.17 - mvebu-ix4_next-20141003 All the 3 branch works WHEN APPLYING A0 patch (below), with both my custom kernel config and the arch/arm/configs/mvebu_v7_defconfig The reason why it didn't worked last time was that apparently the A0 patch (copied) below was not merged into 3.17 :( This means that ix4-300d support is broken on 3.17 because of the A0 stepping patch not merged. patch (from Andrew Lunn Acked-by Gregory Clement is missing: --- arch/arm/mach-mvebu/board-v7.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/mach-mvebu/board-v7.c b/arch/arm/mach-mvebu/board-v7.c index b2524d6..b1e148d 100644 --- a/arch/arm/mach-mvebu/board-v7.c +++ b/arch/arm/mach-mvebu/board-v7.c @@ -174,7 +174,7 @@ static void __init thermal_quirk(void) static void __init mvebu_dt_init(void) { - if (of_machine_is_compatible(plathome,openblocks-ax3-4)) + if (of_machine_is_compatible(marvell,armadaxp)) i2c_quirk(); if (of_machine_is_compatible(marvell,a375-db)) { external_abort_quirk(); -- 1.9.1 If any branch fails, you can stop and please report back. I also have the ix4 but I need more time for a full setup like you already seem to have ready. Again, there is no hurry, take your time. Thanks! Sebastian -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 0/8] Armada XP pinctrl consolidation and ix4-300d fixes
Le 3 oct. 2014 à 17:41, Sebastian Hesselbarth a écrit : > On 10/03/2014 05:29 PM, Benoit Masson wrote: >> Le 3 oct. 2014 à 17:06, Sebastian Hesselbarth >> a écrit : >>> On 10/03/2014 04:11 PM, Jason Cooper wrote: >>>> On Sun, Sep 21, 2014 at 04:11:23PM +0200, Benoit Masson wrote: >>>>>> Le 19 sept. 2014 à 22:14, Sebastian Hesselbarth >>>>>> a écrit : > [...] >>>>>> Patches are based on v3.17-rc1 and intended for v3.18 but I am not in >>>>>> a hurry. I only compile tested this, so a formal Tested-by from Benoit >>>>>> for the ix4 and any other Armada XP board would be great. >>>>> >>>>> I'm not sure what to test since I only receive some patch from the >>>>> series of 8. Should I get all 8 or only those you sent me. I'll be >>>>> able to test during next week. >>>> >>>> Did you ever get a chance to test this series? >>> >>> Uhm, I never prepared a branch for Benoit to test. I have pushed the >>> patches with Thomas Acked-by's and renamed eeprom node based on >>> v3.17-rc1 to >>> >>> https://github.com/shesselba/linux-dove.git devel/mvebu-ix4 >>> > [...] >> Also I've noted you did some other patch for Armada XP not related to >> ix-4-300d, > > are they included here or should I get them too ? > > No, they are neither included nor is there any need to test. They are > about pcie-lanes property but it is more or less unused on Linux. > > It is too late for v3.18 anyway, so I'll resend them once v3.18-rc1 > drops. > >> I'll test those over Sunday night. > > Ok, great! Hi, No so great, so far what I've done: - use my working config this config has worked over mainline 3.16 for weeks - compil you branch with it using you dts file - boot KO it get stuck on i2C pcf8563 init (at least it is the last message dsplayed. then I turn on DEBUG_LL but I get nothing more on the serial that could help - I've tried removing the eeprom section you added to the dts -> same results Maybe I missed something ? is this branch you sent me a bare fork from mainline 3.17 ? does it includes the armada XP step A0 patch ? dump of the serial output: Uncompressing Linux... done, booting the kernel. Booting Linux on physical CPU 0x0 Linux version 3.17.0-rc1-42264-gb065757 (benoitm@) (gcc version 4.6.3 (Debian 4.6.3-14) ) #3 SMP Mon Oct 6 00:42:59 CEST 2014 CPU: ARMv7 Processor [562f5842] revision 2 (ARMv7), cr=10c5387d CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache Machine model: Lenovo Iomega ix4-300d Memory policy: Data cache writealloc PERCPU: Embedded 7 pages/cpu @dfbd9000 s6784 r8192 d13696 u32768 Built 1 zonelists in Zone order, mobility grouping on. Total pages: 130048 Kernel command line: console=ttyS0,115200 earlyprintk=ttyS0,115200 root=/dev/md0 rw mem=512M PID hash table entries: 2048 (order: 1, 8192 bytes) Dentry cache hash table entries: 65536 (order: 6, 262144 bytes) Inode-cache hash table entries: 32768 (order: 5, 131072 bytes) Memory: 512868K/524288K available (4787K kernel code, 254K rwdata, 1324K rodata, 254K init, 131K bss, 11420K reserved, 0K highmem) Virtual kernel memory layout: vector : 0x - 0x1000 ( 4 kB) fixmap : 0xffc0 - 0xffe0 (2048 kB) vmalloc : 0xe080 - 0xff00 ( 488 MB) lowmem : 0xc000 - 0xe000 ( 512 MB) pkmap : 0xbfe0 - 0xc000 ( 2 MB) modules : 0xbf00 - 0xbfe0 ( 14 MB) .text : 0xc0008000 - 0xc05fffac (6112 kB) .init : 0xc060 - 0xc063fa80 ( 255 kB) .data : 0xc064 - 0xc067fa60 ( 255 kB) .bss : 0xc067fa60 - 0xc06a098c ( 132 kB) Hierarchical RCU implementation. NR_IRQS:16 nr_irqs:16 16 L2C: device tree omits to specify unified cache L2C: DT/platform modifies aux control register: 0x1a696b10 -> 0x1a696b12 Aurora cache controller enabled, 16 ways, 1024 kB Aurora: CACHE_ID 0x0100, AUX_CTRL 0x1a696b12 sched_clock: 32 bits at 25MHz, resolution 40ns, wraps every 171798691800ns Console: colour dummy device 80x30 Calibrating delay loop... 1332.01 BogoMIPS (lpj=6660096) pid_max: default: 32768 minimum: 301 Mount-cache hash table entries: 1024 (order: 0, 4096 bytes) Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes) CPU: Testing write buffer coherency: ok CPU0: thread -1, cpu 0, socket 0, mpidr 8000 Setting up static identity map for 0x4b2b70 - 0x4b2bc8 mvebu-soc-id: MVEBU SoC ID=0x7823, Rev=0x1 mvebu-pmsu: Initializing Power Management Service Unit Booting CPU 1 CPU1: Booted secondary processor CPU1: thread -1, cpu 1, socket 0, mpidr 8001 Brought up 2 CPUs SMP: Total of 2 processors activated. CPU: All CPU(s) started in SVC mode. VFP support v0.3: implementor 56 architecture 2
Re: [PATCH 0/8] Armada XP pinctrl consolidation and ix4-300d fixes
Le 3 oct. 2014 à 17:41, Sebastian Hesselbarth sebastian.hesselba...@gmail.com a écrit : On 10/03/2014 05:29 PM, Benoit Masson wrote: Le 3 oct. 2014 à 17:06, Sebastian Hesselbarth sebastian.hesselba...@gmail.com a écrit : On 10/03/2014 04:11 PM, Jason Cooper wrote: On Sun, Sep 21, 2014 at 04:11:23PM +0200, Benoit Masson wrote: Le 19 sept. 2014 à 22:14, Sebastian Hesselbarth sebastian.hesselba...@gmail.com a écrit : [...] Patches are based on v3.17-rc1 and intended for v3.18 but I am not in a hurry. I only compile tested this, so a formal Tested-by from Benoit for the ix4 and any other Armada XP board would be great. I'm not sure what to test since I only receive some patch from the series of 8. Should I get all 8 or only those you sent me. I'll be able to test during next week. Did you ever get a chance to test this series? Uhm, I never prepared a branch for Benoit to test. I have pushed the patches with Thomas Acked-by's and renamed eeprom node based on v3.17-rc1 to https://github.com/shesselba/linux-dove.git devel/mvebu-ix4 [...] Also I've noted you did some other patch for Armada XP not related to ix-4-300d, are they included here or should I get them too ? No, they are neither included nor is there any need to test. They are about pcie-lanes property but it is more or less unused on Linux. It is too late for v3.18 anyway, so I'll resend them once v3.18-rc1 drops. I'll test those over Sunday night. Ok, great! Hi, No so great, so far what I've done: - use my working config this config has worked over mainline 3.16 for weeks - compil you branch with it using you dts file - boot KO it get stuck on i2C pcf8563 init (at least it is the last message dsplayed. then I turn on DEBUG_LL but I get nothing more on the serial that could help - I've tried removing the eeprom section you added to the dts - same results Maybe I missed something ? is this branch you sent me a bare fork from mainline 3.17 ? does it includes the armada XP step A0 patch ? dump of the serial output: Uncompressing Linux... done, booting the kernel. Booting Linux on physical CPU 0x0 Linux version 3.17.0-rc1-42264-gb065757 (benoitm@) (gcc version 4.6.3 (Debian 4.6.3-14) ) #3 SMP Mon Oct 6 00:42:59 CEST 2014 CPU: ARMv7 Processor [562f5842] revision 2 (ARMv7), cr=10c5387d CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache Machine model: Lenovo Iomega ix4-300d Memory policy: Data cache writealloc PERCPU: Embedded 7 pages/cpu @dfbd9000 s6784 r8192 d13696 u32768 Built 1 zonelists in Zone order, mobility grouping on. Total pages: 130048 Kernel command line: console=ttyS0,115200 earlyprintk=ttyS0,115200 root=/dev/md0 rw mem=512M PID hash table entries: 2048 (order: 1, 8192 bytes) Dentry cache hash table entries: 65536 (order: 6, 262144 bytes) Inode-cache hash table entries: 32768 (order: 5, 131072 bytes) Memory: 512868K/524288K available (4787K kernel code, 254K rwdata, 1324K rodata, 254K init, 131K bss, 11420K reserved, 0K highmem) Virtual kernel memory layout: vector : 0x - 0x1000 ( 4 kB) fixmap : 0xffc0 - 0xffe0 (2048 kB) vmalloc : 0xe080 - 0xff00 ( 488 MB) lowmem : 0xc000 - 0xe000 ( 512 MB) pkmap : 0xbfe0 - 0xc000 ( 2 MB) modules : 0xbf00 - 0xbfe0 ( 14 MB) .text : 0xc0008000 - 0xc05fffac (6112 kB) .init : 0xc060 - 0xc063fa80 ( 255 kB) .data : 0xc064 - 0xc067fa60 ( 255 kB) .bss : 0xc067fa60 - 0xc06a098c ( 132 kB) Hierarchical RCU implementation. NR_IRQS:16 nr_irqs:16 16 L2C: device tree omits to specify unified cache L2C: DT/platform modifies aux control register: 0x1a696b10 - 0x1a696b12 Aurora cache controller enabled, 16 ways, 1024 kB Aurora: CACHE_ID 0x0100, AUX_CTRL 0x1a696b12 sched_clock: 32 bits at 25MHz, resolution 40ns, wraps every 171798691800ns Console: colour dummy device 80x30 Calibrating delay loop... 1332.01 BogoMIPS (lpj=6660096) pid_max: default: 32768 minimum: 301 Mount-cache hash table entries: 1024 (order: 0, 4096 bytes) Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes) CPU: Testing write buffer coherency: ok CPU0: thread -1, cpu 0, socket 0, mpidr 8000 Setting up static identity map for 0x4b2b70 - 0x4b2bc8 mvebu-soc-id: MVEBU SoC ID=0x7823, Rev=0x1 mvebu-pmsu: Initializing Power Management Service Unit Booting CPU 1 CPU1: Booted secondary processor CPU1: thread -1, cpu 1, socket 0, mpidr 8001 Brought up 2 CPUs SMP: Total of 2 processors activated. CPU: All CPU(s) started in SVC mode. VFP support v0.3: implementor 56 architecture 2 part 20 variant 9 rev 6 xor: measuring software checksum speed arm4regs : 1093.200 MB/sec 8regs : 1092.000 MB/sec 32regs: 1011.200 MB/sec xor: using function: arm4regs (1093.200 MB/sec) pinctrl core: initialized pinctrl subsystem NET: Registered protocol family 16 DMA: preallocated 256 KiB pool for atomic coherent allocations raid6
Re: [PATCH 0/8] Armada XP pinctrl consolidation and ix4-300d fixes
Le 3 oct. 2014 à 17:06, Sebastian Hesselbarth a écrit : > On 10/03/2014 04:11 PM, Jason Cooper wrote: >> On Sun, Sep 21, 2014 at 04:11:23PM +0200, Benoit Masson wrote: >>>> Le 19 sept. 2014 à 22:14, Sebastian Hesselbarth >>>> a écrit : >>>> this is a patch set preparing barebox support for ix4-300d. As usual, >>>> I stumbled upon a few nice-to-haves before actually touching ix4-300d >>>> dts. As it is a mach-mvebu thing, I just added the related mailing >>>> lists instead of each of the DT maintainers. >>>> >>>> First 5 patches consolidate SoC-specific pinctrl nodes to one common >>>> node in armada-xp.dtsi, compatible overwrites for each SoC, and node >>>> alias usage for each board. Also, ge{0,1} pinctrl settings are moved >>>> to the common node from one board specific node. >>>> >>>> Last 3 patches then use that ge{0,1} pinctrl settings on ix4-300d which >>>> is vital for bootloader init. During exploration of ix4-300d, I also >>>> found a i2c eeprom that has not been added to the dts, yet. Finally, >>>> there is only one 74hc595 on ix4 mainboard while dts property is set >>>> for two. >>>> >>>> I cannot recall in detail what is on that eeprom, but IIRC it is nothing >>>> important. Some reg,addr pairs for some init stuff that should have >>>> already been done by stock u-boot. Anyway, adding the node will do no >>>> harm. >>>> >>>> Patches are based on v3.17-rc1 and intended for v3.18 but I am not in >>>> a hurry. I only compile tested this, so a formal Tested-by from Benoit >>>> for the ix4 and any other Armada XP board would be great. >>> >>> I'm not sure what to test since I only receive some patch from the >>> series of 8. Should I get all 8 or only those you sent me. I'll be >>> able to test during next week. >> >> Did you ever get a chance to test this series? > > Uhm, I never prepared a branch for Benoit to test. I have pushed the > patches with Thomas Acked-by's and renamed eeprom node based on > v3.17-rc1 to > > https://github.com/shesselba/linux-dove.git devel/mvebu-ix4 > Hi tahnks, that was my last question, because I was lost about which to apply from the list of 8. Also I've noted you did some other patch for Armada XP not related to ix-4-300d, are they included here or should I get them too ? I'll test those over Sunday night. Benoit > Sebastian -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 0/8] Armada XP pinctrl consolidation and ix4-300d fixes
Le 3 oct. 2014 à 17:06, Sebastian Hesselbarth sebastian.hesselba...@gmail.com a écrit : On 10/03/2014 04:11 PM, Jason Cooper wrote: On Sun, Sep 21, 2014 at 04:11:23PM +0200, Benoit Masson wrote: Le 19 sept. 2014 à 22:14, Sebastian Hesselbarth sebastian.hesselba...@gmail.com a écrit : this is a patch set preparing barebox support for ix4-300d. As usual, I stumbled upon a few nice-to-haves before actually touching ix4-300d dts. As it is a mach-mvebu thing, I just added the related mailing lists instead of each of the DT maintainers. First 5 patches consolidate SoC-specific pinctrl nodes to one common node in armada-xp.dtsi, compatible overwrites for each SoC, and node alias usage for each board. Also, ge{0,1} pinctrl settings are moved to the common node from one board specific node. Last 3 patches then use that ge{0,1} pinctrl settings on ix4-300d which is vital for bootloader init. During exploration of ix4-300d, I also found a i2c eeprom that has not been added to the dts, yet. Finally, there is only one 74hc595 on ix4 mainboard while dts property is set for two. I cannot recall in detail what is on that eeprom, but IIRC it is nothing important. Some reg,addr pairs for some init stuff that should have already been done by stock u-boot. Anyway, adding the node will do no harm. Patches are based on v3.17-rc1 and intended for v3.18 but I am not in a hurry. I only compile tested this, so a formal Tested-by from Benoit for the ix4 and any other Armada XP board would be great. I'm not sure what to test since I only receive some patch from the series of 8. Should I get all 8 or only those you sent me. I'll be able to test during next week. Did you ever get a chance to test this series? Uhm, I never prepared a branch for Benoit to test. I have pushed the patches with Thomas Acked-by's and renamed eeprom node based on v3.17-rc1 to https://github.com/shesselba/linux-dove.git devel/mvebu-ix4 Hi tahnks, that was my last question, because I was lost about which to apply from the list of 8. Also I've noted you did some other patch for Armada XP not related to ix-4-300d, are they included here or should I get them too ? I'll test those over Sunday night. Benoit Sebastian -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 0/8] Armada XP pinctrl consolidation and ix4-300d fixes
> Le 19 sept. 2014 à 22:14, Sebastian Hesselbarth > a écrit : > > Guys, Hi > > this is a patch set preparing barebox support for ix4-300d. As usual, > I stumbled upon a few nice-to-haves before actually touching ix4-300d > dts. As it is a mach-mvebu thing, I just added the related mailing > lists instead of each of the DT maintainers. > > First 5 patches consolidate SoC-specific pinctrl nodes to one common > node in armada-xp.dtsi, compatible overwrites for each SoC, and node > alias usage for each board. Also, ge{0,1} pinctrl settings are moved > to the common node from one board specific node. > > Last 3 patches then use that ge{0,1} pinctrl settings on ix4-300d which > is vital for bootloader init. During exploration of ix4-300d, I also > found a i2c eeprom that has not been added to the dts, yet. Finally, > there is only one 74hc595 on ix4 mainboard while dts property is set > for two. > > I cannot recall in detail what is on that eeprom, but IIRC it is nothing > important. Some reg,addr pairs for some init stuff that should have > already been done by stock u-boot. Anyway, adding the node will do no > harm. > > Patches are based on v3.17-rc1 and intended for v3.18 but I am not in > a hurry. I only compile tested this, so a formal Tested-by from Benoit > for the ix4 and any other Armada XP board would be great. I'm not sure what to test since I only receive some patch from the series of 8. Should I get all 8 or only those you sent me. I'll be able to test during next week. > > Sébastien > Thanks benoît > > Sebastian Hesselbarth (8): > ARM: mvebu: armada-xp: Consolidate pinctrl node > ARM: mvebu: armada-xp: Add node alias to pinctrl and add base address > ARM: mvebu: armada-xp: Use pinctrl node alias > ARM: mvebu: armada-xp: Move GE0/1 pinctrl settings for RGMII > ARM: mvebu: armada-xp: Add GE0 pinctrl settings for GMII > ARM: mvebu: armada-xp: Add RGMII pinctrl to Lenovo ix4-300d > ARM: mvebu: armada-xp: Add I2C eeprom on Lenovo ix4-300d > ARM: mvebu: armada-xp: Fix 74hc595 count for Lenovo ix4-300d > > arch/arm/boot/dts/armada-xp-axpwifiap.dts| 58 +++- > arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts | 73 +- > arch/arm/boot/dts/armada-xp-mv78230.dtsi | 15 +-- > arch/arm/boot/dts/armada-xp-mv78260.dtsi | 15 +-- > arch/arm/boot/dts/armada-xp-mv78460.dtsi | 15 +-- > arch/arm/boot/dts/armada-xp-netgear-rn2120.dts | 164 +++ > arch/arm/boot/dts/armada-xp-openblocks-ax3-4.dts | 14 +- > arch/arm/boot/dts/armada-xp.dtsi | 37 + > 8 files changed, 202 insertions(+), 189 deletions(-) > > --- > Cc: Jason Cooper > Cc: Andrew Lunn > Cc: Gregory Clement > Cc: Ezequiel Garcia > Cc: Thomas Petazzoni > Cc: Benoit Masson > Cc: devicet...@vger.kernel.org > Cc: linux-arm-ker...@lists.infradead.org > Cc: linux-kernel@vger.kernel.org > -- > 2.0.0 > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 0/8] Armada XP pinctrl consolidation and ix4-300d fixes
Le 19 sept. 2014 à 22:14, Sebastian Hesselbarth sebastian.hesselba...@gmail.com a écrit : Guys, Hi this is a patch set preparing barebox support for ix4-300d. As usual, I stumbled upon a few nice-to-haves before actually touching ix4-300d dts. As it is a mach-mvebu thing, I just added the related mailing lists instead of each of the DT maintainers. First 5 patches consolidate SoC-specific pinctrl nodes to one common node in armada-xp.dtsi, compatible overwrites for each SoC, and node alias usage for each board. Also, ge{0,1} pinctrl settings are moved to the common node from one board specific node. Last 3 patches then use that ge{0,1} pinctrl settings on ix4-300d which is vital for bootloader init. During exploration of ix4-300d, I also found a i2c eeprom that has not been added to the dts, yet. Finally, there is only one 74hc595 on ix4 mainboard while dts property is set for two. I cannot recall in detail what is on that eeprom, but IIRC it is nothing important. Some reg,addr pairs for some init stuff that should have already been done by stock u-boot. Anyway, adding the node will do no harm. Patches are based on v3.17-rc1 and intended for v3.18 but I am not in a hurry. I only compile tested this, so a formal Tested-by from Benoit for the ix4 and any other Armada XP board would be great. I'm not sure what to test since I only receive some patch from the series of 8. Should I get all 8 or only those you sent me. I'll be able to test during next week. Sébastien Thanks benoît Sebastian Hesselbarth (8): ARM: mvebu: armada-xp: Consolidate pinctrl node ARM: mvebu: armada-xp: Add node alias to pinctrl and add base address ARM: mvebu: armada-xp: Use pinctrl node alias ARM: mvebu: armada-xp: Move GE0/1 pinctrl settings for RGMII ARM: mvebu: armada-xp: Add GE0 pinctrl settings for GMII ARM: mvebu: armada-xp: Add RGMII pinctrl to Lenovo ix4-300d ARM: mvebu: armada-xp: Add I2C eeprom on Lenovo ix4-300d ARM: mvebu: armada-xp: Fix 74hc595 count for Lenovo ix4-300d arch/arm/boot/dts/armada-xp-axpwifiap.dts| 58 +++- arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts | 73 +- arch/arm/boot/dts/armada-xp-mv78230.dtsi | 15 +-- arch/arm/boot/dts/armada-xp-mv78260.dtsi | 15 +-- arch/arm/boot/dts/armada-xp-mv78460.dtsi | 15 +-- arch/arm/boot/dts/armada-xp-netgear-rn2120.dts | 164 +++ arch/arm/boot/dts/armada-xp-openblocks-ax3-4.dts | 14 +- arch/arm/boot/dts/armada-xp.dtsi | 37 + 8 files changed, 202 insertions(+), 189 deletions(-) --- Cc: Jason Cooper ja...@lakedaemon.net Cc: Andrew Lunn and...@lunn.ch Cc: Gregory Clement gregory.clem...@free-electrons.com Cc: Ezequiel Garcia ezequiel.gar...@free-electrons.com Cc: Thomas Petazzoni thomas.petazz...@free-electrons.com Cc: Benoit Masson ya...@perenite.com Cc: devicet...@vger.kernel.org Cc: linux-arm-ker...@lists.infradead.org Cc: linux-kernel@vger.kernel.org -- 2.0.0 -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 2/2] V4 ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
Le 28 juil. 2014 à 16:08, Jason Cooper a écrit : > Benoit, > > On Sun, Jul 27, 2014 at 04:30:39PM -0700, Benoit Masson wrote: >> The Lenovo Iomega ix4-300d is a 4-Bay sata NAS with dual Gb, >> USB2.0 & 3.0, powered by a Marvell Armada XP MV78230 dual core CPU. >> >> http://shop.lenovo.com/us/en/servers/network-storage/lenovoemc/ix4-300d/ >> Signed-off-by: Benoit Masson >> --- >> arch/arm/boot/dts/Makefile | 3 +- >> arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts | 285 >> >> 2 files changed, 287 insertions(+), 1 deletion(-) >> create mode 100644 arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts > > I've applied this to mvebu/dt with a few minor fixups. > > - Insert empty line between URL and S-o-B > - Removed i2c compatible property > - Removed trailing whitespace from multi-line comment at end of file > > Also, traditionally, the 'V4' goes inside the square brackets, eg > > [ PATCH V4 2/2 ] ... > > This is done because 'git am ...' automagically removes everything > between the square brackets and then takes the rest of the subject line > to be the first line of the commit message. > > Well done! Thanks Jason and all for supporting this and following up long discussions on A0 stepping ... ! Just one question is how would you link this patch to the quirk a0 patch since this patch can't work without it ... > > You can view the commit here: > > > http://git.infradead.org/linux-mvebu.git/commitdiff/40c2da45366171bdc9ad1968489aaae190248383 > > thx, > > Jason. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 2/2] ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
Le 28 juil. 2014 à 13:02, Arnd Bergmann a écrit : > On Monday 28 July 2014 12:50:47 Benoit Masson wrote: >>> >>> It should still list both "marvell,mv78230-i2c" and "marvell,mv64xxx-i2c", >>> as the generic name may not be enough to describe the register layout >>> correctly. >> >> I tend to disagree since the dts include the armada-xp.dtsi, which already >> declare >> >> "i2c0: i2c@11000 { >>compatible = "marvell,mv78230-i2c", >> "marvell,mv64xxx-i2c"; >>reg = <0x11000 0x100>; >>}; >> " >> >> I tested the dts on the device and it does inherits the i2c declaration, did >> I miss something here ? >> > > Inheriting from armada-xp.dtsi is fine, but if you manually set > "marvell,mv64xxx-i2c", that will override the old setting > and drop the "marvell,mv78230-i2c" part, which is bad because > it may break things later if it turns out that the mv78230 > variant is not completely compatible with the old > mv64xxx variant. Ok then does this mean I can simply remove the "compatible" line to only inherits from armada-xp-dtsi ? "i2c@11000 { clock-frequency = <40>; status = "okay"; " Would this be enough ? Benoit > > Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 2/2] ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
Le 28 juil. 2014 à 10:49, Arnd Bergmann a écrit : > On Sunday 27 July 2014 03:52:44 Andrew Lunn wrote: >> Hi Benoit Hi Arnd, >> >>> + i2c@11000 { >>> + compatible = "marvell,mv78230-a0-i2c", >>> + "marvell,mv64xxx-i2c"; >> >> The point of my patches is that you don't need the >> "marvell,mv78230-a0-i2c". It will work out at runtime if the SoC is A0 >> stepping and automatically enable the workaround. Please test with >> only "marvell,mv64xxx-i2c"; >> > > It should still list both "marvell,mv78230-i2c" and "marvell,mv64xxx-i2c", > as the generic name may not be enough to describe the register layout > correctly. I tend to disagree since the dts include the armada-xp.dtsi, which already declare "i2c0: i2c@11000 { compatible = "marvell,mv78230-i2c", "marvell,mv64xxx-i2c"; reg = <0x11000 0x100>; }; " I tested the dts on the device and it does inherits the i2c declaration, did I miss something here ? Benoit > Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 2/2] ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
Le 28 juil. 2014 à 10:49, Arnd Bergmann a...@arndb.de a écrit : On Sunday 27 July 2014 03:52:44 Andrew Lunn wrote: Hi Benoit Hi Arnd, + i2c@11000 { + compatible = marvell,mv78230-a0-i2c, + marvell,mv64xxx-i2c; The point of my patches is that you don't need the marvell,mv78230-a0-i2c. It will work out at runtime if the SoC is A0 stepping and automatically enable the workaround. Please test with only marvell,mv64xxx-i2c; It should still list both marvell,mv78230-i2c and marvell,mv64xxx-i2c, as the generic name may not be enough to describe the register layout correctly. I tend to disagree since the dts include the armada-xp.dtsi, which already declare i2c0: i2c@11000 { compatible = marvell,mv78230-i2c, marvell,mv64xxx-i2c; reg = 0x11000 0x100; }; I tested the dts on the device and it does inherits the i2c declaration, did I miss something here ? Benoit Arnd -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 2/2] ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
Le 28 juil. 2014 à 13:02, Arnd Bergmann a...@arndb.de a écrit : On Monday 28 July 2014 12:50:47 Benoit Masson wrote: It should still list both marvell,mv78230-i2c and marvell,mv64xxx-i2c, as the generic name may not be enough to describe the register layout correctly. I tend to disagree since the dts include the armada-xp.dtsi, which already declare i2c0: i2c@11000 { compatible = marvell,mv78230-i2c, marvell,mv64xxx-i2c; reg = 0x11000 0x100; }; I tested the dts on the device and it does inherits the i2c declaration, did I miss something here ? Inheriting from armada-xp.dtsi is fine, but if you manually set marvell,mv64xxx-i2c, that will override the old setting and drop the marvell,mv78230-i2c part, which is bad because it may break things later if it turns out that the mv78230 variant is not completely compatible with the old mv64xxx variant. Ok then does this mean I can simply remove the compatible line to only inherits from armada-xp-dtsi ? i2c@11000 { clock-frequency = 40; status = okay; Would this be enough ? Benoit Arnd -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 2/2] V4 ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
Le 28 juil. 2014 à 16:08, Jason Cooper ja...@lakedaemon.net a écrit : Benoit, On Sun, Jul 27, 2014 at 04:30:39PM -0700, Benoit Masson wrote: The Lenovo Iomega ix4-300d is a 4-Bay sata NAS with dual Gb, USB2.0 3.0, powered by a Marvell Armada XP MV78230 dual core CPU. http://shop.lenovo.com/us/en/servers/network-storage/lenovoemc/ix4-300d/ Signed-off-by: Benoit Masson ya...@perenite.com --- arch/arm/boot/dts/Makefile | 3 +- arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts | 285 2 files changed, 287 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts I've applied this to mvebu/dt with a few minor fixups. - Insert empty line between URL and S-o-B - Removed i2c compatible property - Removed trailing whitespace from multi-line comment at end of file Also, traditionally, the 'V4' goes inside the square brackets, eg [ PATCH V4 2/2 ] ... This is done because 'git am ...' automagically removes everything between the square brackets and then takes the rest of the subject line to be the first line of the commit message. Well done! Thanks Jason and all for supporting this and following up long discussions on A0 stepping ... ! Just one question is how would you link this patch to the quirk a0 patch since this patch can't work without it ... You can view the commit here: http://git.infradead.org/linux-mvebu.git/commitdiff/40c2da45366171bdc9ad1968489aaae190248383 thx, Jason. -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 2/2] V3 ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
Le 27 juil. 2014 à 22:32, Thomas Petazzoni a écrit : > Dear Benoit Masson, > Dear Thomas, > On Sat, 26 Jul 2014 16:48:10 -0700, Benoit Masson wrote: > >> +gpio-keys { >> +compatible = "gpio-keys"; >> +pinctrl-0 = <_button_pin _button_pin >> +_button_pin _button_pin>; >> +pinctrl-names = "default"; >> + >> +power-button { >> +label = "Power Button"; >> +linux,code = ; >> +gpios = < 12 GPIO_ACTIVE_HIGH>; >> +}; >> + >> +reset-button { >> +label = "Reset Button"; >> +linux,code = ; >> +gpios = < 13 GPIO_ACTIVE_LOW>; >> +}; >> + >> +select-button { >> +label = "Select Button"; >> +linux,code = ; >> +gpios = < 9 GPIO_ACTIVE_LOW>; >> +}; >> + >> +scroll-button { >> +label = "Scroll Button"; >> +linux,code = ; >> +gpios = < 10 GPIO_ACTIVE_LOW>; > > So you're using the GPIO_ACTIVE_ defines here. > >> +}; >> +}; >> + >> +spi3 { >> +compatible = "spi-gpio"; >> +status = "okay"; >> +gpio-sck = < 25 0>; >> +gpio-mosi = < 15 0>; /*gpio 47*/ >> +cs-gpios = < 27 0 >; > > But not here. Any reason? Indeed I think Jason made this comment already and I seem to have missed -> Corrected in V4 > > Also, nitpick: unneeded space in < 27 0 > (i.e the space right > before the closing >). > -> Corrected in V4 >> +num-chipselects = <1>; >> +#address-cells = <1>; >> +#size-cells = <0>; >> + >> +gpio2: gpio2@0 { >> +compatible = "fairchild,74hc595"; >> +gpio-controller; >> +#gpio-cells = <2>; >> +reg = <0>; >> +registers-number = <2>; >> +spi-max-frequency = <10>; >> +}; > > I'm not sure "gpio2" is a good name, as we might think of it as being > the third GPIO controller internal to the SoC. > Renamed to gpio_spi, tested ok -> Corrected in V4 > Thanks, > You're welcome, patch issued as V4 just now. > Thomas > -- > Thomas Petazzoni, CTO, Free Electrons > Embedded Linux, Kernel and Android engineering > http://free-electrons.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH 2/2] V4 ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
The Lenovo Iomega ix4-300d is a 4-Bay sata NAS with dual Gb, USB2.0 & 3.0, powered by a Marvell Armada XP MV78230 dual core CPU. http://shop.lenovo.com/us/en/servers/network-storage/lenovoemc/ix4-300d/ Signed-off-by: Benoit Masson --- arch/arm/boot/dts/Makefile | 3 +- arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts | 285 2 files changed, 287 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index adb5ed9..4429495 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -437,8 +437,9 @@ dtb-$(CONFIG_MACH_ARMADA_XP) += \ armada-xp-axpwifiap.dtb \ armada-xp-db.dtb \ armada-xp-gp.dtb \ - armada-xp-netgear-rn2120.dtb \ + armada-xp-lenovo-ix4-300d.dtb \ armada-xp-matrix.dtb \ + armada-xp-netgear-rn2120.dtb \ armada-xp-openblocks-ax3-4.dtb dtb-$(CONFIG_MACH_DOVE) += dove-cm-a510.dtb \ dove-cubox.dtb \ diff --git a/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts new file mode 100644 index 000..6d5782b --- /dev/null +++ b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts @@ -0,0 +1,285 @@ +/* + * Device Tree file for Lenovo Iomega ix4-300d + * + * Copyright (C) 2014, Benoit Masson + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version + * 2 of the License, or (at your option) any later version. + */ + +/dts-v1/; + +#include +#include +#include "armada-xp-mv78230.dtsi" + +/ { + model = "Lenovo Iomega ix4-300d"; + compatible = "lenovo,ix4-300d", "marvell,armadaxp-mv78230", +"marvell,armadaxp", "marvell,armada-370-xp"; + + chosen { + bootargs = "console=ttyS0,115200 earlyprintk"; + stdout-path = "/soc/internal-regs/serial@12000"; + }; + + memory { + device_type = "memory"; + reg = <0 0x 0 0x2000>; /* 512MB */ + }; + + soc { + ranges = ; + + pcie-controller { + status = "okay"; + + /* Quad port sata: Marvell 88SX7042 */ + pcie@1,0 { + /* Port 0, Lane 0 */ + status = "okay"; + }; + + /* USB 3.0 xHCI controller: NEC D720200F1 */ + pcie@5,0 { + /* Port 1, Lane 0 */ + status = "okay"; + }; + }; + + internal-regs { + pinctrl { + poweroff_pin: poweroff-pin { + marvell,pins = "mpp24"; + marvell,function = "gpio"; + }; + + power_button_pin: power-button-pin { + marvell,pins = "mpp44"; + marvell,function = "gpio"; + }; + + reset_button_pin: reset-button-pin { + marvell,pins = "mpp45"; + marvell,function = "gpio"; + }; + select_button_pin: select-button-pin { + marvell,pins = "mpp41"; + marvell,function = "gpio"; + }; + + scroll_button_pin: scroll-button-pin { + marvell,pins = "mpp42"; + marvell,function = "gpio"; + }; + + hdd_led_pin: hdd-led-pin { + marvell,pins = "mpp26"; + marvell,function = "gpio"; + }; + }; + + serial@12000 { + status = "okay"; + }; + + mdio { + phy0: ethernet-phy@0 { /* Marvell 88E1318 */ + reg = <0>; + }; + + phy1: ethernet-phy@1 { /* Marvell 88E1318 */ +
[PATCH 2/2] V4 ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
The Lenovo Iomega ix4-300d is a 4-Bay sata NAS with dual Gb, USB2.0 3.0, powered by a Marvell Armada XP MV78230 dual core CPU. http://shop.lenovo.com/us/en/servers/network-storage/lenovoemc/ix4-300d/ Signed-off-by: Benoit Masson ya...@perenite.com --- arch/arm/boot/dts/Makefile | 3 +- arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts | 285 2 files changed, 287 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index adb5ed9..4429495 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -437,8 +437,9 @@ dtb-$(CONFIG_MACH_ARMADA_XP) += \ armada-xp-axpwifiap.dtb \ armada-xp-db.dtb \ armada-xp-gp.dtb \ - armada-xp-netgear-rn2120.dtb \ + armada-xp-lenovo-ix4-300d.dtb \ armada-xp-matrix.dtb \ + armada-xp-netgear-rn2120.dtb \ armada-xp-openblocks-ax3-4.dtb dtb-$(CONFIG_MACH_DOVE) += dove-cm-a510.dtb \ dove-cubox.dtb \ diff --git a/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts new file mode 100644 index 000..6d5782b --- /dev/null +++ b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts @@ -0,0 +1,285 @@ +/* + * Device Tree file for Lenovo Iomega ix4-300d + * + * Copyright (C) 2014, Benoit Masson ya...@perenite.com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version + * 2 of the License, or (at your option) any later version. + */ + +/dts-v1/; + +#include dt-bindings/input/input.h +#include dt-bindings/gpio/gpio.h +#include armada-xp-mv78230.dtsi + +/ { + model = Lenovo Iomega ix4-300d; + compatible = lenovo,ix4-300d, marvell,armadaxp-mv78230, +marvell,armadaxp, marvell,armada-370-xp; + + chosen { + bootargs = console=ttyS0,115200 earlyprintk; + stdout-path = /soc/internal-regs/serial@12000; + }; + + memory { + device_type = memory; + reg = 0 0x 0 0x2000; /* 512MB */ + }; + + soc { + ranges = MBUS_ID(0xf0, 0x01) 0 0 0xd000 0x10 + MBUS_ID(0x01, 0x1d) 0 0 0xfff0 0x10; + + pcie-controller { + status = okay; + + /* Quad port sata: Marvell 88SX7042 */ + pcie@1,0 { + /* Port 0, Lane 0 */ + status = okay; + }; + + /* USB 3.0 xHCI controller: NEC D720200F1 */ + pcie@5,0 { + /* Port 1, Lane 0 */ + status = okay; + }; + }; + + internal-regs { + pinctrl { + poweroff_pin: poweroff-pin { + marvell,pins = mpp24; + marvell,function = gpio; + }; + + power_button_pin: power-button-pin { + marvell,pins = mpp44; + marvell,function = gpio; + }; + + reset_button_pin: reset-button-pin { + marvell,pins = mpp45; + marvell,function = gpio; + }; + select_button_pin: select-button-pin { + marvell,pins = mpp41; + marvell,function = gpio; + }; + + scroll_button_pin: scroll-button-pin { + marvell,pins = mpp42; + marvell,function = gpio; + }; + + hdd_led_pin: hdd-led-pin { + marvell,pins = mpp26; + marvell,function = gpio; + }; + }; + + serial@12000 { + status = okay; + }; + + mdio { + phy0: ethernet-phy@0 { /* Marvell 88E1318 */ + reg = 0; + }; + + phy1: ethernet-phy@1 { /* Marvell 88E1318 */ + reg = 1; + }; + }; + + ethernet@7
Re: [PATCH 2/2] V3 ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
Le 27 juil. 2014 à 22:32, Thomas Petazzoni thomas.petazz...@free-electrons.com a écrit : Dear Benoit Masson, Dear Thomas, On Sat, 26 Jul 2014 16:48:10 -0700, Benoit Masson wrote: +gpio-keys { +compatible = gpio-keys; +pinctrl-0 = power_button_pin reset_button_pin +select_button_pin scroll_button_pin; +pinctrl-names = default; + +power-button { +label = Power Button; +linux,code = KEY_POWER; +gpios = gpio1 12 GPIO_ACTIVE_HIGH; +}; + +reset-button { +label = Reset Button; +linux,code = KEY_RESTART; +gpios = gpio1 13 GPIO_ACTIVE_LOW; +}; + +select-button { +label = Select Button; +linux,code = BTN_SELECT; +gpios = gpio1 9 GPIO_ACTIVE_LOW; +}; + +scroll-button { +label = Scroll Button; +linux,code = KEY_SCROLLDOWN; +gpios = gpio1 10 GPIO_ACTIVE_LOW; So you're using the GPIO_ACTIVE_foo defines here. +}; +}; + +spi3 { +compatible = spi-gpio; +status = okay; +gpio-sck = gpio0 25 0; +gpio-mosi = gpio1 15 0; /*gpio 47*/ +cs-gpios = gpio0 27 0 ; But not here. Any reason? Indeed I think Jason made this comment already and I seem to have missed - Corrected in V4 Also, nitpick: unneeded space in gpio0 27 0 (i.e the space right before the closing ). - Corrected in V4 +num-chipselects = 1; +#address-cells = 1; +#size-cells = 0; + +gpio2: gpio2@0 { +compatible = fairchild,74hc595; +gpio-controller; +#gpio-cells = 2; +reg = 0; +registers-number = 2; +spi-max-frequency = 10; +}; I'm not sure gpio2 is a good name, as we might think of it as being the third GPIO controller internal to the SoC. Renamed to gpio_spi, tested ok - Corrected in V4 Thanks, You're welcome, patch issued as V4 just now. Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH 2/2] V3 ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
The Lenovo Iomega ix4-300d is a 4-Bay sata NAS with dual Gb, USB2.0 & 3.0, powered by a Marvell Armada XP MV78230 dual core CPU. http://shop.lenovo.com/us/en/servers/network-storage/lenovoemc/ix4-300d/ Signed-off-by: Benoit Masson --- arch/arm/boot/dts/Makefile | 3 +- arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts | 285 2 files changed, 287 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index adb5ed9..4429495 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -437,8 +437,9 @@ dtb-$(CONFIG_MACH_ARMADA_XP) += \ armada-xp-axpwifiap.dtb \ armada-xp-db.dtb \ armada-xp-gp.dtb \ - armada-xp-netgear-rn2120.dtb \ + armada-xp-lenovo-ix4-300d.dtb \ armada-xp-matrix.dtb \ + armada-xp-netgear-rn2120.dtb \ armada-xp-openblocks-ax3-4.dtb dtb-$(CONFIG_MACH_DOVE) += dove-cm-a510.dtb \ dove-cubox.dtb \ diff --git a/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts new file mode 100644 index 000..c82a8e3 --- /dev/null +++ b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts @@ -0,0 +1,285 @@ +/* + * Device Tree file for Lenovo Iomega ix4-300d + * + * Copyright (C) 2014, Benoit Masson + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version + * 2 of the License, or (at your option) any later version. + */ + +/dts-v1/; + +#include +#include +#include "armada-xp-mv78230.dtsi" + +/ { + model = "Lenovo Iomega ix4-300d"; + compatible = "lenovo,ix4-300d", "marvell,armadaxp-mv78230", +"marvell,armadaxp", "marvell,armada-370-xp"; + + chosen { + bootargs = "console=ttyS0,115200 earlyprintk"; + stdout-path = "/soc/internal-regs/serial@12000"; + }; + + memory { + device_type = "memory"; + reg = <0 0x 0 0x2000>; /* 512MB */ + }; + + soc { + ranges = ; + + pcie-controller { + status = "okay"; + + /* Quad port sata: Marvell 88SX7042 */ + pcie@1,0 { + /* Port 0, Lane 0 */ + status = "okay"; + }; + + /* USB 3.0 xHCI controller: NEC D720200F1 */ + pcie@5,0 { + /* Port 1, Lane 0 */ + status = "okay"; + }; + }; + + internal-regs { + pinctrl { + poweroff_pin: poweroff-pin { + marvell,pins = "mpp24"; + marvell,function = "gpio"; + }; + + power_button_pin: power-button-pin { + marvell,pins = "mpp44"; + marvell,function = "gpio"; + }; + + reset_button_pin: reset-button-pin { + marvell,pins = "mpp45"; + marvell,function = "gpio"; + }; + select_button_pin: select-button-pin { + marvell,pins = "mpp41"; + marvell,function = "gpio"; + }; + + scroll_button_pin: scroll-button-pin { + marvell,pins = "mpp42"; + marvell,function = "gpio"; + }; + + hdd_led_pin: hdd-led-pin { + marvell,pins = "mpp26"; + marvell,function = "gpio"; + }; + }; + + serial@12000 { + status = "okay"; + }; + + mdio { + phy0: ethernet-phy@0 { /* Marvell 88E1318 */ + reg = <0>; + }; + + phy1: ethernet-phy@1 { /* Marvell 88E1318 */ +
[PATCH 2/2] ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
The Lenovo Iomega ix4-300d is a 4-Bay sata NAS with dual Gb, USB2.0 & 3.0, powered by a Marvell Armada XP MV78230 dual core CPU. http://shop.lenovo.com/us/en/servers/network-storage/lenovoemc/ix4-300d/ Signed-off-by: Benoit Masson --- arch/arm/boot/dts/Makefile | 3 +- arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts | 286 2 files changed, 288 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index adb5ed9..4429495 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -437,8 +437,9 @@ dtb-$(CONFIG_MACH_ARMADA_XP) += \ armada-xp-axpwifiap.dtb \ armada-xp-db.dtb \ armada-xp-gp.dtb \ - armada-xp-netgear-rn2120.dtb \ + armada-xp-lenovo-ix4-300d.dtb \ armada-xp-matrix.dtb \ + armada-xp-netgear-rn2120.dtb \ armada-xp-openblocks-ax3-4.dtb dtb-$(CONFIG_MACH_DOVE) += dove-cm-a510.dtb \ dove-cubox.dtb \ diff --git a/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts new file mode 100644 index 000..cee0ef4 --- /dev/null +++ b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts @@ -0,0 +1,286 @@ +/* + * Device Tree file for Lenovo Iomega ix4-300d + * + * Copyright (C) 2014, Benoit Masson + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version + * 2 of the License, or (at your option) any later version. + */ + +/dts-v1/; + +#include +#include +#include "armada-xp-mv78230.dtsi" + +/ { + model = "Lenovo Iomega ix4-300d"; + compatible = "lenovo,ix4-300d", "marvell,armadaxp-mv78230", +"marvell,armadaxp", "marvell,armada-370-xp"; + + chosen { + bootargs = "console=ttyS0,115200 earlyprintk"; + stdout-path = "/soc/internal-regs/serial@12000"; + }; + + memory { + device_type = "memory"; + reg = <0 0x 0 0x2000>; /* 512MB */ + }; + + soc { + ranges = ; + + pcie-controller { + status = "okay"; + + /* Quad port sata: Marvell 88SX7042 */ + pcie@1,0 { + /* Port 0, Lane 0 */ + status = "okay"; + }; + + /* USB 3.0 xHCI controller: NEC D720200F1 */ + pcie@5,0 { + /* Port 1, Lane 0 */ + status = "okay"; + }; + }; + + internal-regs { + pinctrl { + poweroff_pin: poweroff-pin { + marvell,pins = "mpp24"; + marvell,function = "gpio"; + }; + + power_button_pin: power-button-pin { + marvell,pins = "mpp44"; + marvell,function = "gpio"; + }; + + reset_button_pin: reset-button-pin { + marvell,pins = "mpp45"; + marvell,function = "gpio"; + }; + select_button_pin: select-button-pin { + marvell,pins = "mpp41"; + marvell,function = "gpio"; + }; + + scroll_button_pin: scroll-button-pin { + marvell,pins = "mpp42"; + marvell,function = "gpio"; + }; + + hdd_led_pin: hdd-led-pin { + marvell,pins = "mpp26"; + marvell,function = "gpio"; + }; + }; + + serial@12000 { + status = "okay"; + }; + + mdio { + phy0: ethernet-phy@0 { /* Marvell 88E1318 */ + reg = <0>; + }; + + phy1: ethernet-phy@1 { /* Marvell 88E1318 */ +
[PATCH 2/2] ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
The Lenovo Iomega ix4-300d is a 4-Bay sata NAS with dual Gb, USB2.0 3.0, powered by a Marvell Armada XP MV78230 dual core CPU. http://shop.lenovo.com/us/en/servers/network-storage/lenovoemc/ix4-300d/ Signed-off-by: Benoit Masson ya...@perenite.com --- arch/arm/boot/dts/Makefile | 3 +- arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts | 286 2 files changed, 288 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index adb5ed9..4429495 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -437,8 +437,9 @@ dtb-$(CONFIG_MACH_ARMADA_XP) += \ armada-xp-axpwifiap.dtb \ armada-xp-db.dtb \ armada-xp-gp.dtb \ - armada-xp-netgear-rn2120.dtb \ + armada-xp-lenovo-ix4-300d.dtb \ armada-xp-matrix.dtb \ + armada-xp-netgear-rn2120.dtb \ armada-xp-openblocks-ax3-4.dtb dtb-$(CONFIG_MACH_DOVE) += dove-cm-a510.dtb \ dove-cubox.dtb \ diff --git a/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts new file mode 100644 index 000..cee0ef4 --- /dev/null +++ b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts @@ -0,0 +1,286 @@ +/* + * Device Tree file for Lenovo Iomega ix4-300d + * + * Copyright (C) 2014, Benoit Masson ya...@perenite.com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version + * 2 of the License, or (at your option) any later version. + */ + +/dts-v1/; + +#include dt-bindings/input/input.h +#include dt-bindings/gpio/gpio.h +#include armada-xp-mv78230.dtsi + +/ { + model = Lenovo Iomega ix4-300d; + compatible = lenovo,ix4-300d, marvell,armadaxp-mv78230, +marvell,armadaxp, marvell,armada-370-xp; + + chosen { + bootargs = console=ttyS0,115200 earlyprintk; + stdout-path = /soc/internal-regs/serial@12000; + }; + + memory { + device_type = memory; + reg = 0 0x 0 0x2000; /* 512MB */ + }; + + soc { + ranges = MBUS_ID(0xf0, 0x01) 0 0 0xd000 0x10 + MBUS_ID(0x01, 0x1d) 0 0 0xfff0 0x10; + + pcie-controller { + status = okay; + + /* Quad port sata: Marvell 88SX7042 */ + pcie@1,0 { + /* Port 0, Lane 0 */ + status = okay; + }; + + /* USB 3.0 xHCI controller: NEC D720200F1 */ + pcie@5,0 { + /* Port 1, Lane 0 */ + status = okay; + }; + }; + + internal-regs { + pinctrl { + poweroff_pin: poweroff-pin { + marvell,pins = mpp24; + marvell,function = gpio; + }; + + power_button_pin: power-button-pin { + marvell,pins = mpp44; + marvell,function = gpio; + }; + + reset_button_pin: reset-button-pin { + marvell,pins = mpp45; + marvell,function = gpio; + }; + select_button_pin: select-button-pin { + marvell,pins = mpp41; + marvell,function = gpio; + }; + + scroll_button_pin: scroll-button-pin { + marvell,pins = mpp42; + marvell,function = gpio; + }; + + hdd_led_pin: hdd-led-pin { + marvell,pins = mpp26; + marvell,function = gpio; + }; + }; + + serial@12000 { + status = okay; + }; + + mdio { + phy0: ethernet-phy@0 { /* Marvell 88E1318 */ + reg = 0; + }; + + phy1: ethernet-phy@1 { /* Marvell 88E1318 */ + reg = 1; + }; + }; + + ethernet@7
[PATCH 2/2] V3 ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
The Lenovo Iomega ix4-300d is a 4-Bay sata NAS with dual Gb, USB2.0 3.0, powered by a Marvell Armada XP MV78230 dual core CPU. http://shop.lenovo.com/us/en/servers/network-storage/lenovoemc/ix4-300d/ Signed-off-by: Benoit Masson ya...@perenite.com --- arch/arm/boot/dts/Makefile | 3 +- arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts | 285 2 files changed, 287 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index adb5ed9..4429495 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -437,8 +437,9 @@ dtb-$(CONFIG_MACH_ARMADA_XP) += \ armada-xp-axpwifiap.dtb \ armada-xp-db.dtb \ armada-xp-gp.dtb \ - armada-xp-netgear-rn2120.dtb \ + armada-xp-lenovo-ix4-300d.dtb \ armada-xp-matrix.dtb \ + armada-xp-netgear-rn2120.dtb \ armada-xp-openblocks-ax3-4.dtb dtb-$(CONFIG_MACH_DOVE) += dove-cm-a510.dtb \ dove-cubox.dtb \ diff --git a/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts new file mode 100644 index 000..c82a8e3 --- /dev/null +++ b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts @@ -0,0 +1,285 @@ +/* + * Device Tree file for Lenovo Iomega ix4-300d + * + * Copyright (C) 2014, Benoit Masson ya...@perenite.com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version + * 2 of the License, or (at your option) any later version. + */ + +/dts-v1/; + +#include dt-bindings/input/input.h +#include dt-bindings/gpio/gpio.h +#include armada-xp-mv78230.dtsi + +/ { + model = Lenovo Iomega ix4-300d; + compatible = lenovo,ix4-300d, marvell,armadaxp-mv78230, +marvell,armadaxp, marvell,armada-370-xp; + + chosen { + bootargs = console=ttyS0,115200 earlyprintk; + stdout-path = /soc/internal-regs/serial@12000; + }; + + memory { + device_type = memory; + reg = 0 0x 0 0x2000; /* 512MB */ + }; + + soc { + ranges = MBUS_ID(0xf0, 0x01) 0 0 0xd000 0x10 + MBUS_ID(0x01, 0x1d) 0 0 0xfff0 0x10; + + pcie-controller { + status = okay; + + /* Quad port sata: Marvell 88SX7042 */ + pcie@1,0 { + /* Port 0, Lane 0 */ + status = okay; + }; + + /* USB 3.0 xHCI controller: NEC D720200F1 */ + pcie@5,0 { + /* Port 1, Lane 0 */ + status = okay; + }; + }; + + internal-regs { + pinctrl { + poweroff_pin: poweroff-pin { + marvell,pins = mpp24; + marvell,function = gpio; + }; + + power_button_pin: power-button-pin { + marvell,pins = mpp44; + marvell,function = gpio; + }; + + reset_button_pin: reset-button-pin { + marvell,pins = mpp45; + marvell,function = gpio; + }; + select_button_pin: select-button-pin { + marvell,pins = mpp41; + marvell,function = gpio; + }; + + scroll_button_pin: scroll-button-pin { + marvell,pins = mpp42; + marvell,function = gpio; + }; + + hdd_led_pin: hdd-led-pin { + marvell,pins = mpp26; + marvell,function = gpio; + }; + }; + + serial@12000 { + status = okay; + }; + + mdio { + phy0: ethernet-phy@0 { /* Marvell 88E1318 */ + reg = 0; + }; + + phy1: ethernet-phy@1 { /* Marvell 88E1318 */ + reg = 1; + }; + }; + + ethernet@7
Re: [PATCH 1/2] Added dts defintion for Lenovo ix4-300d nas
Well I'm glad you spend time on this. So I'll explain more in detail where I am on this one. I have the vendor 3.0.29 kernel patched with LSP drivers from Marvell (which includes the PHY & Net drivers). With this version (called LSPkernel now on) pulling MPP24 GPIO output up shutdown the power of the device. At first I though it could be watchdog or wol related so I deep dive into both drivers and start uncommenting register write by register write, in the end the LSPKernel start rebooting instead of poweroff when no phy register were written at all... which is when I start thinking about that its was maybe not really which reg were written but that both phy were to be writtent to at least on reg for the MPP24 to poweroff the device and that worked out. So as soon as both phy get "m88e1318_config_aneg" fucntion called from "drivers/net/phy/marvell.c" it works fine. Also maybe you can help me there although the marvell.c has m88e1318_get_wol & m88e1318_set_wol setup as part of the MARVELL_PHY_ID_88E1318S calling "ethtool -s eth0 wol g" from debian return a non-supported error .. any though ? Benoit Le 24 juil. 2014 à 00:26, Andrew Lunn a écrit : >> Both phy are : >> marvell,88e1318 > > I don't have the datasheet for this specific phy model, but i do have > the datasheet for another similar phy. > >> example of a minimal reg write that lead MPP24 to shutdown instead >> of rebooting on original BSP driver > >> X BasicInit > > I'm assuming regOffs is decimal, and data is hex? > >> phyAdr 0: regOffs: 16 data: 3 > > Copper Specific control register. 3 means Polarity Reversal Disable & > Jabber function disable. > >> phyAdr 0: regOffs: 10 data: 830 > > Reg 10 is the 1000BASE-T Status register, which is read only! > > So this is not making much sense. Are we missing some changes to the > page register? Register 16 of page 3 is the LED control register. > > Andrew > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 2/2] ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
No worries, sorry it makes more email for you guys, I've added the colors for power and revert order hdd:blue instead of blue:hdd for the hdd led. For the marvell,mv78230-a0-i2c unfortunately i've spend 3 hours trying to understand this but it only works with this on the ix4-300d :(. There was multiple patch around this and maybe one broke the auto-detect part of this, I've tried compiling with some 3.10 or lower kernel but no luck here I still have to put this a0 option. Benoit Le 24 juil. 2014 à 00:42, Andrew Lunn a écrit : >> +i2c@11000 { >> +compatible = "marvell,mv78230-a0-i2c", >> +"marvell,mv64xxx-i2c"; > > Ah sorry, i missed this first time. Do you really need > "marvell,mv78230-a0-i2c"? > > Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt says: > > - "marvell,mv78230-a0-i2c" > * Note: Only use "marvell,mv78230-a0-i2c" for a > very rare, initial version of the SoC which > had broken offload support. Linux > auto-detects this and sets it appropriately. > > So i don't think you should have this hear. > > Gregory, please could you comment. > >> +power-led { >> +label = "ix4-300d:power"; > > It is normal to include the colour, and you did for all the other > LEDs. > > Andrew -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH 2/2] ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
The Lenovo Iomega ix4-300d is a 4-Bay sata NAS with dual Gb, USB2.0 & 3.0, powered by a Marvell Armada XP MV78230 dual core CPU. http://shop.lenovo.com/fr/fr/servers/network-storage/lenovoemc/ix4-300d/ Signed-off-by: Benoit Masson --- arch/arm/boot/dts/Makefile | 3 +- arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts | 284 2 files changed, 286 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index adb5ed9..4429495 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -437,8 +437,9 @@ dtb-$(CONFIG_MACH_ARMADA_XP) += \ armada-xp-axpwifiap.dtb \ armada-xp-db.dtb \ armada-xp-gp.dtb \ - armada-xp-netgear-rn2120.dtb \ + armada-xp-lenovo-ix4-300d.dtb \ armada-xp-matrix.dtb \ + armada-xp-netgear-rn2120.dtb \ armada-xp-openblocks-ax3-4.dtb dtb-$(CONFIG_MACH_DOVE) += dove-cm-a510.dtb \ dove-cubox.dtb \ diff --git a/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts new file mode 100644 index 000..1f33cbc --- /dev/null +++ b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts @@ -0,0 +1,284 @@ +/* + * Device Tree file for Lenovo Iomega ix4-300d + * + * Copyright (C) 2014, Benoit Masson + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version + * 2 of the License, or (at your option) any later version. + */ + +/dts-v1/; + +#include +#include +#include "armada-xp-mv78230.dtsi" + +/ { + model = "Lenovo Iomega ix4-300d"; + compatible = "lenovo,ix4-300d", "marvell,armadaxp-mv78230", +"marvell,armadaxp", "marvell,armada-370-xp"; + + chosen { + bootargs = "console=ttyS0,115200 earlyprintk"; + stdout-path = "/soc/internal-regs/serial@12000"; + }; + + memory { + device_type = "memory"; + reg = <0 0x 0 0x2000>; /* 512MB */ + }; + + soc { + ranges = ; + + pcie-controller { + status = "okay"; + + /* Quad port sata: Marvell 88SX7042 */ + pcie@1,0 { + /* Port 0, Lane 0 */ + status = "okay"; + }; + + /* USB 3.0 xHCI controller: NEC D720200F1 */ + pcie@5,0 { + /* Port 1, Lane 0 */ + status = "okay"; + }; + }; + + internal-regs { + pinctrl { + poweroff_pin: poweroff-pin { + marvell,pins = "mpp24"; + marvell,function = "gpio"; + }; + + power_button_pin: power-button-pin { + marvell,pins = "mpp44"; + marvell,function = "gpio"; + }; + + reset_button_pin: reset-button-pin { + marvell,pins = "mpp45"; + marvell,function = "gpio"; + }; + select_button_pin: select-button-pin { + marvell,pins = "mpp41"; + marvell,function = "gpio"; + }; + + scroll_button_pin: scroll-button-pin { + marvell,pins = "mpp42"; + marvell,function = "gpio"; + }; + + hdd_led_pin: hdd-led-pin { + marvell,pins = "mpp26"; + marvell,function = "gpio"; + }; + }; + + serial@12000 { + status = "okay"; + }; + + mdio { + phy0: ethernet-phy@0 { /* Marvell 88E1318 */ + reg = <0>; + }; + + phy1: ethernet-phy@1 { /* Marvell 88E1318 */ +
[PATCH 1/2] Adding Lenovo - Lenovo Group Ltd. to the vendor-prefixes list.
Lenovo Group Ltd. (stylized as lenovo) is a Chinese multinational computer technology company with headquarters in Beijing, China, and Morrisville, North Carolina, United States. http://www.lenovo.com/ Signed-off-by: Benoit Masson --- Documentation/devicetree/bindings/vendor-prefixes.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt index 46a311e..ae09892 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.txt +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt @@ -71,6 +71,7 @@ karo Ka-Ro electronics GmbH keymileKeymile GmbH lacie LaCie lantiq Lantiq Semiconductor +lenovo Lenovo Group Ltd. lg LG Corporation linux Linux-specific binding lsiLSI Corp. (LSI Logic) -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH 2/2] ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
The Lenovo Iomega ix4-300d is a 4-Bay sata NAS with dual Gb, USB2.0 & 3.0, powered by a Marvell Armada XP MV78230 dual core CPU. http://shop.lenovo.com/fr/fr/servers/network-storage/lenovoemc/ix4-300d/ Signed-off-by: Benoit Masson --- arch/arm/boot/dts/Makefile | 3 +- arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts | 284 2 files changed, 286 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index adb5ed9..4429495 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -437,8 +437,9 @@ dtb-$(CONFIG_MACH_ARMADA_XP) += \ armada-xp-axpwifiap.dtb \ armada-xp-db.dtb \ armada-xp-gp.dtb \ - armada-xp-netgear-rn2120.dtb \ + armada-xp-lenovo-ix4-300d.dtb \ armada-xp-matrix.dtb \ + armada-xp-netgear-rn2120.dtb \ armada-xp-openblocks-ax3-4.dtb dtb-$(CONFIG_MACH_DOVE) += dove-cm-a510.dtb \ dove-cubox.dtb \ diff --git a/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts new file mode 100644 index 000..aedc9dc --- /dev/null +++ b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts @@ -0,0 +1,284 @@ +/* + * Device Tree file for Lenovo Iomega ix4-300d + * + * Copyright (C) 2014, Benoit Masson + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version + * 2 of the License, or (at your option) any later version. + */ + +/dts-v1/; + +#include +#include +#include "armada-xp-mv78230.dtsi" + +/ { + model = "Lenovo Iomega ix4-300d"; + compatible = "lenovo,ix4-300d", "marvell,armadaxp-mv78230", +"marvell,armadaxp", "marvell,armada-370-xp"; + + chosen { + bootargs = "console=ttyS0,115200 earlyprintk"; + stdout-path = "/soc/internal-regs/serial@12000"; + }; + + memory { + device_type = "memory"; + reg = <0 0x 0 0x2000>; /* 512MB */ + }; + + soc { + ranges = ; + + pcie-controller { + status = "okay"; + + /* Quad port sata: Marvell 88SX7042 */ + pcie@1,0 { + /* Port 0, Lane 0 */ + status = "okay"; + }; + + /* USB 3.0 xHCI controller: NEC D720200F1 */ + pcie@5,0 { + /* Port 1, Lane 0 */ + status = "okay"; + }; + }; + + internal-regs { + pinctrl { + poweroff_pin: poweroff-pin { + marvell,pins = "mpp24"; + marvell,function = "gpio"; + }; + + power_button_pin: power-button-pin { + marvell,pins = "mpp44"; + marvell,function = "gpio"; + }; + + reset_button_pin: reset-button-pin { + marvell,pins = "mpp45"; + marvell,function = "gpio"; + }; + select_button_pin: select-button-pin { + marvell,pins = "mpp41"; + marvell,function = "gpio"; + }; + + scroll_button_pin: scroll-button-pin { + marvell,pins = "mpp42"; + marvell,function = "gpio"; + }; + + hdd_led_pin: hdd-led-pin { + marvell,pins = "mpp26"; + marvell,function = "gpio"; + }; + }; + + serial@12000 { + status = "okay"; + }; + + mdio { + phy0: ethernet-phy@0 { /* Marvell 88E1318 */ + reg = <0>; + }; + + phy1: ethernet-phy@1 { /* Marvell 88E1318 */ +
Re: [PATCH 1/2] Added dts defintion for Lenovo ix4-300d nas
Well after several test with the original BSP driver I found that this is not fully WOL related. It could be that the LED pin is linked to poweron for WOL, yet here the issue is on shutdown pulling up MPP24 should poweroff the deice but only reboots it except is both PHY have some reg written to... By the way the current nv_neta does not seems to support WOL for 88e1318 and still having them both up is enough to have poweroff to work, which is why I'm putting the WOL as a side track. Both phy are : marvell,88e1318 example of a minimal reg write that lead MPP24 to shutdown instead of rebooting on original BSP driver X BasicInit XX phyAdr 0: regOffs: 16 data: 3 caller: mvEthE1310PhyBasicInit+0x2c/0x58 XX phyAdr 0: regOffs: 10 data: 830 caller: mvEthE1310PhyBasicInit+0x3c/0x58 XX phyAdr 0: regOffs: 16 data: 0 caller: mvEthE1310PhyBasicInit+0x4c/0x58 X BasicInit XX phyAdr 1: regOffs: 16 data: 3 caller: mvEthE1310PhyBasicInit+0x2c/0x58 XX phyAdr 1: regOffs: 10 data: 830 caller: mvEthE1310PhyBasicInit+0x3c/0x58 XX phyAdr 1: regOffs: 16 data: 0 caller: mvEthE1310PhyBasicInit+0x4c/0x58 I've tried something like: compatible = "marvell,88e1318"; device_type = "ethernet-phy"; marvell,reg-init = /* Init led/activity workaround for MP24 shutdown. */ <3 0x10 0 0x830>; In the dts but without luck Regards, Benoit Le 23 juil. 2014 à 18:49, Andrew Lunn a écrit : >> Well actually the PHY need to be initialized (at least 1 mII reg >> written), which from marvel LSP driver always occurs, while it >> doesn't with mainline PHY driver (drivers/net/phy/marvell.c), so the >> only simple way I found to have at least one PHY reg on both >> interface written is to have both eth up at OS config level. > > Thanks for the information. This sounds like a wake on LAN feature. > I've seen other Marvell hardware connect a PHY LED output pin to the > circuit controlling the main power supply. When the PHY detects the > magic wake-up packet, it 'blinks' the LED so turning the power back > on. > > My guess is, the register write to the PHY is configuring the LED. Do > you have the datasheet for the PHY? Can you check this? > >> Probably the best option would be to have a reg-init = > value> on both phy dts definition but the current armada mii doesn't >> support this dts config... > > Once we understand what is going on here, we can consider adding > support for this. > > Andrew -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 2/2] Adding lenovo in vendor
Looking at the vendor list it should then be "Lenovo Group Ltd." since no other vendor except 1 use Limited all other use Ltd. Fine with this ? Le 23 juil. 2014 à 19:26, Jason Cooper a écrit : > On Wed, Jul 23, 2014 at 05:10:33PM +0200, Andrew Lunn wrote: +lenovoLENOVO >>> >>> is this their official, registered company name? >> >> http://www.lenovo.com/ww/lenovo/FAQs.html says >> >> 1. What is Lenovo’s stock symbol (ticker)? >> HKSE: 992.hk >> ADR (Level I): LNVGY >> >> So i think lenovo is probably the more understandable vendor prefix, >> even if it is not the official stock ticker. >> >> However there official registered company name appears to be >> Lenovo Group Limited. > > Agreed, Benoit, please do 'lenovo Lenovo Group Limited' > > thx, > > Jason. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 1/2] Added dts defintion for Lenovo ix4-300d nas
Hi Andrew I've taken your comment into account, yet for the PHY init comment, see my answer below. Le 23 juil. 2014 à 16:14, Andrew Lunn a écrit : > >>> + /* warning: you need both eth1 & 0 to be initialize for poweroff to >>> shutdown otherwise it reboots */ > > What do you mean by initialized? Driver loaded? Interface up? Well actually the PHY need to be initialized (at least 1 mII reg written), which from marvel LSP driver always occurs, while it doesn't with mainline PHY driver (drivers/net/phy/marvell.c), so the only simple way I found to have at least one PHY reg on both interface written is to have both eth up at OS config level. Probably the best option would be to have a reg-init = on both phy dts definition but the current armada mii doesn't support this dts config... > >> This is a great first version > > I agree with Jason, well done. > Thanks ! > Andrew -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 1/2] Added dts defintion for Lenovo ix4-300d nas
Hi Andrew I've taken your comment into account, yet for the PHY init comment, see my answer below. Le 23 juil. 2014 à 16:14, Andrew Lunn and...@lunn.ch a écrit : + /* warning: you need both eth1 0 to be initialize for poweroff to shutdown otherwise it reboots */ What do you mean by initialized? Driver loaded? Interface up? Well actually the PHY need to be initialized (at least 1 mII reg written), which from marvel LSP driver always occurs, while it doesn't with mainline PHY driver (drivers/net/phy/marvell.c), so the only simple way I found to have at least one PHY reg on both interface written is to have both eth up at OS config level. Probably the best option would be to have a reg-init = reg offset value on both phy dts definition but the current armada mii doesn't support this dts config... This is a great first version I agree with Jason, well done. Thanks ! Andrew -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 2/2] Adding lenovo in vendor
Looking at the vendor list it should then be Lenovo Group Ltd. since no other vendor except 1 use Limited all other use Ltd. Fine with this ? Le 23 juil. 2014 à 19:26, Jason Cooper ja...@lakedaemon.net a écrit : On Wed, Jul 23, 2014 at 05:10:33PM +0200, Andrew Lunn wrote: +lenovoLENOVO is this their official, registered company name? http://www.lenovo.com/ww/lenovo/FAQs.html says 1. What is Lenovo’s stock symbol (ticker)? HKSE: 992.hk ADR (Level I): LNVGY So i think lenovo is probably the more understandable vendor prefix, even if it is not the official stock ticker. However there official registered company name appears to be Lenovo Group Limited. Agreed, Benoit, please do 'lenovo Lenovo Group Limited' thx, Jason. -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 1/2] Added dts defintion for Lenovo ix4-300d nas
Well after several test with the original BSP driver I found that this is not fully WOL related. It could be that the LED pin is linked to poweron for WOL, yet here the issue is on shutdown pulling up MPP24 should poweroff the deice but only reboots it except is both PHY have some reg written to... By the way the current nv_neta does not seems to support WOL for 88e1318 and still having them both up is enough to have poweroff to work, which is why I'm putting the WOL as a side track. Both phy are : marvell,88e1318 example of a minimal reg write that lead MPP24 to shutdown instead of rebooting on original BSP driver X BasicInit XX phyAdr 0: regOffs: 16 data: 3 caller: mvEthE1310PhyBasicInit+0x2c/0x58 XX phyAdr 0: regOffs: 10 data: 830 caller: mvEthE1310PhyBasicInit+0x3c/0x58 XX phyAdr 0: regOffs: 16 data: 0 caller: mvEthE1310PhyBasicInit+0x4c/0x58 X BasicInit XX phyAdr 1: regOffs: 16 data: 3 caller: mvEthE1310PhyBasicInit+0x2c/0x58 XX phyAdr 1: regOffs: 10 data: 830 caller: mvEthE1310PhyBasicInit+0x3c/0x58 XX phyAdr 1: regOffs: 16 data: 0 caller: mvEthE1310PhyBasicInit+0x4c/0x58 I've tried something like: compatible = marvell,88e1318; device_type = ethernet-phy; marvell,reg-init = /* Init led/activity workaround for MP24 shutdown. */ 3 0x10 0 0x830; In the dts but without luck Regards, Benoit Le 23 juil. 2014 à 18:49, Andrew Lunn and...@lunn.ch a écrit : Well actually the PHY need to be initialized (at least 1 mII reg written), which from marvel LSP driver always occurs, while it doesn't with mainline PHY driver (drivers/net/phy/marvell.c), so the only simple way I found to have at least one PHY reg on both interface written is to have both eth up at OS config level. Thanks for the information. This sounds like a wake on LAN feature. I've seen other Marvell hardware connect a PHY LED output pin to the circuit controlling the main power supply. When the PHY detects the magic wake-up packet, it 'blinks' the LED so turning the power back on. My guess is, the register write to the PHY is configuring the LED. Do you have the datasheet for the PHY? Can you check this? Probably the best option would be to have a reg-init = reg offset value on both phy dts definition but the current armada mii doesn't support this dts config... Once we understand what is going on here, we can consider adding support for this. Andrew -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH 2/2] ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
The Lenovo Iomega ix4-300d is a 4-Bay sata NAS with dual Gb, USB2.0 3.0, powered by a Marvell Armada XP MV78230 dual core CPU. http://shop.lenovo.com/fr/fr/servers/network-storage/lenovoemc/ix4-300d/ Signed-off-by: Benoit Masson ya...@perenite.com --- arch/arm/boot/dts/Makefile | 3 +- arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts | 284 2 files changed, 286 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index adb5ed9..4429495 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -437,8 +437,9 @@ dtb-$(CONFIG_MACH_ARMADA_XP) += \ armada-xp-axpwifiap.dtb \ armada-xp-db.dtb \ armada-xp-gp.dtb \ - armada-xp-netgear-rn2120.dtb \ + armada-xp-lenovo-ix4-300d.dtb \ armada-xp-matrix.dtb \ + armada-xp-netgear-rn2120.dtb \ armada-xp-openblocks-ax3-4.dtb dtb-$(CONFIG_MACH_DOVE) += dove-cm-a510.dtb \ dove-cubox.dtb \ diff --git a/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts new file mode 100644 index 000..aedc9dc --- /dev/null +++ b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts @@ -0,0 +1,284 @@ +/* + * Device Tree file for Lenovo Iomega ix4-300d + * + * Copyright (C) 2014, Benoit Masson ya...@perenite.com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version + * 2 of the License, or (at your option) any later version. + */ + +/dts-v1/; + +#include dt-bindings/input/input.h +#include dt-bindings/gpio/gpio.h +#include armada-xp-mv78230.dtsi + +/ { + model = Lenovo Iomega ix4-300d; + compatible = lenovo,ix4-300d, marvell,armadaxp-mv78230, +marvell,armadaxp, marvell,armada-370-xp; + + chosen { + bootargs = console=ttyS0,115200 earlyprintk; + stdout-path = /soc/internal-regs/serial@12000; + }; + + memory { + device_type = memory; + reg = 0 0x 0 0x2000; /* 512MB */ + }; + + soc { + ranges = MBUS_ID(0xf0, 0x01) 0 0 0xd000 0x10 + MBUS_ID(0x01, 0x1d) 0 0 0xfff0 0x10; + + pcie-controller { + status = okay; + + /* Quad port sata: Marvell 88SX7042 */ + pcie@1,0 { + /* Port 0, Lane 0 */ + status = okay; + }; + + /* USB 3.0 xHCI controller: NEC D720200F1 */ + pcie@5,0 { + /* Port 1, Lane 0 */ + status = okay; + }; + }; + + internal-regs { + pinctrl { + poweroff_pin: poweroff-pin { + marvell,pins = mpp24; + marvell,function = gpio; + }; + + power_button_pin: power-button-pin { + marvell,pins = mpp44; + marvell,function = gpio; + }; + + reset_button_pin: reset-button-pin { + marvell,pins = mpp45; + marvell,function = gpio; + }; + select_button_pin: select-button-pin { + marvell,pins = mpp41; + marvell,function = gpio; + }; + + scroll_button_pin: scroll-button-pin { + marvell,pins = mpp42; + marvell,function = gpio; + }; + + hdd_led_pin: hdd-led-pin { + marvell,pins = mpp26; + marvell,function = gpio; + }; + }; + + serial@12000 { + status = okay; + }; + + mdio { + phy0: ethernet-phy@0 { /* Marvell 88E1318 */ + reg = 0; + }; + + phy1: ethernet-phy@1 { /* Marvell 88E1318 */ + reg = 1; + }; + }; + + ethernet@7
[PATCH 1/2] Adding Lenovo - Lenovo Group Ltd. to the vendor-prefixes list.
Lenovo Group Ltd. (stylized as lenovo) is a Chinese multinational computer technology company with headquarters in Beijing, China, and Morrisville, North Carolina, United States. http://www.lenovo.com/ Signed-off-by: Benoit Masson ya...@perenite.com --- Documentation/devicetree/bindings/vendor-prefixes.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt index 46a311e..ae09892 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.txt +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt @@ -71,6 +71,7 @@ karo Ka-Ro electronics GmbH keymileKeymile GmbH lacie LaCie lantiq Lantiq Semiconductor +lenovo Lenovo Group Ltd. lg LG Corporation linux Linux-specific binding lsiLSI Corp. (LSI Logic) -- 1.9.1 -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH 2/2] ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
The Lenovo Iomega ix4-300d is a 4-Bay sata NAS with dual Gb, USB2.0 3.0, powered by a Marvell Armada XP MV78230 dual core CPU. http://shop.lenovo.com/fr/fr/servers/network-storage/lenovoemc/ix4-300d/ Signed-off-by: Benoit Masson ya...@perenite.com --- arch/arm/boot/dts/Makefile | 3 +- arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts | 284 2 files changed, 286 insertions(+), 1 deletion(-) create mode 100644 arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index adb5ed9..4429495 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -437,8 +437,9 @@ dtb-$(CONFIG_MACH_ARMADA_XP) += \ armada-xp-axpwifiap.dtb \ armada-xp-db.dtb \ armada-xp-gp.dtb \ - armada-xp-netgear-rn2120.dtb \ + armada-xp-lenovo-ix4-300d.dtb \ armada-xp-matrix.dtb \ + armada-xp-netgear-rn2120.dtb \ armada-xp-openblocks-ax3-4.dtb dtb-$(CONFIG_MACH_DOVE) += dove-cm-a510.dtb \ dove-cubox.dtb \ diff --git a/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts new file mode 100644 index 000..1f33cbc --- /dev/null +++ b/arch/arm/boot/dts/armada-xp-lenovo-ix4-300d.dts @@ -0,0 +1,284 @@ +/* + * Device Tree file for Lenovo Iomega ix4-300d + * + * Copyright (C) 2014, Benoit Masson ya...@perenite.com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version + * 2 of the License, or (at your option) any later version. + */ + +/dts-v1/; + +#include dt-bindings/input/input.h +#include dt-bindings/gpio/gpio.h +#include armada-xp-mv78230.dtsi + +/ { + model = Lenovo Iomega ix4-300d; + compatible = lenovo,ix4-300d, marvell,armadaxp-mv78230, +marvell,armadaxp, marvell,armada-370-xp; + + chosen { + bootargs = console=ttyS0,115200 earlyprintk; + stdout-path = /soc/internal-regs/serial@12000; + }; + + memory { + device_type = memory; + reg = 0 0x 0 0x2000; /* 512MB */ + }; + + soc { + ranges = MBUS_ID(0xf0, 0x01) 0 0 0xd000 0x10 + MBUS_ID(0x01, 0x1d) 0 0 0xfff0 0x10; + + pcie-controller { + status = okay; + + /* Quad port sata: Marvell 88SX7042 */ + pcie@1,0 { + /* Port 0, Lane 0 */ + status = okay; + }; + + /* USB 3.0 xHCI controller: NEC D720200F1 */ + pcie@5,0 { + /* Port 1, Lane 0 */ + status = okay; + }; + }; + + internal-regs { + pinctrl { + poweroff_pin: poweroff-pin { + marvell,pins = mpp24; + marvell,function = gpio; + }; + + power_button_pin: power-button-pin { + marvell,pins = mpp44; + marvell,function = gpio; + }; + + reset_button_pin: reset-button-pin { + marvell,pins = mpp45; + marvell,function = gpio; + }; + select_button_pin: select-button-pin { + marvell,pins = mpp41; + marvell,function = gpio; + }; + + scroll_button_pin: scroll-button-pin { + marvell,pins = mpp42; + marvell,function = gpio; + }; + + hdd_led_pin: hdd-led-pin { + marvell,pins = mpp26; + marvell,function = gpio; + }; + }; + + serial@12000 { + status = okay; + }; + + mdio { + phy0: ethernet-phy@0 { /* Marvell 88E1318 */ + reg = 0; + }; + + phy1: ethernet-phy@1 { /* Marvell 88E1318 */ + reg = 1; + }; + }; + + ethernet@7
Re: [PATCH 2/2] ARM: mvebu: Added dts defintion for Lenovo Iomega ix4-300d NAS
No worries, sorry it makes more email for you guys, I've added the colors for power and revert order hdd:blue instead of blue:hdd for the hdd led. For the marvell,mv78230-a0-i2c unfortunately i've spend 3 hours trying to understand this but it only works with this on the ix4-300d :(. There was multiple patch around this and maybe one broke the auto-detect part of this, I've tried compiling with some 3.10 or lower kernel but no luck here I still have to put this a0 option. Benoit Le 24 juil. 2014 à 00:42, Andrew Lunn and...@lunn.ch a écrit : +i2c@11000 { +compatible = marvell,mv78230-a0-i2c, +marvell,mv64xxx-i2c; Ah sorry, i missed this first time. Do you really need marvell,mv78230-a0-i2c? Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt says: - marvell,mv78230-a0-i2c * Note: Only use marvell,mv78230-a0-i2c for a very rare, initial version of the SoC which had broken offload support. Linux auto-detects this and sets it appropriately. So i don't think you should have this hear. Gregory, please could you comment. +power-led { +label = ix4-300d:power; It is normal to include the colour, and you did for all the other LEDs. Andrew -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 1/2] Added dts defintion for Lenovo ix4-300d nas
Well I'm glad you spend time on this. So I'll explain more in detail where I am on this one. I have the vendor 3.0.29 kernel patched with LSP drivers from Marvell (which includes the PHY Net drivers). With this version (called LSPkernel now on) pulling MPP24 GPIO output up shutdown the power of the device. At first I though it could be watchdog or wol related so I deep dive into both drivers and start uncommenting register write by register write, in the end the LSPKernel start rebooting instead of poweroff when no phy register were written at all... which is when I start thinking about that its was maybe not really which reg were written but that both phy were to be writtent to at least on reg for the MPP24 to poweroff the device and that worked out. So as soon as both phy get m88e1318_config_aneg fucntion called from drivers/net/phy/marvell.c it works fine. Also maybe you can help me there although the marvell.c has m88e1318_get_wol m88e1318_set_wol setup as part of the MARVELL_PHY_ID_88E1318S calling ethtool -s eth0 wol g from debian return a non-supported error .. any though ? Benoit Le 24 juil. 2014 à 00:26, Andrew Lunn and...@lunn.ch a écrit : Both phy are : marvell,88e1318 I don't have the datasheet for this specific phy model, but i do have the datasheet for another similar phy. example of a minimal reg write that lead MPP24 to shutdown instead of rebooting on original BSP driver X BasicInit I'm assuming regOffs is decimal, and data is hex? phyAdr 0: regOffs: 16 data: 3 Copper Specific control register. 3 means Polarity Reversal Disable Jabber function disable. phyAdr 0: regOffs: 10 data: 830 Reg 10 is the 1000BASE-T Status register, which is read only! So this is not making much sense. Are we missing some changes to the page register? Register 16 of page 3 is the LED control register. Andrew -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/