| /* |
| * Copyright (C) 2017 C-SKY Microsystems Co., Ltd. All rights reserved. |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| /****************************************************************************** |
| * @file pinmux.h |
| * @brief Header file for the pinmux |
| * @version V1.0 |
| * @date 23. August 2017 |
| ******************************************************************************/ |
| #ifndef HOBBIT1_2_PINMUX_H |
| #define HOBBIT1_2_PINMUX_H |
| |
| #include <stdint.h> |
| #include "pin_name.h" |
| |
| void hobbit_ioreuse_initial(void); |
| int32_t pin_mux(pin_name_t pin, uint16_t function); |
| |
| /*IOMUX0L function definition */ |
| |
| |
| /* IOMUX0H function definition */ |
| |
| #define PA16_UART1_RX 0x00010000 |
| #define PA17_UART1_TX 0x00020000 |
| |
| |
| #define PA20_UART1_RX 0x00020000 |
| #define PA21_UART1_TX 0x00080000 |
| |
| //use for spi eth |
| #define PA3_SPI0MOSI 0x00000080 |
| #define PA2_SPI0MISO 0x00000020 |
| #define PA4_SPI0SCK 0x00000200 |
| #define PA5_SPI0SSN 0x00000800 |
| |
| #define PA23_SPI1MOSI 0x00800000 |
| #define PA22_SPI1MISO 0x00400000 |
| #define PA21_SPI1SCK 0x00200000 |
| #define PA18_SPI1SSN0 0x00040000 |
| |
| |
| |
| |
| /* IOMUX1L function definition */ |
| |
| /* flag as identification */ |
| #define GPIO_SET_BIT0 0x00000001 |
| #define GPIO_SET_BIT1 0x00000002 |
| #define GPIO_SET_BIT2 0x00000004 |
| #define GPIO_SET_BIT3 0x00000008 |
| #define GPIO_SET_BIT4 0x00000010 |
| #define GPIO_SET_BIT5 0x00000020 |
| #define GPIO_SET_BIT6 0x00000040 |
| #define GPIO_SET_BIT7 0x00000080 |
| #define GPIO_SET_BIT8 0x00000100 |
| #define GPIO_SET_BIT9 0x00000200 |
| #define GPIO_SET_BIT10 0x00000400 |
| #define GPIO_SET_BIT11 0x00000800 |
| #define GPIO_SET_BIT12 0x00001000 |
| #define GPIO_SET_BIT13 0x00002000 |
| #define GPIO_SET_BIT14 0x00004000 |
| #define GPIO_SET_BIT15 0x00008000 |
| #define GPIO_SET_BIT16 0x00010000 |
| #define GPIO_SET_BIT17 0x00020000 |
| #define GPIO_SET_BIT18 0x00040000 |
| #define GPIO_SET_BIT19 0x00080000 |
| #define GPIO_SET_BIT20 0x00100000 |
| #define GPIO_SET_BIT21 0x00200000 |
| #define GPIO_SET_BIT22 0x00400000 |
| #define GPIO_SET_BIT23 0x00800000 |
| #define GPIO_SET_BIT24 0x01000000 |
| #define GPIO_SET_BIT25 0x02000000 |
| #define GPIO_SET_BIT26 0x04000000 |
| #define GPIO_SET_BIT27 0x08000000 |
| #define GPIO_SET_BIT28 0x10000000 |
| #define GPIO_SET_BIT29 0x20000000 |
| #define GPIO_SET_BIT30 0x40000000 |
| #define GPIO_SET_BIT31 0x80000000 |
| |
| |
| |
| |
| /****************************************************************************** |
| * hobbit1_2 gpio control and gpio reuse function |
| * selecting regester adddress |
| ******************************************************************************/ |
| |
| #define HOBBIT1_2_GIPO0_PORTCTL_REG 0x50006008 |
| #define HOBBIT1_2_GIPO1_PORTCTL_REG 0x50009008 |
| #define HOBBIT1_2_IOMUX0L_REG 0x50006100 |
| #define HOBBIT1_2_IOMUX0H_REG 0x50006104 |
| #define HOBBIT1_2_IOMUX1L_REG 0x50006108 |
| |
| |
| /*************basic gpio reuse v1.0******************************************** |
| * UART1(PA16,PA17) for bootrom |
| * UART1(PA20,PA21) for console |
| ******************************************************************************/ |
| #define GPIO0_REUSE_EN (0x00000000) |
| #define GPIO0_REUSE_DIS (GPIO_SET_BIT16 | GPIO_SET_BIT17) |
| |
| #define GPIO1_REUSE_EN (0x00000000) |
| #define IOMUX0L_FUNCTION_SEL (0x00000000) |
| #define IOMUX0H_FUNCTION_SEL (0x00000000) |
| #define IOMUX1L_FUNCTION_SEL (0x00000000) |
| |
| #endif /* HOBBIT_PINMUX_H */ |
| |