Module Name: src Committed By: martin Date: Sun Mar 8 10:28:17 UTC 2020
Modified Files: src/sys/arch/amiga/dev [netbsd-9]: gayle_pcmcia.c src/sys/arch/amigappc/include [netbsd-9]: bus_defs.h Log Message: Pull up following revision(s) (requested by is in ticket #760): sys/arch/amiga/dev/gayle_pcmcia.c: revision 1.32 sys/arch/amigappc/include/bus_defs.h: revision 1.8 The Gayle interface uses swapped (little-endian) word accesses, so we need to use the amiga_bus_stride_1swap methods for the word accesses. Analyzed and submitted via port-amiga@ by Martin �berg. Tested on formerly working hardware - by Jukka Andberg with Dlink DE-660+ (ne) - by Frank Wille with D-Link DFE-670TXD (ne) Tested on formerly not working hardware: - by Martin with 3Com 3c589 Etherling III (ep) - by Martin and Frank with CompactFlash cards (wdc) - gayle wants stride_1swap now, so declare the rest of the bus methods since we already define them anyway. To generate a diff of this commit: cvs rdiff -u -r1.31 -r1.31.22.1 src/sys/arch/amiga/dev/gayle_pcmcia.c cvs rdiff -u -r1.6 -r1.6.34.1 src/sys/arch/amigappc/include/bus_defs.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/amiga/dev/gayle_pcmcia.c diff -u src/sys/arch/amiga/dev/gayle_pcmcia.c:1.31 src/sys/arch/amiga/dev/gayle_pcmcia.c:1.31.22.1 --- src/sys/arch/amiga/dev/gayle_pcmcia.c:1.31 Sun Feb 8 09:55:25 2015 +++ src/sys/arch/amiga/dev/gayle_pcmcia.c Sun Mar 8 10:28:16 2020 @@ -1,9 +1,9 @@ -/* $NetBSD: gayle_pcmcia.c,v 1.31 2015/02/08 09:55:25 jandberg Exp $ */ +/* $NetBSD: gayle_pcmcia.c,v 1.31.22.1 2020/03/08 10:28:16 martin Exp $ */ /* public domain */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: gayle_pcmcia.c,v 1.31 2015/02/08 09:55:25 jandberg Exp $"); +__KERNEL_RCSID(0, "$NetBSD: gayle_pcmcia.c,v 1.31.22.1 2020/03/08 10:28:16 martin Exp $"); /* PCMCIA front-end driver for A1200's and A600's. */ @@ -131,7 +131,7 @@ pccard_attach(device_t parent, device_t pmap_update(vm_map_pmap(kernel_map)); /* override the one-byte access methods for I/O space */ - pcmio_bs_methods = amiga_bus_stride_1; + pcmio_bs_methods = amiga_bus_stride_1swap; pcmio_bs_methods.bsr1 = pcmio_bsr1; pcmio_bs_methods.bsw1 = pcmio_bsw1; pcmio_bs_methods.bsrm1 = pcmio_bsrm1; Index: src/sys/arch/amigappc/include/bus_defs.h diff -u src/sys/arch/amigappc/include/bus_defs.h:1.6 src/sys/arch/amigappc/include/bus_defs.h:1.6.34.1 --- src/sys/arch/amigappc/include/bus_defs.h:1.6 Wed Jan 22 00:24:53 2014 +++ src/sys/arch/amigappc/include/bus_defs.h Sun Mar 8 10:28:16 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: bus_defs.h,v 1.6 2014/01/22 00:24:53 christos Exp $ */ +/* $NetBSD: bus_defs.h,v 1.6.34.1 2020/03/08 10:28:16 martin Exp $ */ /* * Copyright (c) 1996 Leo Weppelman. All rights reserved. @@ -171,10 +171,13 @@ struct amiga_bus_space_methods { #define __BUS_SPACE_HAS_STREAM_METHODS extern const struct amiga_bus_space_methods amiga_bus_stride_1; +extern const struct amiga_bus_space_methods amiga_bus_stride_1swap; +extern const struct amiga_bus_space_methods amiga_bus_stride_1swap_abs; extern const struct amiga_bus_space_methods amiga_bus_stride_2; extern const struct amiga_bus_space_methods amiga_bus_stride_4; extern const struct amiga_bus_space_methods amiga_bus_stride_4swap; extern const struct amiga_bus_space_methods amiga_bus_stride_16; extern const struct amiga_bus_space_methods amiga_bus_stride_0x1000; +extern const struct amiga_bus_space_methods amiga_bus_stride_0x4000; #endif /* _AMIGAPPC_BUS_DEFS_H_ */