IRC logs for #openrisc Tuesday, 2015-01-06

--- Day changed Tue Jan 06 2015
maxpalnhi olofk: I pretty much finished the work I had planned so adding any adjustments will be straight forward as I am in the code right now11:10
maxpalnI don't think I quite follow the bit about config registers11:10
maxpalncan you explain what functionality is needed - I should be able to add it easy enough.11:10
maxpalnBTW: The new changes are a good improvement I think - particularly the rework of the init and next functions - the new one I wrote makes it a lot easier to see what's going on.11:11
maxpalnThis has just been brought to my attention - looks interesting: http://papilio.cc/index.php?n=Papilio.ZPUinoIntroduction11:13
maxpalnAlthough I'm struggling to find out much info on the uP - the info looks mostly about the development system!!11:19
_franck_maxpaln: I think you can find some info here: http://opensource.zylin.com/zpu.htm11:25
_franck_oh you're right, it looks like it's mostly SoC info11:25
maxpaln_franck_: thanks. It does seem to be mostly SoC info rather than CPU spec though.11:31
maxpalnolofk: Looking at the old BFM - there was a separate write() function for performing specific classic writes but it seems the read function to do the same was combined with the burst read function. If I understand your request correctly, what we really need is a working version of the write() function and a new read() function - both can be used to perform a classic transaction on a specific12:14
maxpalnaddress. Does this sound about right?12:14
maxpalnit was pretty simple to fix the write() function and implement a read() equivalent so I've added those on the guess that this is what you need.12:32
maxpalnI think this is all the changes I had planned now - I've added the weighting system for the cycle types, I've also added some more flexibility into the transaction generators and a bit of sanity checking on the configuration (now that the user has a few options).12:53
maxpalnIve uploaded this to dropbox here: https://www.dropbox.com/s/tuk1ufv49mrqgyo/wb_bfm_latest_06-01-15.rar?dl=012:58
stekernmaxpaln: zpu is interesting, but as far as I know, the objective is to be small (with no concern about speed)13:32
maxpalnstekern: ah, interesting background. They claim ~100 MHz but clock speed and performance aren't the same thing!15:56
stekernright16:09
ysangkokpoke53282: are you also getting problems in chrome when setting mem=1024M? hang before launching kernel on my machine...16:25
poke53282never tried so much RAM :)16:28
poke53282If you use the 32 Bit version of Chrome you have anyhow only 2GB available.16:29
ysangkokpoke53282: i'm running on 64-bit16:30
ysangkokpoke53282: btw just filed a but on a different issue16:31
poke53282Yes, saw it. Change DebugMessage to Debug16:31
poke53282you seem to be busy with the emulator. :)16:31
ysangkokpoke53282: yes :D i'm so happy there is finally an open source linux emulator in the browser which is maintained16:32
poke53282I have tried xzgv  by the way. But it needs gtk.16:32
poke53282Yes, Fabrice Bellard seems not interested in developing his emulator.16:33
poke53282v86 is still there.16:33
ysangkokit's not important... i just figured that since the framebuffer programs are so light, it's easy to support all of them16:33
ysangkokxzgv is not framebuffer of course... so there are so many other possibilities16:33
ysangkokpoke53282: i made a prototype for the URL fetching using the browser XHR (cors-enabled): https://gist.github.com/ysangkok/3bd92a6ccb4dbdf2136616:34
poke53282zgv is old and doesn't compile anymore. Too many things has changed in gcc.16:34
ysangkoki read that zgv only supports sdl and svgalib16:35
poke53282Yes16:35
ysangkoksvgalib would never work of course, it is full of x86 asm16:35
poke53282zgv uses also some other library, which seems no long used.16:35
ysangkokregarding hte browser XHR, i plan on making writing a python proxy to run in the guest, which will split up the requests with HTTP Byte Ranges so that big requests can be streamed16:36
ysangkokright now , i am pushing the downloads back into the guest using MergeFile16:37
ysangkoki don't know if that is the best way, but it's the only one i could find right now16:37
ysangkokpoke53282: do you know if files written with MergeFile are written atomically in the guest? because if they aren't, i would need to use inotify in the python proxy to wait for files to be closed before sending them to http proxy clients...16:38
mor1kx[mor1kx] bandvig pushed 1 new commit to withfpu: https://github.com/openrisc/mor1kx/commit/ff0e330eefbf54845f37c1f9f5cfa265ede8e17916:40
mor1kxmor1kx/withfpu ff0e330 Andrey Bacherov: Small optimization. Remove extra comparators from pfpu32_cmp and share some comparison results from pfpu32_cmp in pfpu32_addsub.16:40
poke53282Yes, the function Merge works atomically. But it may fail, if the file is already opened exclusively.16:42
poke53282All filesystem operations are atomic, the only thing is open, which is executed later when the file is on the server.16:45
ysangkokok, nice... this means i can make a temporary directory, have the host write files into that and serve them to the client as soon as they are created... i'd use a file for signalling the End of Steam also, then16:45
poke53282The filesystem operations can only be entered by one process, and it leaves the filesystem always in a consistent state.16:45
ysangkokthe browser has such a weird concurrency model :P16:47
poke53282Not sure, what you want to do in all details. But my filesystem is definitely capable of doing this. .16:47
poke53282Yes, messages and events.16:47
ysangkokjust curious, did you know about arm-js and it's 9p usage because i sent it to you, or did you already know?16:48
poke53282It works fine as long as you don't have a process, which must run with 100% processing power. .16:48
poke53282I didn't know about that 9p filesystem before you sent it.16:49
poke53282I searched for a solution, but couldn't find anything really usable.16:49
ysangkokah very good :)16:50
poke53282Without the code of arm-js I wouldn't have done it this way. It is also complicated. virtio especially.16:51
poke53282Probably I would have tried to program with fuse, which would have interacted with the outer world.16:52
ysangkokah yes that is a possibilty16:52
ysangkokwell, there is no reason there can't be two host-back filesystem backends :)16:53
poke53282I didn't know that there was already a fuse in kernel space.16:53
ysangkokthe buggy filesystem support is one of the most pressing issues right now, i think16:53
poke532829p is in principle nothing else as fuse, which communicated over drivers with the outer world.16:54
ysangkokdid you have a look at the LTP (linux test project)?16:54
poke53282you mean the rm issue?16:54
ysangkokyes16:54
poke53282http://www.tuxera.com/community/posix-test-suite/16:55
poke53282I tried this testsuite. The only real issue was rm and hard-links.16:56
poke53282and some date problems.16:56
poke53282the hard-link problem I know of. If have a very simple implementation, which works for me, but is wrong.16:57
poke53282the rm issue is a mystery for me. I guess, the error is in the kernel.16:57
poke53282in the virtio part.16:57
poke53282I hope, that kernel 3.19 will fix it.16:58
ysangkokyes, i saw your comment16:58
ysangkokbut i only realize now that it really only is specific to rm16:58
ysangkokthat makes it less critical... but it will of course still break many real world programs16:58
poke53282I had other problems, which shouldn't be a problem according to the specification. But the Linux kernel didn't accept my values and crashed.16:58
poke53282s/crashed/gave protocol errors/16:59
poke53282They implemented finally endianess too.16:59
poke53282So the best thing is to wait, until 3.19 is available in stekerns smp branch.17:00
poke53282This is the one I am currently using.17:00
ysangkokhmmm yes ok... it is exciting :P christmas comes late in the openrisc world :P17:00
poke53282It is interesting, but this rm problem is just meaningless.17:02
poke53282The files are anyhow removed.17:02
ysangkokit kills rm though, makes it necessary to repeat rm until the whole tree is gone...17:03
poke53282find . -exec rm {} \; maybe?17:05
poke53282the python error is also annoying. No files that begin with "." or "_" are allowd with gh-pages-17:06
poke53282So I removed those signs with the result that a file "__future__.py" was changed to "_future__.py" :)17:07
poke53282Obviously that's not the right way to handle it :(17:07
poke53282probably I should change it special.__future__.py17:08
ysangkoki consider this a problem related to the lack of a package manager17:10
ysangkoki am currently toying with multiple ideas17:10
ysangkoki built paludis (a source based package manager which claims to be cleaner than Portage) for OpenRISC, but it a lot of memory, and jor1k doesn't support 1G memory yet17:11
ysangkokthe reason i am trying a source based package manager, is because there are no big prebuilt repositories with packages for OpenRISC17:13
ysangkokanother possibility, similar to the currently used solution, would be to have all non-essential packages in several overlay squashfs'es which could be loaded using http byte ranges (so one wouldn't need to load all of it to get one file)17:14
ysangkoki think squashfs is very useful to us since it is optimized for high-latency media such as CD's17:15
ysangkokof course this would also circumvent the need to serve files individually, fixing the python issue17:17
ysangkokpoke53282: do you think the squashfs/overlayfs solution is realistic?17:17
poke53282From my side 1GB should be no problem if the browser supports it.17:21
poke53282I don't know why it does not work. But the current 31MB should be enough for everyone ;)17:22
poke53282Yes, I tried squashfs and thought about overlayfs.17:23
poke53282But they don't give me the freedom I needed.17:24
poke53282The current way, the filesystem is managed is superior to any other solution I could imagine.17:24
poke53282sqashfs is maybe optimized, but definitely not for a low latency connection like the internet.17:27
poke53282I tried several times a on-demand block device solution. It was devastating.17:28
poke53282long latency because of the metadata and 50% of the data loaded was not being used.17:29
ysangkoktoo much data was loaded because you'd load a block when seeking to it, right?17:29
poke53282You have to load the directory structure, the tree structure for the file blocks.17:30
ysangkokif not using squashfs, the filesystem would assume that seeking is cheap17:30
poke53282and then each block. I didn't use the ata-queueing capabilities by the way.17:31
poke53282Currently, the whole metadata of the filesystem is loaded in the beginning and the files are loaded compressed from the server.17:32
poke53282IF I include dependencies between those files (or wait for http/2) I reach the pratical (and theoretical?)  maximum for speed of such a server filesystem.17:33
poke53282something NFS or Samba cannot do for example.17:34
ysangkokyes, that's true. but no isolation of packages will make it hard to upgrade them, no?17:35
ysangkokthis is another reason why the container that squashfs provides seems attractive to me17:35
ysangkoksee slide 10, it has the filesystem layout of SquashFS http://tree.celinuxforum.org/CelfPubWiki/ELCEurope2008Presentations?action=AttachFile&do=get&target=squashfs-elce.pdf17:35
poke53282well, at the moment I produce the filesystem with such a script: https://github.com/s-macke/jor1k/blob/master/utils/buildfs17:37
poke53282and without a problem I can change the xml file loaded to a package format.17:38
poke53282Also you can load .tar.bz2 files at the beginning via the lazyloadimages table.17:38
ysangkokis the lazyloadimages method using 9p?17:39
poke53282no, it just loads a .tar.bz2 at the beginning and merges this with the filesystem.17:39
poke53282By the way, I am working on an implementation of lzma or xz.17:39
maxpalnolofk: on the off chance you downloaded the file from dropbox already - I noticed I had some errant debug in there, I've updated the archive with the cleaned up code now.17:42
poke53282ysangkok: A package manager seems to be good. But at the moment most of the stuff, which I compile is merged with the current filesystem.17:43
poke53282The problem is, that I delete a lot to keep it small.17:44
poke53282https://github.com/s-macke/jor1k/wiki/Filesystem-management#packages-installed17:44
poke53282All those packages in 80MB.17:44
ysangkokanother issue is that it is centralized :)17:48
ysangkoki believe i mentioned my dream to you before, it is: launching a test suite for a random open source project simply by clicking a link to jor1k with the test suite in the arguments17:50
poke53282I don't see another way. Also the browser limits everything.17:50
ysangkokthe browser doesn't limit CORS-enabled resources :P17:50
poke53282Yes17:50
poke53282Well, without a problem, we can add an option, that adds an image, which is loaded and executed at the beginning.17:51
poke53282I am doing this already in some way with the user-name.17:52
ysangkokbut there is no way, currently, from the emulator to eval javascript in the host17:53
ysangkokmy patch enables this, but i don't know if it is a good idea17:53
poke53282Unfortunately jor1k is now a very complicated project for someone who wants to develop for it. Adding something, especially software, is not easy.17:53
ysangkokit was just easier than duplicating the XHR API over a serial link :P17:53
poke53282Well, add a special purpose register or a driver, which sends Javascript to the host.17:54
poke53282no good idea, but you cannot harm anyone.17:54
ysangkokthe gist i linked executed javascript transmitted on /dev/ttyS1, did you see it?17:55
poke53282adding a driver is also difficult, because you have to compile the kernel.17:55
ysangkokthis is why i used ttyS1, then I also didn't have to change the dts/dtb17:55
poke53282well, there is a second tty implemented, which currently connected to nothing.17:56
poke53282Use this. No problem.17:56
ysangkoki already used it :P17:56
poke53282I wanted to add a switch a long time ago. Haven't done it yet.17:56
poke53282Hehe17:56
poke53282Did you remove the shell, which I start on this one?17:57
poke53282in /etc/inittab?17:57
ysangkokno17:57
ysangkoki assumed it was a typo and you were referring to the visible shell in the browser which i assumed was on ttyS017:57
poke53282can't remember of the gist you linked.17:58
poke53282No typo.17:58
poke53282IT was planned to be used hidden for the compile project.17:59
ysangkokpoke53282: here's the gist https://gist.github.com/ysangkok/3bd92a6ccb4dbdf2136617:59
poke53282to send the gcc command and so on.17:59
poke53282? See it the first time17:59
poke53282At least I guess so18:00
ysangkoki first sent it on 15:34 :)18:00
poke53282nbo, this was the pdf18:01
poke53282well, I am not sure, if I should merge this :)18:07
poke53282no problem, to put something like this In the examples folder.18:07
poke53282I wanted to add a command to receive files via such a message.18:08
ysangkokno need for merging18:08
poke53282At the moment you can only get a tar file.18:08
ysangkoki am glad you are also worrying about this18:08
poke53282Also an event system for the filesystem would be good.18:09
poke53282to start a message, when a file is opened or closed.18:09
ysangkokdoesn't inotify work?18:09
ysangkokor do you mean in the host?18:10
poke53282inotify should work. I mean on the Javascript side.18:10
ysangkokah ok18:10
poke53282For example if you want to directly start a program instead of landing in the shell.18:10
poke53282currently you have to alter /home/user/.profile for this.18:11
poke53282But you can't add a line to this in your html code.18:11
poke53282Therefore you need an event to tell you, that the file has been loaded. Then you need a command to add a line to it.18:12
ysangkokyes, i agree18:14
ysangkokanother _very_ useful primitive would be streaming of files / pipes from the host to the guest18:14
ysangkokcurrently, as you say, the files are transferred in fixed chunks18:15
poke53282streaming would be almost non-atomic :)18:15
ysangkoknon-atomic on what level? :P18:15
ysangkokjust a single unix domain socket connected to the browser would be immensly useful... i imagine this can't be done over 9p18:16
poke53282well, the filesize would increase steadily, without kernel interaction.18:16
ysangkokit doesn't need to be a regular file... a unix domain socket with SOCK_STREAM of SOCK_DGRAM is what i'm talking about18:17
poke53282no, 9p has a node, but doesn't see anything of the data over such a socket.18:17
ysangkokso does this mean a new driver would be necessary?18:18
poke53282use tty2 for it.18:18
poke53282Yes, probably.18:18
ysangkoki didn't figure out how to send data from the host to the guest, using the same tty. is this possible?18:19
poke53282should be.18:24
poke53282message.Send("tty1", data)18:24
poke53282you should disable the shell probably in /etc/inittab18:25
ysangkokmy problem was, that when i send, i also trigger the handler that i'm receiving with18:25
poke53282otherwise the input is executed by the shell.18:25
poke53282is this not the correct behavior?18:25
poke53282or maybe I don't understand18:26
ysangkoki don't know much about UART's so i can't say if it's correct18:26
ysangkokbut i wanted bidirectional communication18:26
poke53282Ahh, I understand. No, send and receive should beseparated.18:26
ysangkokif the host triggers it's receiving handler even when it sends something itself, this indicates that it is not bidirectional18:26
poke53282Maybe echo is on or something.18:26
ysangkokahh maybe it's because of the shell18:27
poke53282Yes, I think so.18:27
poke53282Just remove the third line18:28
ysangkokah yes ok, thanks18:30
poke53282I like how easy such a change is. With squashfs you would have to compile your whole image again.18:32
poke53282additional github does not really support big binary files.18:32
poke53282or better git doesn't support it well.18:33
ysangkokyou're right about that :) this is a good solution for the base system. but i still maintain that it isn't maintainable if we wanted to serve an entire debian build, for example :P18:34
poke53282well, the metadata file would have the size of 10MB probably with hundred of thousands of files.18:34
poke53282it will work that way.18:35
poke53282and I think with small additions, it would be still doable.18:35
ysangkokit is definitely doable... i am worried about the effort it will take to maintain it... if builds can be automized, it would be best18:36
poke53282Of course you use scripts for this. What do you think?18:36
poke53282When I used ext2 I had scripts as well.18:37
poke53282and with this filesystem it is not different.18:37
ysangkokit is a neat packaging system... but every other packaging system i know has versions and repositories and the like. i am worried that the wheel is getting reinvented. it's not that we cannot do that :)18:39
poke53282My plan is to implement signing of files :)18:40
ysangkokinteresting... i assume that means you also plan on decentralization?18:41
poke53282Well, at the moment, the packaging system is simple. But you are right, I thought about using one.18:41
poke53282not necessarily. I just think, it would be nice, to make sure, that no one is altering my filesystem while being loaded. (NSA ...)18:41
poke53282you can surf anonymously, use sll and so on :)18:42
poke53282I hope no one is using this feature seriously.18:42
poke53282But the reason is, that I am curious, about the inner working of such a code signing.18:43
ysangkokevery programmer hopes that his code won't be used for serious stuff... but in the end it often is :P18:43
poke53282I am still waiting for a message, that someone used my software for something illegal.18:45
poke53282You can communicate anonymously with it. Just open two windows and make an ssh connection between them.18:45
ysangkokonly if you can trust that the emulator wasn't tampered with :P so falls back to https as always18:47
poke53282yes, you are right.18:48
poke53282reminds me of cryptocat18:49
poke53282Unfortunately I can't use a build manager with ready usable scripts for every package (like debian, gentoo or arch) . The first problem is cross-compiling, the second an incomplete toolchain and third the size of the packages.18:56
poke53282jor1k is optimized in that direction.18:56
poke53282and 50% of the tools I try to compile I cannot use.18:57
poke53282you don't want to have kde or gnome. You would wait 10 minutes, because of the packages, whcih have to be loaded from the server.18:59
poke53282And at some point I would get a nice email from github, that I misuse github.19:00
poke53282I am already close to misusing it with the jor1k-sysroot repository.19:01
poke53282I am afraid, when I will be able to start firefox :) 40MB compressed data everytime you start firefox.19:02
poke53282I should start again with Firefox 1.019:02
ysangkokhmmm yes i understand19:04
ysangkokit's too bad there are no really light modern browsers19:06
poke53282yes, there is a gap. lynx ... dillo ... big gap ... webkit19:07
poke53282one with an interpreting JAvascript engine.19:07
poke53282well, I guess that would be something like Firefox 1.0.19:08
ysangkoki'm not sure why you want to have firefox in jor1k :P the idea of a server in the browser was always much more interesting to me... and most servers are way lighter than firefox19:10
poke53282because I can19:10
ysangkokheh :) that is actually a good reason i guess19:10
poke53282webkit would be the easier way.19:14
poke53282But I know, that webkit and firefox both would be more or less unusable.19:14
poke53282So, skip webkit and jump directly to firefox.19:14
poke53282I am still impressed about dillo.19:18
poke53282about the speed.19:18
poke53282of website scrolling.19:18
ysangkokyes dillo is great :D i wonder if it could this fast if it was fully html5/css (but without the JS!) compliant... i guess we will never know, nobody has the time19:20
poke53282no JAvascript means, that there is almost no dynamic content.19:20
poke53282So he can just render the site in memory one time ;)19:20
poke53282one goal is, to start jor1k inside jor1k via firefox.19:28
ysangkokah yes, a classic :D19:29
poke53282Unfortunately, only a adapted version will work. The problem is not the memory. The problem might be endianess.19:29
poke53282The typed arrays in Javascript are endian aware.19:30
poke53282jor1k won't run unaltered on a big endian machine.19:30
ysangkokthat seems pretty stupid, i always assumed javascript to be independent of that. but i suppose they sacrificed that for the extra performance19:33
poke53282Yes19:34
poke53282Who is using big endian machines by the way?19:35
poke53282the major architectures are always little endian.19:37
poke53282And how many (embedded) big endian systems are there, which want to run a Javascript engine?19:38
poke53282I guess, little endian is quasi-standard forJavascript.19:39
ysangkokyes19:42
ysangkokhmm now i'm missing socat to read the serial link. i'll try and cross-compile it...19:42
poke53282good luck :)19:44
poke53282I can also compile the Linux kernel. But I haven't done it, but killed the process after an hour. Compiled around 20%.19:44
poke53282it is a nice feeling running "make menuconfig" in jor1k19:46
ysangkokyeah that's true19:49
ysangkokpoke53282: do you know if the serial port is buffered?20:27
poke53282yes, it is. I have added a fifo.20:42
poke53282with infinite size.20:42
poke53282And the whole data in the buffer is send/received around 100 times per second.20:42
poke53282or 50 times per second when idle.20:43
poke53282you can thank Javascript, that it doesn't support signals or interrupts.20:44
ysangkokpoke53282: how can i know when the message handler is ready? it seems not to be ready onLoad, but i don't wanna modify the core emulator, i want to do it as an example like you mention22:01
poke53282the message handler should be fine after you created the jor1k object22:03
poke53282the tty is of course resetted after during kernel boot.22:04
poke53282so you need a signal, when the kernel is booted?22:04
poke53282in this case I would suggest to send a ready signal after the kernel has booted.22:04
ysangkokhmm i just call "message.Register", but the handler isn't called if i Register right the jor1k object has been created...22:06
ysangkoki may need the signal, i'll try and find out22:06
poke53282the fifos are cleared during boot. But message.Register is not.22:08
ysangkokseems to work now, onLoad handlers were called in another order than what i expected...22:11
poke53282which onload handler?22:11
poke53282of course you can send a message after some time. This I would implement in jor1k in the worker thread. No problem.22:12
poke53282a message.Send when the worker thread is initialized, then one, when we start the simulation.22:15
ysangkokonload handler for the html page22:15
poke53282Ahh, Ok22:16
ysangkokpoke53282: after fixing the inittab, how come i didn't need to change the size in the xml file?22:25
poke53282In principle you should. Not sure, what happens otherwise.22:57
poke53282But that it runs flawless is one option.22:57
poke53282I forgot what happens in the source for this case. Maybe I correct it.22:58
poke53282But the size in the xml file should match. Otherwise I cannot guarantee for anything.22:58
ysangkokpoke53282: i don't think the image support is working... i get this error: "Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://jor1k.com/sync/tarballs/iWNb3f5Cbh.tar.bz2. This can be fixed by moving the resource to the same domain or enabling CORS."23:00
poke53282Yes, I know. For some reason it works sometimes. I checked my website, but the cross-origin request is enabled.23:01
poke53282Another thing on my TODO list.23:02
poke53282But Ok, the file doesn't exists. The error message is simply wrong.23:03
ysangkoki think the error is shown because it doesn't serve the CORS headers when the file actually doesn't exist23:03
poke53282Click on sync, then try again.23:03
poke53282Yes23:03
ysangkoki think it's problematic because the worker is killed because of this error, which makes the emulator very slow... i don't even get 1 MIPS23:04
poke53282  Access-Control-Allow-Origin: *23:04
poke53282  Access-Control-Allow-Headers: origin, x-requested-with, content-type23:04
poke53282  Access-Control-Allow-Methods: PUT, GET, POST, DELETE, OPTIONS23:04
ysangkokor, i assume that's the reason23:04
poke53282I don't think that's possible, because that is the error you always get, when you start the website with a user id.23:05
poke53282Tried it. It works for me.23:07
poke53282Of course you have to sync the home folder first. Try http://s-macke.github.io/jor1k/?user=lqympTmXva23:07
poke53282there should be a file called abcd in the home folder23:07
ysangkokhmm i think the slowdown may occur just because the javascript console is open23:08
poke53282Ahh, yes. a lot of console message slow down Javascript.23:09
poke53282Try to avoid console messages.23:09
poke53282If it is just open, it shoudn't matter.23:09
poke53282the other tabs which are open can also slow down jor1k.23:11
ysangkokregarding the host→guest communication over ttyS1, i can't get that to work. i've got it running here, console.log'ing all what's received on the host. but when i execute 'jor1kgui.message.Send("tty1",[153])' it also triggers that handler: http://ysangkok.gotdns.ch/jor1k/23:24
ysangkokand i've disabled the shell on ttyS1, so it can't be the echo23:25
poke53282sorry, I don't understand.23:29
poke53282Ahh, I will take at the link23:30
poke53282sending via the echo command works. So far so good23:32
poke53282you mean, that you still see an echo?23:32
ysangkokyes23:33
ysangkokin index.html, on line 12 i have a tty1 handler23:33
ysangkokand i expected this handler NOT to be called when sending from the host23:33
ysangkokbut it seems that it is, anyway, even without the line in inittab23:33
poke53282how do you send data over the host?23:33
poke53282from the host I mean23:34
poke53282a button?23:34
ysangkoki write jor1kgui.message.Send("tty1",[153]) in the console23:35
poke53282Ok :)23:35
poke53282That's too easy23:35
poke53282Honestly I am not sure. Maybe we have to configure the tty correctly.23:41
ysangkokah but you get the same problem?23:41
poke53282well, tty0 seems to work, but tty1 doesn't get the data I send23:42
ysangkokhmm yes23:42
poke53282Or it is echoed, but never given as input to the device when I do a "cat /dev/ttyS1"23:42
ysangkoki used dd with bs=1 to prevent buffering... i also tried a c program which called termios functions on the serial port to configure it... no luck so far23:43
poke53282sorry, I forgot the buffering. It works.23:44
poke53282But indeed, an echo is still on.23:44
poke53282but the echo is changed. a [35, 10] returns a [35, 13, 10]23:45
poke53282with a carriage return.23:45
ysangkokhmm it must be in the guest somewhere i presume23:46
poke53282try "stty -F /dev/ttyS1 -echo"23:47
poke53282That should do it.23:47
ysangkokah thanks!23:49
poke53282believe me. I don't understand the uart that well. For me it is a unnecessary complicated beast.23:56
ysangkoki believe you :P23:56
poke53282A lot of modern transfer technologies hide their complexity in their chips.23:58
poke53282The UART is old and you had to do everything yourself.23:58

Generated by irclog2html.py 2.15.2 by Marius Gedminas - find it at mg.pov.lt!