Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • ModemManager ModemManager
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 216
    • Issues 216
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 17
    • Merge requests 17
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Mobile broadband connectivity
  • ModemManagerModemManager
  • Merge requests
  • !710

Merged
Created Dec 20, 2021 by Jakko@jakkoContributor

broadband-modem-qmi: Introduce udev flag for reduced facility lock query

  • Overview 5
  • Commits 1
  • Pipelines 2
  • Changes 1

On device samsung-serranove, querying the faclility lock state before unlocking the SIM results in a QMI protocol error and a powered off SIM. While ModemManager 1.16.6 first asks for SIM unlocking and thereafter queries the state of facility locks, ModemManager 1.18.2 does it the other way around. That way ModemManager doesn't run on samsungs-serranove. (Issue #448 (closed))

Therefore let's introduce an udev flag that allows skipping the critical part of the facility lock query. That's the "device locks" part. However, the "SIM locks" should still be done to get the status of the facility locks MM_MODEM_3GPP_FACILITY_SIM and MM_MODEM_3GPP_FACILITY_FIXED_DIALING. [1]

On the DMS path that means to skip the "get_ck_status" query but processing the "get_pin_status".

The udev flag is implemended for the DMS path only. For the specific use case the UIM path isn't neccessary.

On devices that have enabled "device locks", this flag won't work well. Skipping the query doesn't disable the locks.

I would have liked to add a general applicable udev rule that tags the modem ports of device samsung-serranove only. Unfortunately, I couldn't find a way to match the device within the modem port rule. Therefore, the udev rule has to be implemented on the device directly. Just for the record, the rule would look like e.g.: SUBSYSTEM=="wwan", ENV{ID_MM_QMI_FACILITY_LOCK_QUERY_REDUCED}="1"

[1] https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/blob/1.18.4/include/ModemManager-enums.h#L1231-1234

Fixes #448 (closed)

Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: modem_qmi_facility_locks_reduced