Julien
I am using UART1 (and 2 and 4) on BBB with Camkes.
I think you need to set the pin mux on the board. Linux does this with
something called device tree overlays
(
).
Sel4 and Camkes don't provide away to set the mux for the pins (that I
am aware of), So you have do it before booting the kernel.
I haven't found a particularly clean way to do this yet. Currently I am
just using UBoot to set the pin muxes.
Before booting your kernel, at the UBoot command line try these two lines:
mw.l 0x44E10980 0x30
mw.l 0x44E10984 0x00
This should correctly turn on the UART 1 Rx and Tx lines.
Also. I you want to turn on the fifos, the reference manual seems to
gloss over part of how to do that. Here is my code to
// config to fifo with interrupt but no DMA
*UART_REG(LCR) = 0xBF;
*UART_REG(EFR) = 0x10;
*UART_REG(LCR) = 0x80;
*UART_REG(SCR) = 0x01;
*UART_REG(MCR) = 0x40;
*UART_REG(TLR) = 0x11;
*UART_REG(MCR) = 0x00;
*UART_REG(FCR) = 0x07;
Jeffrey L. Hieb
Department of Engineering Fundamentals
University of Louisville
Louisville Kentucky 40292
(502) 852 0465
On 6/10/2016 3:05 PM, Julien Delange wrote:
Yep, I did this. The code boots correctly and the
device is
recognized. The serial is still not working, I assume this is a matter
of code right now.
Thanks!
Julien,
On Fri, Jun 10, 2016 at 2:57 PM, Tim Newsham <tim.newsham(a)gmail.com
<mailto:tim.newsham@gmail.com>> wrote:
I think you need to add a line in
kernel/src/plat/am335x/machine/hardware.c
for this.
On Fri, Jun 10, 2016 at 8:37 AM, Julien Delange
<julien.delange(a)gmail.com <mailto:julien.delange@gmail.com>> wrote:
I am using the second serial interface of the beaglebone
black. According to the source code (in
libsel4platsupport/plat_include/am335x/sel4platsupport/plat/hw/soc_AM335x.h),
the address is 0x48022000). The following line is found in the
source
#define SOC_UART_1_REGS (0x48022000)
So, in CAmkES, I configure the hardware component that
represents the serial hardware component with the following
attributes:
drv.mem_attributes = "0x48022000:0x1000";
The application compiles fine. However, when launching the
image on the target, I have the following issue. Any idea
about how to solve this? Does anybody successfully used UART1
on the beaglebone black? Or have any idea/suggestion to
investigate?
Thanks.
Julien.
Creating object conn1_frame__timer_0 in slot 728, from untyped
29b...
device frame, paddr = 0x48040000, size = 12 bits
Creating object conn2_frame__Cons_PingMe_0 in slot 729, from
untyped 29b...
device frame, paddr = 0x48022000, size = 12 bits
capDL-loader :: << Error: Failed to find device frame at paddr
= 0x48022000
>
Ignoring call to
sys_rt_sigprocmask
Ignoring call to sys_gettid
sys_tkill assuming self kill
_______________________________________________
Devel mailing list
Devel(a)sel4.systems
https://sel4.systems/lists/listinfo/devel
<https://urldefense.proofpoint.com/v2/url?u=https-3A__sel4.systems_lists_listinfo_devel&d=AwMFaQ&c=SgMrq23dbjbGX6e0ZsSHgEZX6A4IAf1SO3AJ2bNrHlk&r=vxDfYJYhOaaufTHzA3yxVVn--9Yf3Ig5TrUiTFGL8pc&m=MGwV9yE3Lj-QU0UntmkIzrms26F8fDzA5Qzvk9IrTS0&s=DaDr7rfeonVlo85YWw34Fz637peI234w5Pt-qM3RfrY&e=>
--
Tim Newsham |
www.thenewsh.com/~newsham
<https://urldefense.proofpoint.com/v2/url?u=http-3A__www.thenewsh.com_-7Enewsham&d=AwMFaQ&c=SgMrq23dbjbGX6e0ZsSHgEZX6A4IAf1SO3AJ2bNrHlk&r=vxDfYJYhOaaufTHzA3yxVVn--9Yf3Ig5TrUiTFGL8pc&m=MGwV9yE3Lj-QU0UntmkIzrms26F8fDzA5Qzvk9IrTS0&s=Cjc7dPZwf0158fR2amZ2xCr_dDFoLAcPjjHnVtmNCZk&e=>
| @newshtwit |
thenewsh.blogspot.com
<https://urldefense.proofpoint.com/v2/url?u=http-3A__thenewsh.blogspot.com&d=AwMFaQ&c=SgMrq23dbjbGX6e0ZsSHgEZX6A4IAf1SO3AJ2bNrHlk&r=vxDfYJYhOaaufTHzA3yxVVn--9Yf3Ig5TrUiTFGL8pc&m=MGwV9yE3Lj-QU0UntmkIzrms26F8fDzA5Qzvk9IrTS0&s=DIUb0PJN4Ew4zS3H66GvnNKjVk9AjcRLJtgvpcF_vm8&e=>
_______________________________________________
Devel mailing list
Devel(a)sel4.systems
https://urldefense.proofpoint.com/v2/url?u=https-3A__sel4.systems_lists_lis…