Revision 8b95599c55ed24b36cf44a4720067cfe67edbcb4 authored by Marek Vasut on 16 October 2019, 13:35:06 UTC, committed by David S. Miller on 17 October 2019, 23:31:51 UTC
The KSZ8051 PHY and the KSZ8794/KSZ8795/KSZ8765 switch share exactly the same PHY ID. Since KSZ8051 is higher in the ksphy_driver[] list of PHYs in the micrel PHY driver, it is used even with the KSZ87xx switch. This is wrong, since the KSZ8051 configures registers of the PHY which are not present on the simplified KSZ87xx switch PHYs and misconfigures other registers of the KSZ87xx switch PHYs. Fortunatelly, it is possible to tell apart the KSZ8051 PHY from the KSZ87xx switch by checking the Basic Status register Bit 0, which is read-only and indicates presence of the Extended Capability Registers. The KSZ8051 PHY has those registers while the KSZ87xx switch does not. This patch implements simple check for the presence of this bit for both the KSZ8051 PHY and KSZ87xx switch, to let both use the correct PHY driver instance. Fixes: 9d162ed69f51 ("net: phy: micrel: add support for KSZ8795") Signed-off-by: Marek Vasut <marex@denx.de> Cc: Andrew Lunn <andrew@lunn.ch> Cc: David S. Miller <davem@davemloft.net> Cc: Florian Fainelli <f.fainelli@gmail.com> Cc: George McCollister <george.mccollister@gmail.com> Cc: Heiner Kallweit <hkallweit1@gmail.com> Cc: Sean Nyekjaer <sean.nyekjaer@prevas.dk> Cc: Tristram Ha <Tristram.Ha@microchip.com> Cc: Woojung Huh <woojung.huh@microchip.com> Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent 013572a
File | Mode | Size |
---|---|---|
kasan | ||
Kconfig | -rw-r--r-- | 24.2 KB |
Kconfig.debug | -rw-r--r-- | 4.7 KB |
Makefile | -rw-r--r-- | 3.8 KB |
backing-dev.c | -rw-r--r-- | 28.5 KB |
balloon_compaction.c | -rw-r--r-- | 8.2 KB |
cleancache.c | -rw-r--r-- | 9.8 KB |
cma.c | -rw-r--r-- | 14.3 KB |
cma.h | -rw-r--r-- | 573 bytes |
cma_debug.c | -rw-r--r-- | 4.5 KB |
compaction.c | -rw-r--r-- | 74.8 KB |
debug.c | -rw-r--r-- | 5.9 KB |
debug_page_ref.c | -rw-r--r-- | 1.4 KB |
dmapool.c | -rw-r--r-- | 13.8 KB |
early_ioremap.c | -rw-r--r-- | 6.8 KB |
fadvise.c | -rw-r--r-- | 5.4 KB |
failslab.c | -rw-r--r-- | 1.4 KB |
filemap.c | -rw-r--r-- | 96.3 KB |
frame_vector.c | -rw-r--r-- | 6.5 KB |
frontswap.c | -rw-r--r-- | 14.2 KB |
gup.c | -rw-r--r-- | 65.7 KB |
gup_benchmark.c | -rw-r--r-- | 2.7 KB |
highmem.c | -rw-r--r-- | 11.7 KB |
hmm.c | -rw-r--r-- | 29.3 KB |
huge_memory.c | -rw-r--r-- | 84.8 KB |
hugetlb.c | -rw-r--r-- | 138.3 KB |
hugetlb_cgroup.c | -rw-r--r-- | 10.9 KB |
hwpoison-inject.c | -rw-r--r-- | 2.8 KB |
init-mm.c | -rw-r--r-- | 1.2 KB |
internal.h | -rw-r--r-- | 17.1 KB |
interval_tree.c | -rw-r--r-- | 3.1 KB |
khugepaged.c | -rw-r--r-- | 54.5 KB |
kmemleak-test.c | -rw-r--r-- | 2.6 KB |
kmemleak.c | -rw-r--r-- | 55.7 KB |
ksm.c | -rw-r--r-- | 89.1 KB |
list_lru.c | -rw-r--r-- | 14.6 KB |
maccess.c | -rw-r--r-- | 6.0 KB |
madvise.c | -rw-r--r-- | 28.7 KB |
memblock.c | -rw-r--r-- | 56.5 KB |
memcontrol.c | -rw-r--r-- | 188.2 KB |
memfd.c | -rw-r--r-- | 7.9 KB |
memory-failure.c | -rw-r--r-- | 51.8 KB |
memory.c | -rw-r--r-- | 125.6 KB |
memory_hotplug.c | -rw-r--r-- | 47.6 KB |
mempolicy.c | -rw-r--r-- | 74.2 KB |
mempool.c | -rw-r--r-- | 15.8 KB |
memremap.c | -rw-r--r-- | 12.2 KB |
memtest.c | -rw-r--r-- | 2.8 KB |
migrate.c | -rw-r--r-- | 76.2 KB |
mincore.c | -rw-r--r-- | 7.5 KB |
mlock.c | -rw-r--r-- | 22.7 KB |
mm_init.c | -rw-r--r-- | 4.8 KB |
mmap.c | -rw-r--r-- | 100.5 KB |
mmu_context.c | -rw-r--r-- | 1.3 KB |
mmu_gather.c | -rw-r--r-- | 6.7 KB |
mmu_notifier.c | -rw-r--r-- | 15.8 KB |
mmzone.c | -rw-r--r-- | 2.4 KB |
mprotect.c | -rw-r--r-- | 15.5 KB |
mremap.c | -rw-r--r-- | 19.4 KB |
msync.c | -rw-r--r-- | 2.7 KB |
nommu.c | -rw-r--r-- | 45.4 KB |
oom_kill.c | -rw-r--r-- | 30.1 KB |
page-writeback.c | -rw-r--r-- | 84.7 KB |
page_alloc.c | -rw-r--r-- | 237.6 KB |
page_counter.c | -rw-r--r-- | 6.6 KB |
page_ext.c | -rw-r--r-- | 11.0 KB |
page_idle.c | -rw-r--r-- | 5.5 KB |
page_io.c | -rw-r--r-- | 10.5 KB |
page_isolation.c | -rw-r--r-- | 9.2 KB |
page_owner.c | -rw-r--r-- | 16.2 KB |
page_poison.c | -rw-r--r-- | 3.0 KB |
page_vma_mapped.c | -rw-r--r-- | 7.6 KB |
pagewalk.c | -rw-r--r-- | 9.2 KB |
percpu-internal.h | -rw-r--r-- | 6.3 KB |
percpu-km.c | -rw-r--r-- | 3.0 KB |
percpu-stats.c | -rw-r--r-- | 5.7 KB |
percpu-vm.c | -rw-r--r-- | 10.3 KB |
percpu.c | -rw-r--r-- | 92.3 KB |
pgtable-generic.c | -rw-r--r-- | 5.3 KB |
process_vm_access.c | -rw-r--r-- | 9.8 KB |
readahead.c | -rw-r--r-- | 16.5 KB |
rmap.c | -rw-r--r-- | 54.0 KB |
rodata_test.c | -rw-r--r-- | 1.3 KB |
shmem.c | -rw-r--r-- | 107.4 KB |
shuffle.c | -rw-r--r-- | 5.7 KB |
shuffle.h | -rw-r--r-- | 1.5 KB |
slab.c | -rw-r--r-- | 105.4 KB |
slab.h | -rw-r--r-- | 19.2 KB |
slab_common.c | -rw-r--r-- | 43.8 KB |
slob.c | -rw-r--r-- | 17.0 KB |
slub.c | -rw-r--r-- | 143.2 KB |
sparse-vmemmap.c | -rw-r--r-- | 6.9 KB |
sparse.c | -rw-r--r-- | 25.2 KB |
swap.c | -rw-r--r-- | 29.9 KB |
swap_cgroup.c | -rw-r--r-- | 5.2 KB |
swap_slots.c | -rw-r--r-- | 9.4 KB |
swap_state.c | -rw-r--r-- | 22.4 KB |
swapfile.c | -rw-r--r-- | 94.8 KB |
truncate.c | -rw-r--r-- | 26.4 KB |
usercopy.c | -rw-r--r-- | 9.5 KB |
userfaultfd.c | -rw-r--r-- | 15.8 KB |
util.c | -rw-r--r-- | 22.0 KB |
vmacache.c | -rw-r--r-- | 2.7 KB |
vmalloc.c | -rw-r--r-- | 89.4 KB |
vmpressure.c | -rw-r--r-- | 13.8 KB |
vmscan.c | -rw-r--r-- | 123.1 KB |
vmstat.c | -rw-r--r-- | 51.6 KB |
workingset.c | -rw-r--r-- | 19.1 KB |
z3fold.c | -rw-r--r-- | 40.5 KB |
zbud.c | -rw-r--r-- | 18.2 KB |
zpool.c | -rw-r--r-- | 11.2 KB |
zsmalloc.c | -rw-r--r-- | 61.9 KB |
zswap.c | -rw-r--r-- | 34.2 KB |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...