Re: ravb: Possible Regression In "net: phy: Avoid polling PHY with PHY_IGNORE_INTERRUPTS"

2016-02-16 Thread Sergei Shtylyov

Hello.

On 2/16/2016 10:42 AM, Geert Uytterhoeven wrote:


I have observed what appears to be a regression in the ravb ethernet driver
caused by d5c3d84657db ("net: phy: Avoid polling PHY with
PHY_IGNORE_INTERRUPTS").

When booting net-next configured with the ARM64 defconfig on the Renesas
r8a7795/salvator-x I see the following and the ravb is unable to access the
network. With the above mentioned patch reverted I am able to boot to
user-space using nfsroot.


The ravb interrupt is connected to a GPIO controller, which is
runtime-suspended and thus not serving the interrupt.

Cfr. "[PATCH/RFC] gpio: rcar: Add Runtime PM handling for interrupts"
(http://www.spinics.net/lists/linux-renesas-soc/msg00532.html).

I assume it worked before as the PHY driver polled the PHY instead of relying
solely on the interrupt.


   Correct. BTW, I'm going to look at handling AVB_PHY_INT in the ravb 
driver, thus removing the need for routing it to the GPIO controller now that 
phylib allows this again...



Gr{oetje,eeting}s,

 Geert


MBR, Sergei



Re: ravb: Possible Regression In "net: phy: Avoid polling PHY with PHY_IGNORE_INTERRUPTS"

2016-02-15 Thread Simon Horman
Hi Florian,

On Mon, Feb 15, 2016 at 09:08:46PM -0800, Florian Fainelli wrote:
> On February 15, 2016 7:26:46 PM PST, Simon Horman  wrote:
> >Hi Florian,
> >
> >I have observed what appears to be a regression in the ravb ethernet
> >driver
> >caused by d5c3d84657db ("net: phy: Avoid polling PHY with
> >PHY_IGNORE_INTERRUPTS").
> >
> >When booting net-next configured with the ARM64 defconfig on the
> >Renesas
> >r8a7795/salvator-x I see the following and the ravb is unable to access
> >the
> >network. With the above mentioned patch reverted I am able to boot to
> >user-space using nfsroot.
> 
> Thanks for the report, I will take a closer look tomorrow, can you test 
> patches easily on top of 4.5-rc on this platform?

Thanks.

Yes, I can easily test patches. The platform is supported in mainline as of
v4.5-rc (this problem aside) and I have access to a board.


ravb: Possible Regression In "net: phy: Avoid polling PHY with PHY_IGNORE_INTERRUPTS"

2016-02-15 Thread Simon Horman
Hi Florian,

I have observed what appears to be a regression in the ravb ethernet driver
caused by d5c3d84657db ("net: phy: Avoid polling PHY with
PHY_IGNORE_INTERRUPTS").

When booting net-next configured with the ARM64 defconfig on the Renesas
r8a7795/salvator-x I see the following and the ravb is unable to access the
network. With the above mentioned patch reverted I am able to boot to
user-space using nfsroot.


[0.00] Booting Linux on physical CPU 0x0
[0.00] Linux version 4.5.0-rc2+ 
(ho...@ayumi.isobedori.kobe.vergenet.net) (gcc version 4.8.5 (Linaro GCC 
4.8-2015.06) ) #90 SMP PREEMPT Tue Feb 16 12:22:08 JST 2016
[0.00] Boot CPU: AArch64 Processor [411fd073]
[0.00] debug: ignoring loglevel setting.
[0.00] efi: Getting EFI parameters from FDT:
[0.00] efi: UEFI not found.
[0.00] cma: Reserved 16 MiB at 0x7f00
[0.00] On node 0 totalpages: 229376
[0.00]   DMA zone: 3584 pages used for memmap
[0.00]   DMA zone: 0 pages reserved
[0.00]   DMA zone: 229376 pages, LIFO batch:31
[0.00] psci: probing for conduit method from DT.
[0.00] psci: PSCIv1.0 detected in firmware.
[0.00] psci: Using standard PSCI v0.2 function IDs
[0.00] psci: Trusted OS migration not required
[0.00] PERCPU: Embedded 20 pages/cpu @ffc036f8f000 s42496 r8192 
d31232 u81920
[0.00] pcpu-alloc: s42496 r8192 d31232 u81920 alloc=20*4096
[0.00] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 
[0.00] Detected PIPT I-cache on CPU0
[0.00] Built 1 zonelists in Zone order, mobility grouping on.  Total 
pages: 225792
[0.00] Kernel command line: ignore_loglevel rw root=/dev/nfs ip=dhcp 
nfsroot=10.3.3.135:/srv/nfs/salvator-x-arm64
[0.00] log_buf_len individual max cpu contribution: 4096 bytes
[0.00] log_buf_len total cpu_extra contributions: 12288 bytes
[0.00] log_buf_len min size: 16384 bytes
[0.00] log_buf_len: 32768 bytes
[0.00] early log buf free: 14796(90%)
[0.00] PID hash table entries: 4096 (order: 3, 32768 bytes)
[0.00] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes)
[0.00] Inode-cache hash table entries: 65536 (order: 7, 524288 bytes)
[0.00] software IO TLB [mem 0x79c0-0x7dc0] (64MB) mapped at 
[ffc031c0-ffc035bf]
[0.00] Memory: 805744K/917504K available (6468K kernel code, 593K 
rwdata, 2900K rodata, 724K init, 242K bss, 95376K reserved, 16384K cma-reserved)
[0.00] Virtual kernel memory layout:
[0.00] vmalloc : 0xff80 - 0xffbdbfff   (   246 
GB)
[0.00] vmemmap : 0xffbdc000 - 0xffbfc000   ( 8 
GB maximum)
[0.00]   0xffbdc120 - 0xffbdc200   (14 
MB actual)
[0.00] fixed   : 0xffbffa7fd000 - 0xffbffac0   (  4108 
KB)
[0.00] PCI I/O : 0xffbffae0 - 0xffbffbe0   (16 
MB)
[0.00] modules : 0xffbffc00 - 0xffc0   (64 
MB)
[0.00] memory  : 0xffc0 - 0xffc03800   (   896 
MB)
[0.00]   .init : 0xffc0009a9000 - 0xffc000a5e000   (   724 
KB)
[0.00]   .text : 0xffc8 - 0xffc0009a8244   (  9377 
KB)
[0.00]   .data : 0xffc000a5e000 - 0xffc000af2600   (   594 
KB)
[0.00] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[0.00] Preemptible hierarchical RCU implementation.
[0.00]  Build-time adjustment of leaf fanout to 64.
[0.00]  RCU restricting CPUs from NR_CPUS=64 to nr_cpu_ids=4.
[0.00] RCU: Adjusting geometry for rcu_fanout_leaf=64, nr_cpu_ids=4
[0.00] NR_IRQS:64 nr_irqs:64 0
[0.00] Architected cp15 timer(s) running at 16.66MHz (virt).
[0.00] clocksource: arch_sys_counter: mask: 0xff 
max_cycles: 0x3d7a162dd, max_idle_ns: 440795202225 ns
[0.01] sched_clock: 56 bits at 16MHz, resolution 60ns, wraps every 
219902321ns
[0.55] Console: colour dummy device 80x25
[0.000217] console [tty0] enabled
[0.000229] Calibrating delay loop (skipped), value calculated using timer 
frequency.. 33.32 BogoMIPS (lpj=66640)
[0.000238] pid_max: default: 32768 minimum: 301
[0.000263] Security Framework initialized
[0.000278] Mount-cache hash table entries: 2048 (order: 2, 16384 bytes)
[0.000283] Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes)
[0.000678] ASID allocator initialised with 65536 entries
[0.020145] EFI services will not be available.
[0.036098] Detected PIPT I-cache on CPU1
[0.036121] CPU1: Booted secondary processor [411fd073]
[0.048089] Detected PIPT I-cache on CPU2
[0.048097] CPU2: Booted secondary processor [411fd073]
[0.060095] Detected PIPT I-cache on CPU3
[0.060104] CPU3: Booted secondary processor