* no scc_hdlc struct in commproc.h
@ 2000-09-12 20:11 Julia Elbert
2000-09-13 2:21 ` Dan Malek
2000-09-13 9:21 ` Tobias Otto-Adamczak
0 siblings, 2 replies; 4+ messages in thread
From: Julia Elbert @ 2000-09-12 20:11 UTC (permalink / raw)
To: linuxppc-embedded
Hello,
I did not find a scc_hdlc structure like scc_enet and scc_uart in
commproc.h. Do I just need to make one similar to scc_enet and modify it
according to p.24-4 in the 860 book? This is the scc parameter ram memory
map versus scc ethernet parameter ram memmory map.
Thank you in advance.
--Julia
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: no scc_hdlc struct in commproc.h
2000-09-12 20:11 no scc_hdlc struct in commproc.h Julia Elbert
@ 2000-09-13 2:21 ` Dan Malek
2000-09-13 9:21 ` Tobias Otto-Adamczak
1 sibling, 0 replies; 4+ messages in thread
From: Dan Malek @ 2000-09-13 2:21 UTC (permalink / raw)
To: Julia Elbert; +Cc: linuxppc-embedded
Julia Elbert wrote:
> I did not find a scc_hdlc structure like scc_enet and scc_uart in
> commproc.h.
I don't think anyone has submitted any source patches to provide it.
There has been some discussion in the past......
> .... Do I just need to make one similar to scc_enet and modify it
> according to p.24-4 in the 860 book?
That would be great. If you would like to submit it as a patch someday,
that would be even greater :-). What are you connecting at each end
of the port? NMSI, TDM, custom software?
Another part of your project will be writing a driver. In the past,
the accepted suggestion was to not modify the uart driver, as that
is a _uart_ driver, not an SCC driver. You can use that as a model
to create, say, hdlc.c......Then just ensure you don't try to configure
the SCC in both places (and there may need to be a little knowledge
about each one in every driver).
> Thank you in advance.
Have fun!
-- Dan
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: no scc_hdlc struct in commproc.h
2000-09-12 20:11 no scc_hdlc struct in commproc.h Julia Elbert
2000-09-13 2:21 ` Dan Malek
@ 2000-09-13 9:21 ` Tobias Otto-Adamczak
2000-09-13 16:26 ` Dan Malek
1 sibling, 1 reply; 4+ messages in thread
From: Tobias Otto-Adamczak @ 2000-09-13 9:21 UTC (permalink / raw)
To: Julia Elbert; +Cc: linuxppc-embedded
Hello Julia,
> I did not find a scc_hdlc structure like scc_enet and scc_uart in
> commproc.h.
I wrote the following one for my project (which is about adding ISDN
functionality for MPC860):
/********* SCC parameter RAM for HDLC mode *********/
typedef struct scc_hdlc {
ushort scc_rbase; // Rx Buffer descriptor base address
ushort scc_tbase; // Tx Buffer descriptor base address
u_char scc_rfcr; // Rx function code
u_char scc_tfcr; // Tx function code
ushort scc_mrblr; // Max receive buffer length
uint scc_rstate; // internal
uint scc_idp; // internal
ushort scc_rbptr; // internal
ushort scc_ibc; // internal
uint scc_rxtmp; // internal
uint scc_tstate; // internal
uint scc_tdp; // internal
ushort scc_tbptr; // internal
ushort scc_tbc; // internal
uint scc_txtmp; // internal
uint scc_rcrc; // internal
uint scc_tcrc; // internal
// here begins HDLC specific part
uint scc_res1; // reserved
uint scc_cmask; // CRC mask
uint scc_cpres; // CRC preset
ushort scc_disfc; // discarded frame counter
ushort scc_crcec; // CRC error counter
ushort scc_abtsc; // abort sequence counter
ushort scc_nmarc; // nonmatching address receive counter
ushort scc_retrc; // frame retransmission counter
ushort scc_mflr; // Max frame length register
ushort scc_maxcnt; // internal
ushort scc_rfthr; // recceived frames threshold
ushort scc_rfcnt; // internal
ushort scc_hmask; // HDLC address mask register
ushort scc_haddr1; // HDLC address register 1
ushort scc_haddr2; // HDLC address register 2
ushort scc_haddr3; // HDLC address register 3
ushort scc_haddr4; // HDLC address register 4
ushort scc_tmp; // internal
ushort scc_tmp_mb; // internal
} scc_hdlc_t;
Ciao - Tobias
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: no scc_hdlc struct in commproc.h
2000-09-13 9:21 ` Tobias Otto-Adamczak
@ 2000-09-13 16:26 ` Dan Malek
0 siblings, 0 replies; 4+ messages in thread
From: Dan Malek @ 2000-09-13 16:26 UTC (permalink / raw)
To: Tobias Otto-Adamczak; +Cc: Julia Elbert, linuxppc-embedded
Tobias Otto-Adamczak wrote:
> /********* SCC parameter RAM for HDLC mode *********/
Just a couple of minor comments......
> typedef struct scc_hdlc {
> ushort scc_rbase; // Rx Buffer descriptor base address
> ushort scc_tbase; // Tx Buffer descriptor base address
> u_char scc_rfcr; // Rx function code
> u_char scc_tfcr; // Tx function code
> ushort scc_mrblr; // Max receive buffer length
> uint scc_rstate; // internal
> uint scc_idp; // internal
> ushort scc_rbptr; // internal
> ushort scc_ibc; // internal
> uint scc_rxtmp; // internal
> uint scc_tstate; // internal
> uint scc_tdp; // internal
> ushort scc_tbptr; // internal
> ushort scc_tbc; // internal
> uint scc_txtmp; // internal
> uint scc_rcrc; // internal
> uint scc_tcrc; // internal
This first part of the object is defined by 'scc_param', so the
convention would have been:
typedef struct scc_hdlc {
sccp_t scc_hdlc;
Followed by:
> // here begins HDLC specific part
> uint scc_res1; // reserved
The documentation describes the CPM devices in this way, and it is
a little more clear what is common to the SCC, and what is unique
to the HDLC feature.
....since we aren't writing C++, I also dislike the '//' comment......
I would have made these two changes if it was sent as a patch to
me for inclusion in the source code.....
In fact, I will keep this and include it in the future....Do you have
any code you want to submit along with it?
-- Dan
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2000-09-13 16:26 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2000-09-12 20:11 no scc_hdlc struct in commproc.h Julia Elbert
2000-09-13 2:21 ` Dan Malek
2000-09-13 9:21 ` Tobias Otto-Adamczak
2000-09-13 16:26 ` Dan Malek
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).