gsmld_attach_gsm(9)
π gsmld_attach_gsm(9) β the girlies' guide to mode set up π
okay so bestie, welcome to another kernel API manual page β this one lives in the gsmld_attach_gsm(9) section, and it's literally about flipping the MUX into basic mode and kicking off the whole "hi modem π«Ά" handshake. it's short, it's sweet, it's giving under-construction energy. let's go. β¨
πΈ NAME πΈ
gsmld_attach_gsm β mode set up
like, that's the whole name. mode. set up. no notes. π
π¦ SYNOPSIS π¦
void gsmld_attach_gsm (struct tty_struct *tty , struct gsm_mux *gsm );
returns nothing (void, icon behaviour honestly), takes two args. that's it, that's the function. π
π ARGUMENTS π
ttyβ our tty structure. yes bestie, our tty. it's yours, it's mine, it's the line discipline's. π«Άgsmβ our mux. the multiplexer in question. main character of the operation. π
π DESCRIPTION π
so what does it actually do?? it sets up the MUX for basic mode and commences connecting to the modem. lowkey that's the entire vibe β basic mode, then go make friends with the modem. β¨
ngl there's a tiny little "we'll fix it later" note here and you do need to know it: this thing is currently called from the line discipline set up, but it will need moving to an ioctl path. so like, the current call site is not the forever home. it's giving "living with your parents until the lease is up." π
not me pointing out that this is a known future-refactor and not a bug you should go fix yourself at 3am. the manpage just says it needs moving, mmmkay. π
β SEE ALSO β
alright bestie, buckle up, because this list is long β it's the whole GSM family reunion and honestly every single one of them showed up. π
the kernel file in question is ./drivers/tty/n_gsm.c, and here's everybody:
gsm_fcs_add(9)gsm_fcs_add_block(9)gsm_read_ea(9)gsm_read_ea_val(9)gsm_encode_modem(9)gsm_encode_params(9)gsm_register_devices(9)gsm_unregister_devices(9)gsm_print_packet(9)gsm_stuff_frame(9)gsm_send(9)gsm_dlci_clear_queues(9)gsm_response(9)gsm_command(9)gsm_data_alloc(9)gsm_send_packet(9)gsm_is_flow_ctrl_msg(9)gsm_data_kick(9)__gsm_data_queue(9)gsm_data_queue(9)gsm_dlci_data_output(9)gsm_dlci_data_output_framed(9)gsm_dlci_modem_output(9)gsm_dlci_data_sweep(9)gsm_dlci_data_kick(9)gsm_control_command(9)gsm_control_reply(9)gsm_process_modem(9)gsm_process_negotiation(9)gsm_control_modem(9)gsm_control_negotiation(9)gsm_control_rls(9)gsm_control_message(9)gsm_control_response(9)gsm_control_keep_alive(9)gsm_control_transmit(9)gsm_control_retransmit(9)gsm_control_send(9)gsm_control_wait(9)gsm_dlci_close(9)gsm_dlci_open(9)gsm_dlci_negotiate(9)gsm_dlci_t1(9)gsm_dlci_begin_open(9)gsm_dlci_set_opening(9)gsm_dlci_set_wait_config(9)gsm_dlci_begin_close(9)gsm_dlci_data(9)gsm_dlci_command(9)gsm_kick_timer(9)gsm_dlci_copy_config_values(9)gsm_dlci_config(9)gsm_dlci_alloc(9)gsm_dlci_free(9)gsm_dlci_release(9)gsm_queue(9)gsm0_receive_state_check_and_fix(9)gsm0_receive(9)gsm1_receive_state_check_and_fix(9)gsm1_receive(9)gsm_error(9)gsm_cleanup_mux(9)gsm_activate_mux(9)gsm_free_mux(9)gsm_free_muxr(9)gsm_alloc_mux(9)gsmld_output(9)gsmld_write_trigger(9)gsmld_write_task(9)gsmld_detach_gsm(9)gsmld_flush_buffer(9)gsmld_close(9)gsmld_open(9)gsmld_write_wakeup(9)gsmld_read(9)gsmld_write(9)gsmld_poll(9)gsm_modem_upd_via_data(9)gsm_modem_upd_via_msc(9)gsm_modem_update(9)gsm_wait_modem_change(9)
yeah. eighty-one of them. i counted. iykyk. ππ₯
π§ sign-off π§
and that's the page bestie!! it came from ./drivers/tty, dated October 2026, and it's filed under gsmld_attach_gsm(9) in the Kernel API Manual. slay, go forth, attach that gsm. π
β¨πΈ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms