1 /* 2 * $Id: ports.h,v 1.4 2005/09/29 08:51:07 telka Exp $ 3 * 4 * H8S/2357 PORTS Registers 5 * Copyright (C) 2005 Elcom s.r.o. 6 * All rights reserved. 7 * 8 * Redistribution and use in source and binary forms, with or without 9 * modification, are permitted provided that the following conditions 10 * are met: 11 * 1. Redistributions of source code must retain the above copyright 12 * notice, this list of conditions and the following disclaimer. 13 * 2. Redistributions in binary form must reproduce the above copyright 14 * notice, this list of conditions and the following disclaimer in the 15 * documentation and/or other materials provided with the distribution. 16 * 3. Neither the name of the copyright holders nor the names of its contributors 17 * may be used to endorse or promote products derived from this software 18 * without specific prior written permission. 19 * 20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 21 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE 24 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 26 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 27 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 28 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 29 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 * 31 * Written by Branislav Petrovsky <brano111@szm.sk>, 2005. 32 * 33 * Documentation: 34 * [1] Renesas Technology Corp., "Hitachi 16-Bit Single-chip Microcomputer 35 * H8S/2357 Series, H8S/2357F-ZTAT, H8S/2398F-ZTAT Hardware Manual", 36 * Rev. 5.0, 11/22/02, Order Number: ADE-602-146D 37 * 38 */ 39 40 #ifndef H8S2357_PORTS_H 41 #define H8S2357_PORTS_H 42 43 #include <openwince.h> 44 45 #if LANGUAGE == C 46 #include <stdint.h> 47 #endif 48 49 /* PORTS registers */ 50 51 #define PORT_BASE 0xffffff50 52 #define DDR_BASE 0xfffffeb0 53 54 #if LANGUAGE == C 55 typedef volatile struct PORT_registers { 56 uint8_t port1; 57 uint8_t port2; 58 uint8_t port3; 59 uint8_t port4; 60 uint8_t port5; 61 uint8_t port6; 62 uint8_t __reserved1[3]; 63 uint8_t porta; 64 uint8_t portb; 65 uint8_t portc; 66 uint8_t portd; 67 uint8_t porte; 68 uint8_t portf; 69 uint8_t portg; 70 uint8_t p1dr; 71 uint8_t p2dr; 72 uint8_t p3dr; 73 uint8_t __reserved2; 74 uint8_t p5dr; 75 uint8_t p6dr; 76 uint8_t __reserved3[3]; 77 uint8_t padr; 78 uint8_t pbdr; 79 uint8_t pcdr; 80 uint8_t pddr; 81 uint8_t pedr; 82 uint8_t pfdr; 83 uint8_t pgdr; 84 uint8_t papcr; 85 uint8_t pbpcr; 86 uint8_t pcpcr; 87 uint8_t pdpcr; 88 uint8_t pepcr; 89 uint8_t __reserved4; 90 uint8_t p3odr; 91 uint8_t paodr; 92 } PORT_registers_t; 93 94 typedef volatile struct DDR_registers { 95 uint8_t p1ddr; 96 uint8_t p2ddr; 97 uint8_t p3ddr; 98 uint8_t __reserved1; 99 uint8_t p5ddr; 100 uint8_t p6ddr; 101 uint8_t __reserved2[3]; 102 uint8_t paddr; 103 uint8_t pbddr; 104 uint8_t pcddr; 105 uint8_t pdddr; 106 uint8_t peddr; 107 uint8_t pfddr; 108 uint8_t pgddr; 109 } DDR_registers_t; 110 111 112 #define PORT_pointer ((PORT_registers_t*) PORT_BASE) 113 #define DDR_pointer ((DDR_registers_t*) DDR_BASE) 114 115 #define PORT1 PORT_pointer->port1 116 #define PORT2 PORT_pointer->port2 117 #define PORT3 PORT_pointer->port3 118 #define PORT4 PORT_pointer->port4 119 #define PORT5 PORT_pointer->port5 120 #define PORT6 PORT_pointer->port6 121 #define ORTA PORT_pointer->orta 122 #define PORTB PORT_pointer->portb 123 #define PORTC PORT_pointer->portc 124 #define PORTD PORT_pointer->portd 125 #define PORTE PORT_pointer->porte 126 #define PORTF PORT_pointer->portf 127 #define PORTG PORT_pointer->portg 128 #define P1DR PORT_pointer->p1dr 129 #define P2DR PORT_pointer->p2dr 130 #define P3DR PORT_pointer->p3dr 131 #define P5DR PORT_pointer->p5dr 132 #define P6DR PORT_pointer->p6dr 133 #define PADR PORT_pointer->padr 134 #define PBDR PORT_pointer->pbdr 135 #define PCDR PORT_pointer->pcdr 136 #define PDDR PORT_pointer->pddr 137 #define PEDR PORT_pointer->pedr 138 #define PFDR PORT_pointer->pfdr 139 #define PGDR PORT_pointer->pgdr 140 #define PAPCR PORT_pointer->papcr 141 #define PBPCR PORT_pointer->pbpcr 142 #define PCPCR PORT_pointer->pcpcr 143 #define PDPCR PORT_pointer->pdpcr 144 #define PEPCR PORT_pointer->pepcr 145 #define P3ODR PORT_pointer->p3odr 146 #define PAODR PORT_pointer->paodr 147 148 #define P1DDR DDR_pointer->p1ddr 149 #define P2DDR DDR_pointer->p2ddr 150 #define P3DDR DDR_pointer->p3ddr 151 #define P5DDR DDR_pointer->p5ddr 152 #define P6DDR DDR_pointer->p6ddr 153 #define PADDR DDR_pointer->paddr 154 #define PBDDR DDR_pointer->pbddr 155 #define PCDDR DDR_pointer->pcddr 156 #define PDDDR DDR_pointer->pdddr 157 #define PEDDR DDR_pointer->peddr 158 #define PFDDR DDR_pointer->pfddr 159 #define PGDDR DDR_pointer->pgddr 160 #endif /* LANGUAGE == C */ 161 162 #define PORT1_OFFSET 0x00 163 #define PORT2_OFFSET 0x01 164 #define PORT3_OFFSET 0x02 165 #define PORT4_OFFSET 0x03 166 #define PORT5_OFFSET 0x04 167 #define PORT6_OFFSET 0x05 168 #define ORTA_OFFSET 0x09 169 #define PORTB_OFFSET 0x0a 170 #define PORTC_OFFSET 0x0b 171 #define PORTD_OFFSET 0x0c 172 #define PORTE_OFFSET 0x0d 173 #define PORTF_OFFSET 0x0e 174 #define PORTG_OFFSET 0x0f 175 #define P1DR_OFFSET 0x10 176 #define P2DR_OFFSET 0x11 177 #define P3DR_OFFSET 0x12 178 #define P5DR_OFFSET 0x14 179 #define P6DR_OFFSET 0x15 180 #define PADR_OFFSET 0x19 181 #define PBDR_OFFSET 0x1a 182 #define PCDR_OFFSET 0x1b 183 #define PDDR_OFFSET 0x1c 184 #define PEDR_OFFSET 0x1d 185 #define PFDR_OFFSET 0x1e 186 #define PGDR_OFFSET 0x1f 187 #define PAPCR_OFFSET 0x20 188 #define PBPCR_OFFSET 0x21 189 #define PCPCR_OFFSET 0x22 190 #define PDPCR_OFFSET 0x23 191 #define PEPCR_OFFSET 0x24 192 #define P3ODR_OFFSET 0x26 193 #define PAODR_OFFSET 0x27 194 195 #define P1DDR_OFFSET 0x00 196 #define P2DDR_OFFSET 0x01 197 #define P3DDR_OFFSET 0x02 198 #define P5DDR_OFFSET 0x04 199 #define P6DDR_OFFSET 0x05 200 #define PADDR_OFFSET 0x09 201 #define PBDDR_OFFSET 0x0a 202 #define PCDDR_OFFSET 0x0b 203 #define PDDDR_OFFSET 0x0c 204 #define PEDDR_OFFSET 0x0d 205 #define PFDDR_OFFSET 0x0e 206 #define PGDDR_OFFSET 0x0f 207 208 /* PORT1 bits */ 209 #define PORT1_P17 bit(7) 210 #define PORT1_P16 bit(6) 211 #define PORT1_P15 bit(5) 212 #define PORT1_P14 bit(4) 213 #define PORT1_P13 bit(3) 214 #define PORT1_P12 bit(2) 215 #define PORT1_P11 bit(1) 216 #define PORT1_P10 bit(0) 217 218 /* PORT2 bits */ 219 #define PORT2_P27 bit(7) 220 #define PORT2_P26 bit(6) 221 #define PORT2_P25 bit(5) 222 #define PORT2_P24 bit(4) 223 #define PORT2_P23 bit(3) 224 #define PORT2_P22 bit(2) 225 #define PORT2_P21 bit(1) 226 #define PORT2_P20 bit(0) 227 228 /* PORT3 bits */ 229 #define PORT3_P35 bit(5) 230 #define PORT3_P34 bit(4) 231 #define PORT3_P33 bit(3) 232 #define PORT3_P32 bit(2) 233 #define PORT3_P31 bit(1) 234 #define PORT3_P30 bit(0) 235 236 /* PORT4 bits */ 237 #define PORT4_P47 bit(7) 238 #define PORT4_P46 bit(6) 239 #define PORT4_P45 bit(5) 240 #define PORT4_P44 bit(4) 241 #define PORT4_P43 bit(3) 242 #define PORT4_P42 bit(2) 243 #define PORT4_P41 bit(1) 244 #define PORT4_P40 bit(0) 245 246 /* PORT5 bits */ 247 #define PORT5_P53 bit(3) 248 #define PORT5_P52 bit(2) 249 #define PORT5_P51 bit(1) 250 #define PORT5_P50 bit(0) 251 252 /* PORT6 bits */ 253 #define PORT6_P67 bit(7) 254 #define PORT6_P66 bit(6) 255 #define PORT6_P65 bit(5) 256 #define PORT6_P64 bit(4) 257 #define PORT6_P63 bit(3) 258 #define PORT6_P62 bit(2) 259 #define PORT6_P61 bit(1) 260 #define PORT6_P60 bit(0) 261 262 /* PORTA bits */ 263 #define PORTA_PA7 bit(7) 264 #define PORTA_PA6 bit(6) 265 #define PORTA_PA5 bit(5) 266 #define PORTA_PA4 bit(4) 267 #define PORTA_PA3 bit(3) 268 #define PORTA_PA2 bit(2) 269 #define PORTA_PA1 bit(1) 270 #define PORTA_PA0 bit(0) 271 272 /* PORTB bits */ 273 #define PORTB_PB7 bit(7) 274 #define PORTB_PB6 bit(6) 275 #define PORTB_PB5 bit(5) 276 #define PORTB_PB4 bit(4) 277 #define PORTB_PB3 bit(3) 278 #define PORTB_PB2 bit(2) 279 #define PORTB_PB1 bit(1) 280 #define PORTB_PB0 bit(0) 281 282 /* PORTC bits */ 283 #define PORTC_PC7 bit(7) 284 #define PORTC_PC6 bit(6) 285 #define PORTC_PC5 bit(5) 286 #define PORTC_PC4 bit(4) 287 #define PORTC_PC3 bit(3) 288 #define PORTC_PC2 bit(2) 289 #define PORTC_PC1 bit(1) 290 #define PORTC_PC0 bit(0) 291 292 /* PORTD bits */ 293 #define PORTD_PD7 bit(7) 294 #define PORTD_PD6 bit(6) 295 #define PORTD_PD5 bit(5) 296 #define PORTD_PD4 bit(4) 297 #define PORTD_PD3 bit(3) 298 #define PORTD_PD2 bit(2) 299 #define PORTD_PD1 bit(1) 300 #define PORTD_PD0 bit(0) 301 302 /* PORTE bits */ 303 #define PORTE_PE7 bit(7) 304 #define PORTE_PE6 bit(6) 305 #define PORTE_PE5 bit(5) 306 #define PORTE_PE4 bit(4) 307 #define PORTE_PE3 bit(3) 308 #define PORTE_PE2 bit(2) 309 #define PORTE_PE1 bit(1) 310 #define PORTE_PE0 bit(0) 311 312 /* PORTF bits */ 313 #define PORTF_PF7 bit(7) 314 #define PORTF_PF6 bit(6) 315 #define PORTF_PF5 bit(5) 316 #define PORTF_PF4 bit(4) 317 #define PORTF_PF3 bit(3) 318 #define PORTF_PF2 bit(2) 319 #define PORTF_PF1 bit(1) 320 #define PORTF_PF0 bit(0) 321 322 /* PORTG bits */ 323 #define PORTG_PG4 bit(4) 324 #define PORTG_PG3 bit(3) 325 #define PORTG_PG2 bit(2) 326 #define PORTG_PG1 bit(1) 327 #define PORTG_PG0 bit(0) 328 329 /* P1DR bits */ 330 #define P1DR_P17DR bit(7) 331 #define P1DR_P16DR bit(6) 332 #define P1DR_P15DR bit(5) 333 #define P1DR_P14DR bit(4) 334 #define P1DR_P13DR bit(3) 335 #define P1DR_P12DR bit(2) 336 #define P1DR_P11DR bit(1) 337 #define P1DR_P10DR bit(0) 338 339 /* P2DR bits */ 340 #define P2DR_P27DR bit(7) 341 #define P2DR_P26DR bit(6) 342 #define P2DR_P25DR bit(5) 343 #define P2DR_P24DR bit(4) 344 #define P2DR_P23DR bit(3) 345 #define P2DR_P22DR bit(2) 346 #define P2DR_P21DR bit(1) 347 #define P2DR_P20DR bit(0) 348 349 /* P3DR bits */ 350 #define P3DR_P35DR bit(5) 351 #define P3DR_P34DR bit(4) 352 #define P3DR_P33DR bit(3) 353 #define P3DR_P32DR bit(2) 354 #define P3DR_P31DR bit(1) 355 #define P3DR_P30DR bit(0) 356 357 /* P5DR bits */ 358 #define P5DR_P53DR bit(3) 359 #define P5DR_P52DR bit(2) 360 #define P5DR_P51DR bit(1) 361 #define P5DR_P50DR bit(0) 362 363 /* P6DR bits */ 364 #define P6DR_P67DR bit(7) 365 #define P6DR_P66DR bit(6) 366 #define P6DR_P65DR bit(5) 367 #define P6DR_P64DR bit(4) 368 #define P6DR_P63DR bit(3) 369 #define P6DR_P62DR bit(2) 370 #define P6DR_P61DR bit(1) 371 #define P6DR_P60DR bit(0) 372 373 /* PADR bits */ 374 #define PADR_PA7DR bit(7) 375 #define PADR_PA6DR bit(6) 376 #define PADR_PA5DR bit(5) 377 #define PADR_PA4DR bit(4) 378 #define PADR_PA3DR bit(3) 379 #define PADR_PA2DR bit(2) 380 #define PADR_PA1DR bit(1) 381 #define PADR_PA0DR bit(0) 382 383 /* PBDR bits */ 384 #define PBDR_PB7DR bit(7) 385 #define PBDR_PB6DR bit(6) 386 #define PBDR_PB5DR bit(5) 387 #define PBDR_PB4DR bit(4) 388 #define PBDR_PB3DR bit(3) 389 #define PBDR_PB2DR bit(2) 390 #define PBDR_PB1DR bit(1) 391 #define PBDR_PB0DR bit(0) 392 393 /* PCDR bits */ 394 #define PCDR_PC7DR bit(7) 395 #define PCDR_PC6DR bit(6) 396 #define PCDR_PC5DR bit(5) 397 #define PCDR_PC4DR bit(4) 398 #define PCDR_PC3DR bit(3) 399 #define PCDR_PC2DR bit(2) 400 #define PCDR_PC1DR bit(1) 401 #define PCDR_PC0DR bit(0) 402 403 /* PDDR bits */ 404 #define PDDR_PD7DR bit(7) 405 #define PDDR_PD6DR bit(6) 406 #define PDDR_PD5DR bit(5) 407 #define PDDR_PD4DR bit(4) 408 #define PDDR_PD3DR bit(3) 409 #define PDDR_PD2DR bit(2) 410 #define PDDR_PD1DR bit(1) 411 #define PDDR_PD0DR bit(0) 412 413 /* PEDR bits */ 414 #define PEDR_PE7DR bit(7) 415 #define PEDR_PE6DR bit(6) 416 #define PEDR_PE5DR bit(5) 417 #define PEDR_PE4DR bit(4) 418 #define PEDR_PE3DR bit(3) 419 #define PEDR_PE2DR bit(2) 420 #define PEDR_PE1DR bit(1) 421 #define PEDR_PE0DR bit(0) 422 423 /* PFDR bits */ 424 #define PFDR_PF7DR bit(7) 425 #define PFDR_PF6DR bit(6) 426 #define PFDR_PF5DR bit(5) 427 #define PFDR_PF4DR bit(4) 428 #define PFDR_PF3DR bit(3) 429 #define PFDR_PF2DR bit(2) 430 #define PFDR_PF1DR bit(1) 431 #define PFDR_PF0DR bit(0) 432 433 /* PGDR bits */ 434 #define PGDR_PG4DR bit(4) 435 #define PGDR_PG3DR bit(3) 436 #define PGDR_PG2DR bit(2) 437 #define PGDR_PG1DR bit(1) 438 #define PGDR_PG0DR bit(0) 439 440 /* PAPCR bits */ 441 #define PAPCR_PA7PCR bit(7) 442 #define PAPCR_PA6PCR bit(6) 443 #define PAPCR_PA5PCR bit(5) 444 #define PAPCR_PA4PCR bit(4) 445 #define PAPCR_PA3PCR bit(3) 446 #define PAPCR_PA2PCR bit(2) 447 #define PAPCR_PA1PCR bit(1) 448 #define PAPCR_PA0PCR bit(0) 449 450 /* PBPCR bits */ 451 #define PBPCR_PB7PCR bit(7) 452 #define PBPCR_PB6PCR bit(6) 453 #define PBPCR_PB5PCR bit(5) 454 #define PBPCR_PB4PCR bit(4) 455 #define PBPCR_PB3PCR bit(3) 456 #define PBPCR_PB2PCR bit(2) 457 #define PBPCR_PB1PCR bit(1) 458 #define PBPCR_PB0PCR bit(0) 459 460 /* PCPCR bits */ 461 #define PCPCR_PC7PCR bit(7) 462 #define PCPCR_PC6PCR bit(6) 463 #define PCPCR_PC5PCR bit(5) 464 #define PCPCR_PC4PCR bit(4) 465 #define PCPCR_PC3PCR bit(3) 466 #define PCPCR_PC2PCR bit(2) 467 #define PCPCR_PC1PCR bit(1) 468 #define PCPCR_PC0PCR bit(0) 469 470 /* PDPCR bits */ 471 #define PDPCR_PD7PCR bit(7) 472 #define PDPCR_PD6PCR bit(6) 473 #define PDPCR_PD5PCR bit(5) 474 #define PDPCR_PD4PCR bit(4) 475 #define PDPCR_PD3PCR bit(3) 476 #define PDPCR_PD2PCR bit(2) 477 #define PDPCR_PD1PCR bit(1) 478 #define PDPCR_PD0PCR bit(0) 479 480 /* PEPCR bits */ 481 #define PEPCR_PE7PCR bit(7) 482 #define PEPCR_PE6PCR bit(6) 483 #define PEPCR_PE5PCR bit(5) 484 #define PEPCR_PE4PCR bit(4) 485 #define PEPCR_PE3PCR bit(3) 486 #define PEPCR_PE2PCR bit(2) 487 #define PEPCR_PE1PCR bit(1) 488 #define PEPCR_PE0PCR bit(0) 489 490 /* P3ODR bits */ 491 #define P3ODR_P35ODR bit(5) 492 #define P3ODR_P34ODR bit(4) 493 #define P3ODR_P33ODR bit(3) 494 #define P3ODR_P32ODR bit(2) 495 #define P3ODR_P31ODR bit(1) 496 #define P3ODR_P30ODR bit(0) 497 498 /* PAODR bits */ 499 #define PAODR_PA7ODR bit(7) 500 #define PAODR_PA6ODR bit(6) 501 #define PAODR_PA5ODR bit(5) 502 #define PAODR_PA4ODR bit(4) 503 #define PAODR_PA3ODR bit(3) 504 #define PAODR_PA2ODR bit(2) 505 #define PAODR_PA1ODR bit(1) 506 #define PAODR_PA0ODR bit(0) 507 508 /* P1DDR bits */ 509 #define P1DDR_P17DDR bit(7) 510 #define P1DDR_P16DDR bit(6) 511 #define P1DDR_P15DDR bit(5) 512 #define P1DDR_P14DDR bit(4) 513 #define P1DDR_P13DDR bit(3) 514 #define P1DDR_P12DDR bit(2) 515 #define P1DDR_P11DDR bit(1) 516 #define P1DDR_P10DDR bit(0) 517 518 /* P2DDR bits */ 519 #define P2DDR_P27DDR bit(7) 520 #define P2DDR_P26DDR bit(6) 521 #define P2DDR_P25DDR bit(5) 522 #define P2DDR_P24DDR bit(4) 523 #define P2DDR_P23DDR bit(3) 524 #define P2DDR_P22DDR bit(2) 525 #define P2DDR_P21DDR bit(1) 526 #define P2DDR_P20DDR bit(0) 527 528 /* P3DDR bits */ 529 #define P3DDR_P35DDR bit(5) 530 #define P3DDR_P34DDR bit(4) 531 #define P3DDR_P33DDR bit(3) 532 #define P3DDR_P32DDR bit(2) 533 #define P3DDR_P31DDR bit(1) 534 #define P3DDR_P30DDR bit(0) 535 536 /* P5DDR bits */ 537 #define P5DDR_P53DDR bit(3) 538 #define P5DDR_P52DDR bit(2) 539 #define P5DDR_P51DDR bit(1) 540 #define P5DDR_P50DDR bit(0) 541 542 /* P6DDR bits */ 543 #define P6DDR_P67DDR bit(7) 544 #define P6DDR_P66DDR bit(6) 545 #define P6DDR_P65DDR bit(5) 546 #define P6DDR_P64DDR bit(4) 547 #define P6DDR_P63DDR bit(3) 548 #define P6DDR_P62DDR bit(2) 549 #define P6DDR_P61DDR bit(1) 550 #define P6DDR_P60DDR bit(0) 551 552 /* PADDR bits */ 553 #define PADDR_PA7DDR bit(7) 554 #define PADDR_PA6DDR bit(6) 555 #define PADDR_PA5DDR bit(5) 556 #define PADDR_PA4DDR bit(4) 557 #define PADDR_PA3DDR bit(3) 558 #define PADDR_PA2DDR bit(2) 559 #define PADDR_PA1DDR bit(1) 560 #define PADDR_PA0DDR bit(0) 561 562 /* PBDDR bits */ 563 #define PBDDR_PB7DDR bit(7) 564 #define PBDDR_PB6DDR bit(6) 565 #define PBDDR_PB5DDR bit(5) 566 #define PBDDR_PB4DDR bit(4) 567 #define PBDDR_PB3DDR bit(3) 568 #define PBDDR_PB2DDR bit(2) 569 #define PBDDR_PB1DDR bit(1) 570 #define PBDDR_PB0DDR bit(0) 571 572 /* PCDDR bits */ 573 #define PCDDR_PC7DDR bit(7) 574 #define PCDDR_PC6DDR bit(6) 575 #define PCDDR_PC5DDR bit(5) 576 #define PCDDR_PC4DDR bit(4) 577 #define PCDDR_PC3DDR bit(3) 578 #define PCDDR_PC2DDR bit(2) 579 #define PCDDR_PC1DDR bit(1) 580 #define PCDDR_PC0DDR bit(0) 581 582 /* PDDDR bits */ 583 #define PDDDR_PD7DDR bit(7) 584 #define PDDDR_PD6DDR bit(6) 585 #define PDDDR_PD5DDR bit(5) 586 #define PDDDR_PD4DDR bit(4) 587 #define PDDDR_PD3DDR bit(3) 588 #define PDDDR_PD2DDR bit(2) 589 #define PDDDR_PD1DDR bit(1) 590 #define PDDDR_PD0DDR bit(0) 591 592 /* PEDDR bits */ 593 #define PEDDR_PE7DDR bit(7) 594 #define PEDDR_PE6DDR bit(6) 595 #define PEDDR_PE5DDR bit(5) 596 #define PEDDR_PE4DDR bit(4) 597 #define PEDDR_PE3DDR bit(3) 598 #define PEDDR_PE2DDR bit(2) 599 #define PEDDR_PE1DDR bit(1) 600 #define PEDDR_PE0DDR bit(0) 601 602 /* PFDDR bits */ 603 #define PFDDR_PF7DDR bit(7) 604 #define PFDDR_PF6DDR bit(6) 605 #define PFDDR_PF5DDR bit(5) 606 #define PFDDR_PF4DDR bit(4) 607 #define PFDDR_PF3DDR bit(3) 608 #define PFDDR_PF2DDR bit(2) 609 #define PFDDR_PF1DDR bit(1) 610 #define PFDDR_PF0DDR bit(0) 611 612 /* PGDDR bits */ 613 #define PGDDR_PG4DDR bit(4) 614 #define PGDDR_PG3DDR bit(3) 615 #define PGDDR_PG2DDR bit(2) 616 #define PGDDR_PG1DDR bit(1) 617 #define PGDDR_PG0DDR bit(0) 618 619 #endif /* H8S2357_PORTS_H */ 620