HplPXA27xDMAInfoC.nc · 2137 B · ext
.nc · seen 36× in SWHvia unique-primary
swh:1:cnt:27edccc8bdd6d670418e32819385abb44809c6e4;origin=https://github.com/jmattsson/tinyos-arduino;anchor=swh:1:rev:11e80511993c2aaaef79b5ffa1deb8700355262a;path=/tos/chips/pxa27x/dma/HplPXA27xDMAInfoC.nc
Show source
/*
* Copyright (c) 2005 Arch Rock Corporation
* All rights reserved.
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
* Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* Neither the name of the Arch Rock Corporation nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ARCHED
* ROCK OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
* USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
* DAMAGE.
*/
/**
*
*
* @author Kaisen Lin
* @author Phil Buonadonna
*/
// Example (STUART RX):
// peripheral = 19 (Request to Channel Map register in PXA Dev Manual)
// baseAddr = &STRBR (DMA address)
// Example (STUART TX):
// peripheral = 20
// baseAddr = &STTHR
generic module HplPXA27xDMAInfoC(uint8_t peripheral, uint32_t baseAddr) {
provides interface HplPXA27xDMAInfo;
}
implementation {
async command uint32_t HplPXA27xDMAInfo.getAddr() {
return baseAddr;
}
async command uint8_t HplPXA27xDMAInfo.getMapIndex() {
return peripheral;
}
}