Skip to content

Commit 3c3af4b

Browse files
committed
dt-bindings: pinctrl: sf32lb52: Add SA port pinmux definition
Add SA port pinmux definition Signed-off-by: Haoran Jiang <[email protected]>
1 parent f9c71aa commit 3c3af4b

File tree

2 files changed

+146
-0
lines changed

2 files changed

+146
-0
lines changed

include/zephyr/dt-bindings/pinctrl/sf32lb-common-pinctrl.h

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,4 +41,20 @@
4141
(((pad) << SF32LB_PAD_POS) & SF32LB_PAD_MSK) | \
4242
(((fsel) << SF32LB_FSEL_POS) & SF32LB_FSEL_MSK))
4343

44+
/**
45+
* @brief Analog mode pin configuration.
46+
*
47+
* Configures a pin for analog mode with FSEL=15, PE=0 (pull disabled),
48+
* and IE=0 (input disabled). Used for ADC inputs, power supply pins,
49+
* or other analog functions.
50+
*
51+
* @param port Port (SA, PA, ...)
52+
* @param pad Pad number
53+
*/
54+
55+
#define SF32LB_PINMUX_ANALOG(port, pad) \
56+
((((SF32LB_PORT_##port) << SF32LB_PORT_POS) & SF32LB_PORT_MSK) | \
57+
(((pad) << SF32LB_PAD_POS) & SF32LB_PAD_MSK) | \
58+
((15U << SF32LB_FSEL_POS) & SF32LB_FSEL_MSK))
59+
4460
#endif /* _INCLUDE_ZEPHYR_DT_BINDINGS_PINCTRL_SF32LB_COMMON_PINCTRL_H_ */

include/zephyr/dt-bindings/pinctrl/sf32lb52x-pinctrl.h

Lines changed: 130 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2496,4 +2496,134 @@
24962496
/* PA_TIM functions end */
24972497
#define PA44_WKUP_PIN20 SF32LB_PINMUX(PA, 44U, 8U, 0U, 0U)
24982498

2499+
/*
2500+
* PA port analog mode definitions
2501+
*/
2502+
#define PA00_ANALOG SF32LB_PINMUX_ANALOG(PA, 0U)
2503+
#define PA01_ANALOG SF32LB_PINMUX_ANALOG(PA, 1U)
2504+
#define PA02_ANALOG SF32LB_PINMUX_ANALOG(PA, 2U)
2505+
#define PA03_ANALOG SF32LB_PINMUX_ANALOG(PA, 3U)
2506+
#define PA04_ANALOG SF32LB_PINMUX_ANALOG(PA, 4U)
2507+
#define PA05_ANALOG SF32LB_PINMUX_ANALOG(PA, 5U)
2508+
#define PA06_ANALOG SF32LB_PINMUX_ANALOG(PA, 6U)
2509+
#define PA07_ANALOG SF32LB_PINMUX_ANALOG(PA, 7U)
2510+
#define PA08_ANALOG SF32LB_PINMUX_ANALOG(PA, 8U)
2511+
#define PA09_ANALOG SF32LB_PINMUX_ANALOG(PA, 9U)
2512+
#define PA10_ANALOG SF32LB_PINMUX_ANALOG(PA, 10U)
2513+
#define PA11_ANALOG SF32LB_PINMUX_ANALOG(PA, 11U)
2514+
#define PA12_ANALOG SF32LB_PINMUX_ANALOG(PA, 12U)
2515+
#define PA13_ANALOG SF32LB_PINMUX_ANALOG(PA, 13U)
2516+
#define PA14_ANALOG SF32LB_PINMUX_ANALOG(PA, 14U)
2517+
#define PA15_ANALOG SF32LB_PINMUX_ANALOG(PA, 15U)
2518+
#define PA16_ANALOG SF32LB_PINMUX_ANALOG(PA, 16U)
2519+
#define PA17_ANALOG SF32LB_PINMUX_ANALOG(PA, 17U)
2520+
#define PA18_ANALOG SF32LB_PINMUX_ANALOG(PA, 18U)
2521+
#define PA19_ANALOG SF32LB_PINMUX_ANALOG(PA, 19U)
2522+
#define PA20_ANALOG SF32LB_PINMUX_ANALOG(PA, 20U)
2523+
#define PA21_ANALOG SF32LB_PINMUX_ANALOG(PA, 21U)
2524+
#define PA22_ANALOG SF32LB_PINMUX_ANALOG(PA, 22U)
2525+
#define PA23_ANALOG SF32LB_PINMUX_ANALOG(PA, 23U)
2526+
#define PA24_ANALOG SF32LB_PINMUX_ANALOG(PA, 24U)
2527+
#define PA25_ANALOG SF32LB_PINMUX_ANALOG(PA, 25U)
2528+
#define PA26_ANALOG SF32LB_PINMUX_ANALOG(PA, 26U)
2529+
#define PA27_ANALOG SF32LB_PINMUX_ANALOG(PA, 27U)
2530+
#define PA28_ANALOG SF32LB_PINMUX_ANALOG(PA, 28U)
2531+
#define PA29_ANALOG SF32LB_PINMUX_ANALOG(PA, 29U)
2532+
#define PA30_ANALOG SF32LB_PINMUX_ANALOG(PA, 30U)
2533+
#define PA31_ANALOG SF32LB_PINMUX_ANALOG(PA, 31U)
2534+
#define PA32_ANALOG SF32LB_PINMUX_ANALOG(PA, 32U)
2535+
#define PA33_ANALOG SF32LB_PINMUX_ANALOG(PA, 33U)
2536+
#define PA34_ANALOG SF32LB_PINMUX_ANALOG(PA, 34U)
2537+
#define PA35_ANALOG SF32LB_PINMUX_ANALOG(PA, 35U)
2538+
#define PA36_ANALOG SF32LB_PINMUX_ANALOG(PA, 36U)
2539+
#define PA37_ANALOG SF32LB_PINMUX_ANALOG(PA, 37U)
2540+
#define PA38_ANALOG SF32LB_PINMUX_ANALOG(PA, 38U)
2541+
#define PA39_ANALOG SF32LB_PINMUX_ANALOG(PA, 39U)
2542+
#define PA40_ANALOG SF32LB_PINMUX_ANALOG(PA, 40U)
2543+
#define PA41_ANALOG SF32LB_PINMUX_ANALOG(PA, 41U)
2544+
#define PA42_ANALOG SF32LB_PINMUX_ANALOG(PA, 42U)
2545+
#define PA43_ANALOG SF32LB_PINMUX_ANALOG(PA, 43U)
2546+
#define PA44_ANALOG SF32LB_PINMUX_ANALOG(PA, 44U)
2547+
2548+
/*
2549+
* SA port pins (SAIO_D0 - SAIO_D12)
2550+
* These are dedicated pins for MPI1 (PSRAM/NOR Flash) interface
2551+
*/
2552+
2553+
/* SA00 (SAIO_D0) */
2554+
#define SA00_ANALOG SF32LB_PINMUX_ANALOG(SA, 0U)
2555+
#define SA00_MPI1_DM SF32LB_PINMUX(SA, 0U, 1U, 0U, 0U)
2556+
#define SA00_MPI1_DIO2 SF32LB_PINMUX(SA, 0U, 5U, 0U, 0U)
2557+
2558+
/* SA01 (SAIO_D1) */
2559+
#define SA01_ANALOG SF32LB_PINMUX_ANALOG(SA, 1U)
2560+
#define SA01_MPI1_DIO0 SF32LB_PINMUX(SA, 1U, 1U, 0U, 0U)
2561+
#define SA01_MPI1_CS SF32LB_PINMUX(SA, 1U, 5U, 0U, 0U)
2562+
2563+
/* SA02 (SAIO_D2) */
2564+
#define SA02_ANALOG SF32LB_PINMUX_ANALOG(SA, 2U)
2565+
#define SA02_MPI1_DIO1 SF32LB_PINMUX(SA, 2U, 1U, 0U, 0U)
2566+
#define SA02_MPI1_DIO1_ALT SF32LB_PINMUX(SA, 2U, 5U, 0U, 0U)
2567+
2568+
/* SA03 (SAIO_D3) */
2569+
#define SA03_ANALOG SF32LB_PINMUX_ANALOG(SA, 3U)
2570+
#define SA03_MPI1_DIO2 SF32LB_PINMUX(SA, 3U, 1U, 0U, 0U)
2571+
#define SA03_MPI1_DIO2_ALT SF32LB_PINMUX(SA, 3U, 5U, 0U, 0U)
2572+
2573+
/* SA04 (SAIO_D4) */
2574+
#define SA04_ANALOG SF32LB_PINMUX_ANALOG(SA, 4U)
2575+
#define SA04_MPI1_DIO3 SF32LB_PINMUX(SA, 4U, 1U, 0U, 0U)
2576+
#define SA04_MPI1_CS SF32LB_PINMUX(SA, 4U, 5U, 0U, 0U)
2577+
2578+
/* SA05 (SAIO_D5) */
2579+
#define SA05_ANALOG SF32LB_PINMUX_ANALOG(SA, 5U)
2580+
#define SA05_MPI1_CS SF32LB_PINMUX(SA, 5U, 1U, 0U, 0U)
2581+
#define SA05_MPI1_DIO4 SF32LB_PINMUX(SA, 5U, 3U, 0U, 0U)
2582+
#define SA05_MPI1_DIO0 SF32LB_PINMUX(SA, 5U, 4U, 0U, 0U)
2583+
2584+
/* SA06 (SAIO_D6) */
2585+
#define SA06_ANALOG SF32LB_PINMUX_ANALOG(SA, 6U)
2586+
#define SA06_MPI1_CLKB SF32LB_PINMUX(SA, 6U, 1U, 0U, 0U)
2587+
#define SA06_MPI1_DIO5 SF32LB_PINMUX(SA, 6U, 3U, 0U, 0U)
2588+
#define SA06_MPI1_DIO2 SF32LB_PINMUX(SA, 6U, 4U, 0U, 0U)
2589+
2590+
/* SA07 (SAIO_D7) */
2591+
#define SA07_ANALOG SF32LB_PINMUX_ANALOG(SA, 7U)
2592+
#define SA07_MPI1_CLK SF32LB_PINMUX(SA, 7U, 1U, 0U, 0U)
2593+
#define SA07_MPI1_DIO6 SF32LB_PINMUX(SA, 7U, 3U, 0U, 0U)
2594+
#define SA07_MPI1_DIO1 SF32LB_PINMUX(SA, 7U, 4U, 0U, 0U)
2595+
#define SA07_MPI1_DIO0 SF32LB_PINMUX(SA, 7U, 5U, 0U, 0U)
2596+
2597+
/* SA08 (SAIO_D8) */
2598+
#define SA08_ANALOG SF32LB_PINMUX_ANALOG(SA, 8U)
2599+
#define SA08_MPI1_DIO4 SF32LB_PINMUX(SA, 8U, 1U, 0U, 0U)
2600+
#define SA08_MPI1_DIO7 SF32LB_PINMUX(SA, 8U, 3U, 0U, 0U)
2601+
#define SA08_MPI1_CS SF32LB_PINMUX(SA, 8U, 4U, 0U, 0U)
2602+
#define SA08_MPI1_DIO3 SF32LB_PINMUX(SA, 8U, 5U, 0U, 0U)
2603+
2604+
/* SA09 (SAIO_D9) */
2605+
#define SA09_ANALOG SF32LB_PINMUX_ANALOG(SA, 9U)
2606+
#define SA09_MPI1_DIO5 SF32LB_PINMUX(SA, 9U, 1U, 0U, 0U)
2607+
#define SA09_MPI1_DQSDM SF32LB_PINMUX(SA, 9U, 3U, 0U, 0U)
2608+
#define SA09_MPI1_CLK SF32LB_PINMUX(SA, 9U, 4U, 0U, 0U)
2609+
#define SA09_MPI1_CLK_ALT SF32LB_PINMUX(SA, 9U, 5U, 0U, 0U)
2610+
2611+
/* SA10 (SAIO_D10) */
2612+
#define SA10_ANALOG SF32LB_PINMUX_ANALOG(SA, 10U)
2613+
#define SA10_MPI1_DIO6 SF32LB_PINMUX(SA, 10U, 1U, 0U, 0U)
2614+
#define SA10_MPI1_CLK SF32LB_PINMUX(SA, 10U, 3U, 0U, 0U)
2615+
#define SA10_MPI1_DIO3 SF32LB_PINMUX(SA, 10U, 4U, 0U, 0U)
2616+
#define SA10_MPI1_DIO3_ALT SF32LB_PINMUX(SA, 10U, 5U, 0U, 0U)
2617+
2618+
/* SA11 (SAIO_D11) */
2619+
#define SA11_ANALOG SF32LB_PINMUX_ANALOG(SA, 11U)
2620+
#define SA11_MPI1_DIO7 SF32LB_PINMUX(SA, 11U, 1U, 0U, 0U)
2621+
#define SA11_MPI1_CS SF32LB_PINMUX(SA, 11U, 3U, 0U, 0U)
2622+
#define SA11_MPI1_DIO0 SF32LB_PINMUX(SA, 11U, 5U, 0U, 0U)
2623+
2624+
/* SA12 (SAIO_D12) */
2625+
#define SA12_ANALOG SF32LB_PINMUX_ANALOG(SA, 12U)
2626+
#define SA12_MPI1_DQS SF32LB_PINMUX(SA, 12U, 1U, 0U, 0U)
2627+
#define SA12_MPI1_DQSDM SF32LB_PINMUX(SA, 12U, 2U, 0U, 0U)
2628+
24992629
#endif /* _INCLUDE_ZEPHYR_DT_BINDINGS_PINCTRL_SF32LB52X_PINCTRL_H_ */

0 commit comments

Comments
 (0)