pca9552.c (6a4180af9686830d88c387baab6d79563ce42a15) pca9552.c (e3d0814368d00e7985c31edf5d0cfce45972d4be)
1/*
2 * PCA9552 I2C LED blinker
3 *
4 * https://www.nxp.com/docs/en/application-note/AN264.pdf
5 *
6 * Copyright (c) 2017-2018, IBM Corporation.
7 * Copyright (c) 2020 Philippe Mathieu-Daudé
8 *

--- 446 unchanged lines hidden (view full) ---

455 .abstract = true,
456};
457
458static void pca9552_class_init(ObjectClass *oc, void *data)
459{
460 DeviceClass *dc = DEVICE_CLASS(oc);
461 PCA955xClass *pc = PCA955X_CLASS(oc);
462
1/*
2 * PCA9552 I2C LED blinker
3 *
4 * https://www.nxp.com/docs/en/application-note/AN264.pdf
5 *
6 * Copyright (c) 2017-2018, IBM Corporation.
7 * Copyright (c) 2020 Philippe Mathieu-Daudé
8 *

--- 446 unchanged lines hidden (view full) ---

455 .abstract = true,
456};
457
458static void pca9552_class_init(ObjectClass *oc, void *data)
459{
460 DeviceClass *dc = DEVICE_CLASS(oc);
461 PCA955xClass *pc = PCA955X_CLASS(oc);
462
463 dc->reset = pca9552_reset;
463 device_class_set_legacy_reset(dc, pca9552_reset);
464 dc->vmsd = &pca9552_vmstate;
465 pc->max_reg = PCA9552_LS3;
466 pc->pin_count = 16;
467}
468
469static const TypeInfo pca9552_info = {
470 .name = TYPE_PCA9552,
471 .parent = TYPE_PCA955X,
472 .class_init = pca9552_class_init,
473};
474
475static void pca955x_register_types(void)
476{
477 type_register_static(&pca955x_info);
478 type_register_static(&pca9552_info);
479}
480
481type_init(pca955x_register_types)
464 dc->vmsd = &pca9552_vmstate;
465 pc->max_reg = PCA9552_LS3;
466 pc->pin_count = 16;
467}
468
469static const TypeInfo pca9552_info = {
470 .name = TYPE_PCA9552,
471 .parent = TYPE_PCA955X,
472 .class_init = pca9552_class_init,
473};
474
475static void pca955x_register_types(void)
476{
477 type_register_static(&pca955x_info);
478 type_register_static(&pca9552_info);
479}
480
481type_init(pca955x_register_types)