Lines Matching full:stm

15  * generic STM API by Chunyan Zhang
24 #include <linux/coresight-stm.h>
31 #include <linux/stm.h>
113 DEFINE_CORESIGHT_DEVLIST(stm_devs, "stm");
116 * struct stm_drvdata - specifics associated to an STM component
118 * @atclk: optional clock for the core parts of the STM.
122 * @chs: the channels accociated to this STM.
123 * @stm: structure associated to the generic STM interface.
125 * @write_bytes: Maximus bytes this STM can write at a time.
128 * @numsp: the total number of stimulus port support by this STM.
140 struct stm_data stm; member
190 0x01), /* global STM enable */ in stm_enable_hw()
216 dev_dbg(&csdev->dev, "STM tracing enabled\n"); in stm_enable()
248 val &= ~0x1; /* clear global STM enable [0] */ in stm_disable_hw()
280 dev_dbg(&csdev->dev, "STM tracing disabled\n"); in stm_disable()
333 struct stm_drvdata, stm); in stm_generic_link()
344 struct stm_drvdata, stm); in stm_generic_unlink()
356 struct stm_drvdata, stm); in stm_mmio_addr()
375 struct stm_drvdata, stm); in stm_generic_set_options()
408 struct stm_drvdata, stm); in stm_generic_packet()
434 * The generic STM core sets a size of '0' on flag packets. in stm_generic_packet()
661 if (strcmp("stm-stimulus-base", name)) { in of_stm_get_stimulus_area()
699 * The stimulus base for STM device must be listed as the second memory in acpi_stm_get_stimulus_area()
789 drvdata->stm.name = name; in stm_init_generic_data()
795 drvdata->stm.sw_start = 1; in stm_init_generic_data()
796 drvdata->stm.sw_end = 1; in stm_init_generic_data()
797 drvdata->stm.hw_override = true; in stm_init_generic_data()
798 drvdata->stm.sw_nchannels = drvdata->numsp; in stm_init_generic_data()
799 drvdata->stm.sw_mmiosz = BYTES_PER_CHANNEL; in stm_init_generic_data()
800 drvdata->stm.packet = stm_generic_packet; in stm_init_generic_data()
801 drvdata->stm.mmio_addr = stm_mmio_addr; in stm_init_generic_data()
802 drvdata->stm.link = stm_generic_link; in stm_init_generic_data()
803 drvdata->stm.unlink = stm_generic_unlink; in stm_init_generic_data()
804 drvdata->stm.set_options = stm_generic_set_options; in stm_init_generic_data()
814 return uci_data ? (char *)uci_data : "STM"; in stm_csdev_name()
879 if (stm_register_device(dev, &drvdata->stm, THIS_MODULE)) { in __stm_probe()
920 stm_unregister_device(&drvdata->stm); in __stm_probe()
942 stm_unregister_device(&drvdata->stm); in __stm_remove()
990 .name = "coresight-stm",
1031 {"ARMHC502", 0, 0, 0}, /* ARM CoreSight STM */
1041 .name = "coresight-stm-platform",
1050 return coresight_init_driver("stm", &stm_driver, &stm_platform_driver); in stm_init()