More bugs in vme
ternaryd
ternaryd at gmail.com
Mon Feb 25 10:44:27 UTC 2013
On Mon, 25 Feb 2013 10:22:28 +0000
Martyn Welch <martyn.welch at ge.com> wrote:
>> I haven't been able to get the serial console working. This is
>> U-Boot based, and the last line is: "console [tty0] enabled,
>> bootconsole disabled". Then I use ssh to log in. But after the
>> freeze, this is no longer possible.
> Do you have a valid console statement in your bootargs?
I've got this: "console=/dev/ttyS0,115200", but I also tried without
"/dev/".
> Do you have a getty set up on your serial port in inittab (or
> wherever it's set on a systemd based system)?
T0:23:respawn:/sbin/getty -L ttyS0 115200 vt100
>> - With my version of vme_user.c, I can perform a write using an
>> ioctl call which yields vme_master_write(), or by lseek and
>> write() calls. The freeze happens anyway, but with lseek() I
>> say that a given offset of 8 will show up as 135168.
> Um, I think this may be your problem.
I thought so. For this reason, I added an ioctl call for writing 16
bits at a given address, using vme_master_write(). There is no lseek
anymore, but it freezes nevertheless.
> For A16 master windows on the tsi148, the only valid vme_addr is 0x0.
As I said, I'm very sure, this is not the case, because on the same
board, booting OS-9, the test program works.
> The registers are probably set with the base address at 0x0 and so
> you probably aren't reading and writing where you expect to be
> reading and writing.
This is what I imagine is causing the lock-ups. Is there an easy way to
allow for different base addresses, beside skipping the check_window
test?
>> - I always thought that the card in slot 1 is the arbiter and, by
>> default, the bus master, until some other card is assigned bus
>> master. I would like to be sure, but I couldn't find any function
>> could inquire.
> It's automatic in terms of bus accesses.
Does this mean, the local controller will become automatically bus
master as soon as the application tries to write to a master window?
>> -The cards allow to adjust a dip switch to select automatic or
>> manual geographic addressing, but in both cases, slot 0 is
>> returned.
> Which cards?
MicroSys VME1022. At one point, I inserted two of them into the create
in slot 1 and 2, using different NFS root file systems, but the same
kernel image.
> Are you sure the geographic address lines are wire back to the VME
> bridge chip correctly (I know of boards where they aren't, sometimes
> the bus address is exposed via other custom route...).
No, I am not sure.
> That looks like it's not detecting the geographical addressing.
Does this mean, I would have to add the kernel boot option
"vme_tsi148.geoid=1" and "geoid=2"? And while at it, should I add
"vme_tsi148.err_chk=1" in order to get bus errors rather than lock-ups?
--
Christoph
More information about the devel
mailing list