Subject: Re: ts102.c
To: Martin Husemann <martin@duskware.de>
From: Erik Berls <cyber@ono-sendai.com>
List: port-sparc
Date: 10/06/2002 09:38:32
] > Even the nell looks somewhat like an i386 based chip.
] 
] Uhh, you knew I couldn't let this pass without protest ;-)

[#-P

I've read through the nell driver, both it and the i386 based chips
like to do this funky double mapping to cope with a small footprint
in the (normally) ISA or PCI space.  (*_alloc, *_map functions)

The ts102 on the other hand uses a direct mapping, and consequently
consumes some 256M of bus space, 
 #define TS102_OFFSET_REGISTERS          0x02000000
 #define TS102_OFFSET_CARD_A_ATTR_SPACE  0x04000000
 #define TS102_OFFSET_CARD_B_ATTR_SPACE  0x05000000
 #define TS102_SIZE_ATTR_SPACE           0x01000000
 #define TS102_OFFSET_CARD_A_IO_SPACE    0x06000000
 #define TS102_OFFSET_CARD_B_IO_SPACE    0x07000000
 #define TS102_SIZE_IO_SPACE             0x01000000
 #define TS102_OFFSET_CARD_A_MEM_SPACE   0x08000000
 #define TS102_OFFSET_CARD_B_MEM_SPACE   0x0c000000
 #define TS102_SIZE_MEM_SPACE            0x04000000

] 
] The nell design is very simple, adequate for the sbus and bendable
] into shape by the driver for just about every pcmcia card in existence
             ^^^^^^^^^^^^^
Yes, there is the crux, because the nell _looks_ to the driver to
be very similar to the i386 ones.

] and even some more odd ones you could imagine. It has some restrictions
] due to its simplistic aproach, but I've yet to see a real world card
] exposing those.
] 
] If you call that "like an i386 based chip" - ok.
] 
] > The ts102 appears to have been designed by people who know sparc and sbus.
] 
] But not pcmcia? ;-}

The ts102 was designed in a vacuum.  It was a custom chip for their
hardware, they knew exactly what the full spread of the machine
looked like.

My big question tho, is when is the sparc bus_* rototillage going to be
completed?  I heard that there was something left still to do?  (Maybe
in conjuction with sparc64?)  I had some code in the ts102.c stop working
when the last one happened.  (Some things in the kernel really dont allow
one to just kvm map 256M. [#-)


-=erik.