struct snd_bebob_clock_spec {
        unsigned int num;
        const char *const *labels;
-       enum snd_bebob_clock_type *types;
+       const enum snd_bebob_clock_type *types;
        int (*get)(struct snd_bebob *bebob, unsigned int *id);
 };
 struct snd_bebob_rate_spec {
 
                                  &data, sizeof(__be32), 0);
 }
 
-static enum snd_bebob_clock_type saffirepro_10_clk_src_types[] = {
+static const enum snd_bebob_clock_type saffirepro_10_clk_src_types[] = {
        SND_BEBOB_CLOCK_TYPE_INTERNAL,
        SND_BEBOB_CLOCK_TYPE_EXTERNAL,  /* S/PDIF */
        SND_BEBOB_CLOCK_TYPE_EXTERNAL,  /* Word Clock */
 };
-static enum snd_bebob_clock_type saffirepro_26_clk_src_types[] = {
+static const enum snd_bebob_clock_type saffirepro_26_clk_src_types[] = {
        SND_BEBOB_CLOCK_TYPE_INTERNAL,
        SND_BEBOB_CLOCK_TYPE_EXTERNAL,  /* S/PDIF */
        SND_BEBOB_CLOCK_TYPE_EXTERNAL,  /* ADAT1 */
 }
 
 const struct snd_bebob_spec saffire_le_spec;
-static enum snd_bebob_clock_type saffire_both_clk_src_types[] = {
+static const enum snd_bebob_clock_type saffire_both_clk_src_types[] = {
        SND_BEBOB_CLOCK_TYPE_INTERNAL,
        SND_BEBOB_CLOCK_TYPE_EXTERNAL,
 };
 
 }
 
 /* Clock source control for special firmware */
-static enum snd_bebob_clock_type special_clk_types[] = {
+static const enum snd_bebob_clock_type special_clk_types[] = {
        SND_BEBOB_CLOCK_TYPE_INTERNAL,  /* With digital mute */
        SND_BEBOB_CLOCK_TYPE_EXTERNAL,  /* SPDIF/ADAT */
        SND_BEBOB_CLOCK_TYPE_EXTERNAL,  /* Word Clock */
 
 
 #include "./bebob.h"
 
-static enum snd_bebob_clock_type phase88_rack_clk_src_types[] = {
+static const enum snd_bebob_clock_type phase88_rack_clk_src_types[] = {
        SND_BEBOB_CLOCK_TYPE_INTERNAL,
        SND_BEBOB_CLOCK_TYPE_EXTERNAL,  /* S/PDIF */
        SND_BEBOB_CLOCK_TYPE_EXTERNAL,  /* Word Clock */
 
  * Yamaha GO 44 and GO 46. Yamaha and Terratec had cooperated for these models.
  */
 
-static enum snd_bebob_clock_type clk_src_types[] = {
+static const enum snd_bebob_clock_type clk_src_types[] = {
        SND_BEBOB_CLOCK_TYPE_INTERNAL,
        SND_BEBOB_CLOCK_TYPE_EXTERNAL,  /* S/PDIF */
 };
 
  */
 static bool force_two_pcm_support(struct fw_unit *unit)
 {
-       const char *const models[] = {
+       static const char *const models[] = {
                /* TC Electronic models. */
                "StudioKonnekt48",
                /* Focusrite models. */
 
        snd_iprintf(buffer, "Sync to clock source: %s\n", src);
 }
 
-struct snd_ff_protocol snd_ff_protocol_ff400 = {
+const struct snd_ff_protocol snd_ff_protocol_ff400 = {
        .get_clock              = ff400_get_clock,
        .begin_session          = ff400_begin_session,
        .finish_session         = ff400_finish_session,
 
        }
 }
 
-static struct snd_ff_spec spec_ff400 = {
+static const struct snd_ff_spec spec_ff400 = {
        .name = "Fireface400",
        .pcm_capture_channels = {18, 14, 10},
        .pcm_playback_channels = {18, 14, 10},
 
        unsigned int midi_in_ports;
        unsigned int midi_out_ports;
 
-       struct snd_ff_protocol *protocol;
+       const struct snd_ff_protocol *protocol;
 };
 
 struct snd_ff {
        u64 midi_rx_port_1_reg;
 };
 
-extern struct snd_ff_protocol snd_ff_protocol_ff400;
+extern const struct snd_ff_protocol snd_ff_protocol_ff400;
 
 int snd_ff_transaction_register(struct snd_ff *ff);
 int snd_ff_transaction_reregister(struct snd_ff *ff);
 
 static inline const char*
 get_phys_name(struct snd_efw_phys_grp *grp, bool input)
 {
-       const char *const ch_type[] = {
+       static const char *const ch_type[] = {
                "Analog", "S/PDIF", "ADAT", "S/PDIF or ADAT", "Mirroring",
                "Headphones", "I2S", "Guitar", "Pirzo Guitar", "Guitar String",
        };
 
        snd_motu_transaction_reregister(motu);
 }
 
-static struct snd_motu_spec motu_828mk2 = {
+static const struct snd_motu_spec motu_828mk2 = {
        .name = "828mk2",
        .protocol = &snd_motu_protocol_v2,
        .flags = SND_MOTU_SPEC_SUPPORT_CLOCK_X2 |
        .analog_out_ports = 8,
 };
 
-static struct snd_motu_spec motu_828mk3 = {
+static const struct snd_motu_spec motu_828mk3 = {
        .name = "828mk3",
        .protocol = &snd_motu_protocol_v3,
        .flags = SND_MOTU_SPEC_SUPPORT_CLOCK_X2 |
        .analog_out_ports = 8,
 };
 
-static struct snd_motu_spec motu_audio_express = {
+static const struct snd_motu_spec motu_audio_express = {
        .name = "AudioExpress",
        .protocol = &snd_motu_protocol_v3,
        .flags = SND_MOTU_SPEC_SUPPORT_CLOCK_X2 |
 
        }
 }
 
-static const struct snd_rawmidi_ops midi_capture_ops = {
-       .open    = midi_capture_open,
-       .close   = midi_capture_close,
-       .trigger = midi_capture_trigger,
-};
-
 static int midi_playback_open(struct snd_rawmidi_substream *stream)
 {
        return 0;
 
 int snd_oxfw_scs1x_add(struct snd_oxfw *oxfw)
 {
+       static const struct snd_rawmidi_ops midi_capture_ops = {
+               .open    = midi_capture_open,
+               .close   = midi_capture_close,
+               .trigger = midi_capture_trigger,
+       };
        static const struct snd_rawmidi_ops midi_playback_ops = {
                .open    = midi_playback_open,
                .close   = midi_playback_close,
 
 MODULE_AUTHOR("Takashi Sakamoto <o-takashi@sakamocchi.jp>");
 MODULE_LICENSE("GPL v2");
 
-static struct snd_tscm_spec model_specs[] = {
+static const struct snd_tscm_spec model_specs[] = {
        {
                .name = "FW-1884",
                .has_adat = true,