ti_sci_cmd_i...ce_exclusive(9)
π NAME π
ti_sci_cmd_idle_device_exclusive β the command that idles a device managed by TISCI that is exclusively owned by the host doing the asking π (yes, owned-owned, like it's got your name on it)
okay bestie, quick vibe check first: this page lives in the Kernel API Manual, and honestly, it's giving "small function, big responsibility" energy. let's get into it π¦
β¨ SYNOPSIS β¨
int ti_sci_cmd_idle_device_exclusive (const struct ti_sci_handle *handle
, u32 id );
like, that's the whole call. two arguments. no surprises. slay π
πΈ ARGUMENTS πΈ
handleβ pointer to the TISCI handle, as retrieved by*ti_sci_get_handle. it's your little all-access pass to the firmware, you literally cannot do this without it π«Άidβ the Device Identifier. which device? this number. that's it. that's the whole vibe.
π₯ DESCRIPTION π₯
so the call is a request for the device β and here comes the part where you actually read the note, bestie, because it's in ALL CAPS for a reason π
NOTE: the client MUST maintain integrity of the usage count by balancingget_devicewithput_device. No refcounting is managed by the driver for that purpose.
translating from manpage-ese: the driver is not gonna hold your hand and babysit a reference count for you. you get, you put. you balance them. if you don't, that's on you, and the universe will know π no cap.
π RETURN π
0β if all went fine β¨ (the good ending)- else β it returns the appropriate error π (so like, check it, don't just assume)
π¦ SEE ALSO π¦
the friend group π β first up, the kernel file this all hangs out in: ./drivers/firmware/ti_sci.c
then the whole crew:
struct ti_sci_xfer(9)struct ti_sci_xfers_info(9)struct ti_sci_desc(9)struct ti_sci_irq(9)struct ti_sci_info(9)ti_sci_debug_show(9)ti_sci_debugfs_create(9)ti_sci_dump_header_dbg(9)ti_sci_rx_callback(9)ti_sci_get_one_xfer(9)ti_sci_put_one_xfer(9)ti_sci_do_xfer(9)ti_sci_cmd_get_revision(9)ti_sci_is_response_ack(9)ti_sci_set_device_state(9)ti_sci_get_device_state(9)ti_sci_cmd_get_device(9)ti_sci_cmd_get_device_exclusive(9)ti_sci_cmd_idle_device(9)ti_sci_cmd_put_device(9)ti_sci_cmd_dev_is_valid(9)ti_sci_cmd_dev_get_clcnt(9)ti_sci_cmd_dev_is_idle(9)ti_sci_cmd_dev_is_stop(9)ti_sci_cmd_dev_is_on(9)ti_sci_cmd_dev_is_trans(9)ti_sci_cmd_set_device_resets(9)ti_sci_cmd_get_device_resets(9)ti_sci_set_clock_state(9)ti_sci_cmd_get_clock_state(9)ti_sci_cmd_get_clock(9)ti_sci_cmd_idle_clock(9)ti_sci_cmd_put_clock(9)ti_sci_cmd_clk_is_auto(9)ti_sci_cmd_clk_is_on(9)ti_sci_cmd_clk_is_off(9)ti_sci_cmd_clk_set_parent(9)ti_sci_cmd_clk_get_parent(9)ti_sci_cmd_clk_get_num_parents(9)ti_sci_cmd_clk_get_match_freq(9)ti_sci_cmd_clk_set_freq(9)ti_sci_cmd_clk_get_freq(9)ti_sci_cmd_prepare_sleep(9)ti_sci_msg_cmd_query_fw_caps(9)ti_sci_cmd_set_io_isolation(9)ti_sci_msg_cmd_lpm_wake_reason(9)ti_sci_cmd_set_device_constraint(9)ti_sci_cmd_set_latency_constraint(9)ti_sci_cmd_lpm_abort(9)ti_sci_get_resource_range(9)ti_sci_cmd_get_resource_range(9)ti_sci_cmd_get_resource_range_from_shost(9)ti_sci_manage_irq(9)ti_sci_irq_hash(9)ti_sci_irq_equal(9)ti_sci_set_irq(9)ti_sci_free_irq(9)ti_sci_cmd_set_irq(9)ti_sci_cmd_set_event_map(9)ti_sci_cmd_free_irq(9)ti_sci_cmd_free_event_map(9)ti_sci_cmd_rm_ring_cfg(9)ti_sci_cmd_rm_psil_pair(9)ti_sci_cmd_rm_psil_unpair(9)ti_sci_cmd_rm_udmap_tx_ch_cfg(9)ti_sci_cmd_rm_udmap_rx_ch_cfg(9)ti_sci_cmd_rm_udmap_rx_flow_cfg(9)ti_sci_cmd_proc_request(9)ti_sci_cmd_proc_release(9)ti_sci_cmd_proc_handover(9)ti_sci_cmd_proc_set_config(9)ti_sci_cmd_proc_set_control(9)ti_sci_cmd_proc_get_status(9)ti_sci_get_handle(9)ti_sci_put_handle(9)devm_ti_sci_get_handle(9)ti_sci_get_by_phandle(9)devm_ti_sci_get_by_phandle(9)ti_sci_get_free_resource(9)ti_sci_release_resource(9)ti_sci_get_num_resources(9)devm_ti_sci_get_resource_sets(9)devm_ti_sci_get_of_resource(9)devm_ti_sci_get_resource(9)
and that's the whole page, bestie β no crumbs left behind π
tiny sign-off: this lil legend comes from./drivers/firmware, dated October 2026, and it answers to the nameti_sci_cmd_i...ce_exclusive(9). iconic, honestly πβ¨
π¦ 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