NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

port-next68k/52205: Wrong locator on zsc at intio line in dmesg

>Number:         52205
>Category:       port-next68k
>Synopsis:       Wrong locator on zsc at intio line in dmesg
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    port-next68k-maintainer
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Apr 30 20:05:00 +0000 2017
>Originator:     Miod Vallat
>Release:        7.1
Devices attaching to intio(4) are responsible for updating the ia_addr field of their attach args, in order for intioprint to print it.

However, sys/arch/next68k/dev/zsc.c sets ia_addr to the virtual address where the registers are mapped, instead of the physical address.

This causes inconsistency in dmesg:
intio0 at mainbus0
esp0 at intio0 addr 0x2114000
zsc0 at intio0 addr 0x3fa000
nextdma0 at intio0 addr 0x2000010: channel 0 (scsi)
nextdma1 at intio0 addr 0x2000110: channel 1 (enetx)
nextdma2 at intio0 addr 0x2000150: channel 2 (enetr)
xe0 at intio0 addr 0x2106000

and the address will change from one kernel to another.
Boot NetBSD/next68k.
In sys/arch/next68k/dev/zs.c zs_match(), set ia_addr to NEXT_P_SCC rather than IIOV(NEXT_P_SCC).

Home | Main Index | Thread Index | Old Index