MCP23S17 bias pull-up not working

Open
#6,763 15 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
42/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
c, linux

Research direction

Start by reproducing the issue with gpioget --bias=pull-up gpiochip2 0 on an MCP23S17 using dtoverlay=mcp23s17, then inspect the pinctrl-mcp23s08 driver’s pull-up handling. Compare the command result with the GPPUA register value; done means the pull-up is enabled and pin 0 reports the expected value.

Written by the indexing model from the issue text.

Description

Describe the bug

pinctrl-mcp23s08 driver unable to enable pull-up resister on MCP23S17(dtoverlay=mcp23s17)

Steps to reproduce the behaviour

using the following command to read pin 0 on gpiochip2 (MCP23S17 on SPI0.0)

gpioget --bias=pull-up gpiochip2 0
# got 0, expect 1
Device (s)

Raspberry Pi 4 Mod. B

System

Linux dev 6.12.20+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.12.20-1+rpt1~bpo12+1 (2025-03-19) aarch64 GNU/Linux

Logs

No response

Additional context

reading GPPUA directly from device return 0b00000000, which indicate that pull-up is not enabled

Dominant language
C
Stars
13.2k
Forks
5.5k
Avg merge
2d 21h
Merged PRs (30d)
21

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from raspberrypi/linux

All issues in raspberrypi/linux

Similar issues

More C issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.